case class Block(stats: List[SymbolTable.Tree], expr: SymbolTable.Tree) extends SymbolTable.Tree with SymbolTable.TermTree with SymbolTable.BlockApi with Product with Serializable
- Alphabetic
- By Inheritance
- Block
- Serializable
- Serializable
- BlockApi
- TermTree
- TermTreeApi
- Tree
- Attachable
- TreeContextApiImpl
- TreeApi
- Product
- Equals
- AnyRef
- Any
- Hide All
- Show All
- Public
- All
Instance Constructors
- new Block(stats: List[SymbolTable.Tree], expr: SymbolTable.Tree)
Value Members
-
final
def
!=(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
-
final
def
##(): Int
- Definition Classes
- AnyRef → Any
-
final
def
==(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
-
final
def
asInstanceOf[T0]: T0
- Definition Classes
- Any
-
def
attachments: Attachments { type Pos = Trees.this.Position }
- Definition Classes
- Attachable
-
def
canHaveAttrs: Boolean
Can this tree carry attributes (i.e.
-
def
changeOwner(from: SymbolTable.Symbol, to: SymbolTable.Symbol): SymbolTable.Tree
- Definition Classes
- TreeContextApiImpl
-
def
changeOwner(pairs: (SymbolTable.Symbol, SymbolTable.Symbol)*): SymbolTable.Tree
- Definition Classes
- TreeContextApiImpl
-
def
children: List[SymbolTable.Tree]
The direct child trees of this tree.
The direct child trees of this tree. EmptyTrees are always omitted. Lists are flattened.
- Definition Classes
- TreeContextApiImpl → TreeApi
-
def
clearType(): Block.this.type
- Definition Classes
- Tree
-
def
clone(): AnyRef
- Attributes
- protected[java.lang]
- Definition Classes
- AnyRef
- Annotations
- @native() @throws( ... )
-
def
collect[T](pf: PartialFunction[SymbolTable.Tree, T]): List[T]
Apply
pf
to each subtree on which the function is defined and collect the results.Apply
pf
to each subtree on which the function is defined and collect the results.- Definition Classes
- TreeContextApiImpl → TreeApi
-
def
correspondsStructure(that: SymbolTable.Tree)(f: (SymbolTable.Tree, SymbolTable.Tree) ⇒ Boolean): Boolean
- Definition Classes
- TreeContextApiImpl
-
def
defineType(tp: SymbolTable.Type): Block.this.type
- Definition Classes
- Tree
-
def
duplicate: Block.this.type
Make a copy of this tree, keeping all attributes, except that all positions are focused (so nothing in this tree will be found when searching by position).
-
final
def
eq(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
-
def
equals(that: Any): Boolean
- Definition Classes
- Tree → Equals → AnyRef → Any
-
def
equalsStructure(that: SymbolTable.Tree): Boolean
Tests whether two trees are structurally equal.
Tests whether two trees are structurally equal. Note that
==
on trees is reference equality.- Definition Classes
- TreeContextApiImpl → TreeApi
-
def
exists(p: (SymbolTable.Tree) ⇒ Boolean): Boolean
Is there exists a part of this tree which satisfies predicate
p
?Is there exists a part of this tree which satisfies predicate
p
?- Definition Classes
- TreeContextApiImpl → TreeApi
-
val
expr: SymbolTable.Tree
The last expression in the block.
-
def
filter(f: (SymbolTable.Tree) ⇒ Boolean): List[SymbolTable.Tree]
Find all subtrees matching predicate
p
.Find all subtrees matching predicate
p
. Same aswithFilter
- Definition Classes
- TreeContextApiImpl → TreeApi
-
def
finalize(): Unit
- Attributes
- protected[java.lang]
- Definition Classes
- AnyRef
- Annotations
- @throws( classOf[java.lang.Throwable] )
-
def
find(p: (SymbolTable.Tree) ⇒ Boolean): Option[SymbolTable.Tree]
Returns optionally first tree (in a preorder traversal) which satisfies predicate
p
, or None if none exists.Returns optionally first tree (in a preorder traversal) which satisfies predicate
p
, or None if none exists.- Definition Classes
- TreeContextApiImpl → TreeApi
-
def
forAll(p: (SymbolTable.Tree) ⇒ Boolean): Boolean
Do all parts of this tree satisfy predicate
p
?Do all parts of this tree satisfy predicate
p
?- Definition Classes
- TreeContextApiImpl → TreeApi
-
def
foreach(f: (SymbolTable.Tree) ⇒ Unit): Unit
Apply
f
to each subtreeApply
f
to each subtree- Definition Classes
- TreeContextApiImpl → TreeApi
-
def
foreachPartial(pf: PartialFunction[SymbolTable.Tree, SymbolTable.Tree]): Unit
If
pf
is defined for a given subtree, call super.traverse(pf(tree)), otherwise super.traverse(tree).If
pf
is defined for a given subtree, call super.traverse(pf(tree)), otherwise super.traverse(tree).- Definition Classes
- TreeContextApiImpl
-
def
freeTerms: List[SymbolTable.FreeTermSymbol]
- Definition Classes
- TreeContextApiImpl
-
def
freeTypes: List[SymbolTable.FreeTypeSymbol]
- Definition Classes
- TreeContextApiImpl
-
def
getAndRemoveAttachment[T](implicit arg0: ClassTag[T]): Option[T]
- Definition Classes
- Attachable
-
final
def
getClass(): Class[_]
- Definition Classes
- AnyRef → Any
- Annotations
- @native()
-
def
hasAttachment[T](implicit arg0: ClassTag[T]): Boolean
- Definition Classes
- Attachable
-
def
hasExistingSymbol: Boolean
- Definition Classes
- TreeContextApiImpl
-
def
hasSymbolField: Boolean
- Definition Classes
- Tree
-
def
hasSymbolWhich(f: (SymbolTable.Symbol) ⇒ Boolean): Boolean
- Definition Classes
- TreeContextApiImpl
-
def
hashCode(): Int
- Definition Classes
- Tree → AnyRef → Any
-
val
id: Int
- Definition Classes
- Tree
-
def
isDef: Boolean
Does this tree represent a definition? (of a method, of a class, etc)
-
def
isEmpty: Boolean
Is this tree one of the empty trees?
-
def
isErroneous: Boolean
- Definition Classes
- TreeContextApiImpl
-
def
isErrorTyped: Boolean
- Definition Classes
- TreeContextApiImpl
-
final
def
isInstanceOf[T0]: Boolean
- Definition Classes
- Any
-
def
isTerm: Boolean
The canonical way to test if a Tree represents a term.
-
def
isType: Boolean
The canonical way to test if a Tree represents a type.
-
def
isTyped: Boolean
- Definition Classes
- TreeContextApiImpl
-
def
modifyType(f: (SymbolTable.Type) ⇒ SymbolTable.Type): SymbolTable.Tree
Sets the tree's type to the result of the given function.
Sets the tree's type to the result of the given function. If the type is null, it remains null - the function is not called.
- Definition Classes
- TreeContextApiImpl
-
final
def
ne(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
-
def
nonEmpty: Boolean
Is this tree not an empty tree?
-
final
def
notify(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native()
-
final
def
notifyAll(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native()
-
def
orElse(alt: ⇒ SymbolTable.Tree): SymbolTable.Tree
Provides an alternate if tree is empty
Provides an alternate if tree is empty
- alt
The alternate tree
- returns
If this tree is non empty, this tree, otherwise
alt
.
- Definition Classes
- TreeContextApiImpl → TreeApi
-
final
def
pos: SymbolTable.Position
Position of the tree.
Position of the tree.
- Definition Classes
- Tree → Attachable → TreeApi
-
def
pos_=(pos: SymbolTable.Position): Unit
- Definition Classes
- Attachable
-
val
rawatt: Attachments { type Pos = Trees.this.Position }
- Attributes
- protected
- Definition Classes
- Attachable
-
def
removeAttachment[T](implicit arg0: ClassTag[T]): Block.this.type
- Definition Classes
- Attachable
-
def
setAttachments(attachments: Attachments { type Pos = Trees.this.Position }): Block.this.type
- Definition Classes
- Attachable
-
def
setPos(newpos: SymbolTable.Position): Block.this.type
- Definition Classes
- Attachable
-
def
setSymbol(sym: SymbolTable.Symbol): Block.this.type
- Definition Classes
- Tree
-
def
setType(tp: SymbolTable.Type): Block.this.type
- Definition Classes
- Tree
-
def
shallowDuplicate: SymbolTable.Tree
- Definition Classes
- TreeContextApiImpl
-
def
shortClass: String
- Definition Classes
- TreeContextApiImpl
-
val
stats: List[SymbolTable.Tree]
All, but the last, expressions in the block.
-
def
substituteSymbols(from: List[SymbolTable.Symbol], to: List[SymbolTable.Symbol]): SymbolTable.Tree
- Definition Classes
- TreeContextApiImpl
-
def
substituteThis(clazz: SymbolTable.Symbol, to: ⇒ SymbolTable.Tree): SymbolTable.Tree
- Definition Classes
- TreeContextApiImpl
-
def
substituteTypes(from: List[SymbolTable.Symbol], to: List[SymbolTable.Type]): SymbolTable.Tree
- Definition Classes
- TreeContextApiImpl
-
def
summaryString: String
When you want to know a little more than the class, but a lot less than the whole tree.
When you want to know a little more than the class, but a lot less than the whole tree.
- Definition Classes
- TreeContextApiImpl
-
def
symbol: SymbolTable.Symbol
Symbol of the tree.
Symbol of the tree.
For most trees symbol is
null
. InSymTree
s, it is overridden and implemented with a var, initialized toNoSymbol
.Trees which are not
SymTree
s but which carry symbols do so by overridingdef symbol
to forward it elsewhere. Examples:Super(qual, _)
hasqual
's symbol,Apply(fun, args)
hasfun
's symbol,TypeApply(fun, args)
hasfun
's symbol,AppliedTypeTree(tpt, args)
hastpt
's symbol,TypeTree(tpe)
hastpe
'stypeSymbol
, iftpe != null
.
-
def
symbol_=(sym: SymbolTable.Symbol): Unit
- Definition Classes
- Tree
-
final
def
synchronized[T0](arg0: ⇒ T0): T0
- Definition Classes
- AnyRef
-
def
toString(): String
Obtains string representation of a tree
Obtains string representation of a tree
- Definition Classes
- TreeApi → AnyRef → Any
-
final
def
tpe: SymbolTable.Type
Type of the tree.
Type of the tree.
Upon creation most trees have their
tpe
set tonull
. Types are typically assigned to trees during typechecking. Some node factory methods settpe
immediately after creation.When the typechecker encounters a tree with a non-null tpe, it will assume it to be correct and not check it again. This means one has to be careful not to erase the
tpe
field of subtrees. -
def
updateAttachment[T](attachment: T)(implicit arg0: ClassTag[T]): Block.this.type
- Definition Classes
- Attachable
-
final
def
wait(): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws( ... )
-
final
def
wait(arg0: Long, arg1: Int): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws( ... )
-
final
def
wait(arg0: Long): Unit
- Definition Classes
- AnyRef
- Annotations
- @native() @throws( ... )
-
def
withFilter(f: (SymbolTable.Tree) ⇒ Boolean): List[SymbolTable.Tree]
Find all subtrees matching predicate
p
.Find all subtrees matching predicate
p
. Same asfilter
- Definition Classes
- TreeContextApiImpl → TreeApi
Deprecated Value Members
-
def
hasSymbol: Boolean
- Definition Classes
- Tree
- Annotations
- @deprecated
- Deprecated
(Since version 2.11.0) use hasSymbolField
-
def
tpe_=(t: SymbolTable.Type): Unit
- Definition Classes
- Tree
- Annotations
- @deprecated
- Deprecated
(Since version 2.11.0) use setType