This item with a position that's the union of the given pos
and the
current position.
This item with a position that's the union of the given pos
and the
current position.
The list of all keys and values attached to this container.
The list of all keys and values attached to this container.
The attachment corresponding to key
.
The attachment corresponding to key
.
NoSuchElementException
if no attachment with key exists
The attachment corresponding to key
, or default
if no attachment with key
exists.
The attachment corresponding to key
, or default
if no attachment with key
exists.
Check that all positioned items in this tree satisfy the following conditions:
Check that all positioned items in this tree satisfy the following conditions:
The denotation referred tno by this tree.
The denotation referred tno by this tree.
Defined for DenotingTree
s and ProxyTree
s, NoDenotation for other
kinds of trees
Return info of original symbol, where all references to siblings of the original symbol (i.e.
Return info of original symbol, where all references to siblings of the original symbol (i.e. sibling and original symbol have the same owner) are rewired to same-named parameters or accessors in the scope enclosing the current scope. The current scope is the scope owned by the defined symbol itself, that's why we have to look one scope further out. If the resulting type is an alias type, dealias it. This is necessary because the accessor of a type parameter is a private type alias that cannot be accessed from subclasses.
Make sure that for all enclosing module classes their companion lasses are completed.
Make sure that for all enclosing module classes their companion lasses are completed. Reason: We need the constructor of such companion classes to be completed so that OriginalSymbol attachments are pushed to DerivedTypeTrees in apply/unapply methods.
A fallback text representation, if the pattern matching in Printers does not have a case for this showable element
A fallback text representation, if the pattern matching in Printers does not have a case for this showable element
If this is a thicket, perform op
on each of its trees
otherwise, perform op
ion tree itself.
If this is a thicket, perform op
on each of its trees
otherwise, perform op
ion tree itself.
Optionally get attachment corresponding to key
Optionally get attachment corresponding to key
Does the tree have its type field set? Note: this operation is not referentially transparent, because it can observe the withType modifications.
Does the tree have its type field set? Note: this operation is not referentially transparent, because it can observe the withType modifications. Should be used only in special circumstances (we need it for printing trees with optional type info).
The initial, synthetic position.
The initial, synthetic position. This is usually the union of all positioned children's positions.
Does this tree define a new symbol that is not defined elsewhere?
Does this tree define a new symbol that is not defined elsewhere?
Is this tree either the empty tree or the empty ValDef?
Is this a legal part of a pattern which is not at the same time a term?
Is this a legal part of a pattern which is not at the same time a term?
Does this tree represent a term?
Does this tree represent a term?
Does this tree represent a type?
if this tree is the empty tree, the alternative, else this tree
if this tree is the empty tree, the alternative, else this tree
The item's position.
The item's position.
Add attachment with given key
and value
.
Add attachment with given key
and value
.
Optionally, the old attachment with given key
if one existed before.
The new attachment is added at the position of the old one, or at the end
if no attachment with same key
existed.
Remove attachment with given key
, if it exists.
Remove attachment with given key
, if it exists.
Optionally, the removed attachment with given key
if one existed before.
Destructively update curPos
to given position.
Destructively update curPos
to given position. Also, set any missing
positions in children.
The string representation of this showable element.
The string representation of this showable element.
The summarized string representation of this showable element.
The summarized string representation of this showable element. Recursion depth is limited to some smallish value. Default is Config.summarizeDepth.
Shorthand for denot.symbol
.
Shorthand for denot.symbol
.
Convert tree to a list.
Convert tree to a list. Gives a singleton list, except for thickets which return their element trees.
The text representation of this showable element.
The type of the tree.
The type of the tree. In case of an untyped tree, an UnAssignedTypeException is thrown. (Overridden by empty trees)
The number of nodes in this tree
The number of nodes in this tree
Throws an UnsupportedOperationException
with the given method name.
Throws an UnsupportedOperationException
with the given method name.
The watched tree; used only for printing
The watched tree; used only for printing
Install the derived type tree as a dependency on original
Install the derived type tree as a dependency on original
A positioned item like this one with the position set to pos
.
A positioned item like this one with the position set to pos
.
if the positioned item is source-derived, a clone is returned.
If the positioned item is synthetic, the position is updated
destructively and the item itself is returned.
Return a typed tree that's isomorphic to this tree, but has given type.
Return a typed tree that's isomorphic to this tree, but has given type. (Overridden by empty trees)