object CODE
- Source
- TreeDSL.scala
Linear Supertypes
Ordering
- Alphabetic
- By Inheritance
Inherited
- CODE
- AnyRef
- Any
- Hide All
- Show All
Visibility
- Public
- All
Type Members
- class CaseStart extends AnyRef
- class IfStart extends AnyRef
- case class SelectStart(tree: Global.Select) extends Product with Serializable
- class TreeMethods extends AnyRef
- class TryStart extends AnyRef
Value Members
- def AND(guards: Global.Tree*): Global.Tree
- def BLOCK(xs: Global.Tree*): Global.Block
- def CASE(pat: Global.Tree): CaseStart
- def DEFAULT: CaseStart
- def FALSE: Global.Literal
- def IF(tree: Global.Tree): IfStart
- def NEW(tpt: Global.Tree, args: Global.Tree*): Global.Tree
- def NOT(tree: Global.Tree): Global.Select
- def NULL: Global.Literal
- def REF(pre: Global.Type, sym: Global.Symbol): Global.RefTree
-
def
REF(sym: Global.Symbol): Global.RefTree
Typed trees from symbols.
- def SOME(xs: Global.Tree*): Global.Tree
- def TRUE: Global.Literal
- def TRY(tree: Global.Tree): TryStart
- def UNIT: Global.Literal
- def ZERO: Global.Literal
- def fn(lhs: Global.Tree, op: Global.Symbol, args: Global.Tree*): Global.Apply
- def fn(lhs: Global.Tree, op: Global.Name, args: Global.Tree*): Global.Apply
-
implicit
def
mkTreeFromSelectStart(ss: SelectStart): Global.Select
(foo DOT bar) might be simply a Select, but more likely it is to be immediately followed by an Apply.
(foo DOT bar) might be simply a Select, but more likely it is to be immediately followed by an Apply. We don't want to add an actual apply method to arbitrary trees, so SelectStart is created with an apply - and if apply is not the next thing called, the implicit from SelectStart -> Tree will provide the tree.
-
implicit
def
mkTreeMethods(target: Global.Tree): TreeMethods
Implicits - some of these should probably disappear *
- implicit def mkTreeMethodsFromSelectStart(ss: SelectStart): TreeMethods
- implicit def mkTreeMethodsFromSymbol(target: Global.Symbol): TreeMethods
- def nullSafe[T](f: (Global.Tree) ⇒ Global.Tree, ifNull: Global.Tree): (Global.Tree) ⇒ Global.Tree
- def returning[T](x: T)(f: (T) ⇒ Unit): T
- object LIT extends (Any) ⇒ Global.Literal
The Scala compiler and reflection APIs.