scala.reflect.api

Trees

trait Trees extends AnyRef

EXPERIMENTAL

This trait defines the node types used in Scala abstract syntax trees (AST) and operations on them.

Trees are the basis for Scala's abstract syntax that is used to represent programs. They are also called abstract syntax trees and commonly abbreviated as ASTs.

In Scala reflection, APIs that produce or use Trees are:

Trees are immutable, except for three fields pos, symbol, and tpe, which are assigned when a tree is typechecked to attribute it with the information gathered by the typechecker.

Examples

The following creates an AST representing a literal 5 in Scala source code:

Literal(Constant(5))

The following creates an AST representing print("Hello World"):

Apply(Select(Select(This(newTypeName("scala")), newTermName("Predef")), newTermName("print")), List(Literal(Constant("Hello World"))))

The following creates an AST from a literal 5, and then uses showRaw to print it in a readable format.

import scala.reflect.runtime.universe.{ reify, showRaw }
print( showRaw( reify{5}.tree ) )` // prints Literal(Constant(5))

For more information about Trees, see the Reflection Guide: Symbols, Trees, Types.

Self Type
Universe
Source
Trees.scala
Linear Supertypes
AnyRef, Any
Known Subclasses
Type Hierarchy Learn more about scaladoc diagrams
Content Hierarchy Learn more about scaladoc diagrams
Ordering
  1. Grouped
  2. Alphabetic
  3. By inheritance
Inherited
  1. Trees
  2. AnyRef
  3. Any
Implicitly
  1. by StringAdd
  2. by StringFormat
  3. by Ensuring
  4. by ArrowAssoc
  1. Hide All
  2. Show all
Learn more about member selection
Visibility
  1. Public
  2. All

Type Members

  1. abstract type Alternative >: Null <: Universe.TermTree with Universe.AlternativeApi

    Alternatives of patterns.

  2. trait AlternativeApi extends Universe.TermTreeApi

    The API that all alternatives support

  3. abstract class AlternativeExtractor extends AnyRef

    An extractor class to create and pattern match with syntax Alternative(trees).

  4. abstract type Annotated >: Null <: Universe.Tree with Universe.AnnotatedApi

    A tree that has an annotation attached to it.

  5. trait AnnotatedApi extends Universe.TreeApi

    The API that all annotateds support

  6. abstract class AnnotatedExtractor extends AnyRef

    An extractor class to create and pattern match with syntax Annotated(annot, arg).

  7. abstract type AppliedTypeTree >: Null <: Universe.TypTree with Universe.AppliedTypeTreeApi

    Applied type <tpt> [ <args> ], eliminated by RefCheck

  8. trait AppliedTypeTreeApi extends Universe.TypTreeApi

    The API that all applied type trees support

  9. abstract class AppliedTypeTreeExtractor extends AnyRef

    An extractor class to create and pattern match with syntax AppliedTypeTree(tpt, args).

  10. abstract type Apply >: Null <: Universe.GenericApply with Universe.ApplyApi

    Value application

  11. trait ApplyApi extends Universe.GenericApplyApi

    The API that all applies support

  12. abstract class ApplyExtractor extends AnyRef

    An extractor class to create and pattern match with syntax Apply(fun, args).

  13. abstract type Assign >: Null <: Universe.TermTree with Universe.AssignApi

    Assignment

  14. trait AssignApi extends Universe.TermTreeApi

    The API that all assigns support

  15. abstract class AssignExtractor extends AnyRef

    An extractor class to create and pattern match with syntax Assign(lhs, rhs).

  16. abstract type AssignOrNamedArg >: Null <: Universe.TermTree with Universe.AssignOrNamedArgApi

    Either an assignment or a named argument.

  17. trait AssignOrNamedArgApi extends Universe.TermTreeApi

    The API that all assigns support

  18. abstract class AssignOrNamedArgExtractor extends AnyRef

    An extractor class to create and pattern match with syntax AssignOrNamedArg(lhs, rhs).

  19. abstract type Bind >: Null <: Universe.DefTree with Universe.BindApi

    Bind a variable to a rhs pattern.

  20. trait BindApi extends Universe.DefTreeApi

    The API that all binds support

  21. abstract class BindExtractor extends AnyRef

    An extractor class to create and pattern match with syntax Bind(name, body).

  22. abstract type Block >: Null <: Universe.TermTree with Universe.BlockApi

    Block of expressions (semicolon separated expressions)

  23. trait BlockApi extends Universe.TermTreeApi

    The API that all blocks support

  24. abstract class BlockExtractor extends AnyRef

    An extractor class to create and pattern match with syntax Block(stats, expr).

  25. abstract type CaseDef >: Null <: Universe.Tree with Universe.CaseDefApi

    Case clause in a pattern match.

  26. trait CaseDefApi extends Universe.TreeApi

    The API that all case defs support

  27. abstract class CaseDefExtractor extends AnyRef

    An extractor class to create and pattern match with syntax CaseDef(pat, guard, body).

  28. abstract type ClassDef >: Null <: Universe.ImplDef with Universe.ClassDefApi

    A class definition.

  29. trait ClassDefApi extends Universe.ImplDefApi

    The API that all class defs support

  30. abstract class ClassDefExtractor extends AnyRef

    An extractor class to create and pattern match with syntax ClassDef(mods, name, tparams, impl).

  31. abstract type CompoundTypeTree >: Null <: Universe.TypTree with Universe.CompoundTypeTreeApi

    Intersection type <parent1> with .

  32. trait CompoundTypeTreeApi extends Universe.TypTreeApi

    The API that all compound type trees support

  33. abstract class CompoundTypeTreeExtractor extends AnyRef

    An extractor class to create and pattern match with syntax CompoundTypeTree(templ).

  34. abstract type DefDef >: Null <: Universe.ValOrDefDef with Universe.DefDefApi

    A method or macro definition.

  35. trait DefDefApi extends Universe.ValOrDefDefApi

    The API that all def defs support

  36. abstract class DefDefExtractor extends AnyRef

    An extractor class to create and pattern match with syntax DefDef(mods, name, tparams, vparamss, tpt, rhs).

  37. abstract type DefTree >: Null <: Universe.SymTree with Universe.NameTree with Universe.DefTreeApi

    A tree which defines a symbol-carrying entity.

  38. trait DefTreeApi extends Universe.SymTreeApi with Universe.NameTreeApi

    The API that all def trees support

  39. abstract type ExistentialTypeTree >: Null <: Universe.TypTree with Universe.ExistentialTypeTreeApi

    Existential type tree node

  40. trait ExistentialTypeTreeApi extends Universe.TypTreeApi

    The API that all existential type trees support

  41. abstract class ExistentialTypeTreeExtractor extends AnyRef

    An extractor class to create and pattern match with syntax ExistentialTypeTree(tpt, whereClauses).

  42. abstract type Function >: Null <: Universe.TermTree with Universe.SymTree with Universe.FunctionApi

    Anonymous function, eliminated by compiler phase lambdalift

  43. trait FunctionApi extends Universe.TermTreeApi with Universe.SymTreeApi

    The API that all functions support

  44. abstract class FunctionExtractor extends AnyRef

    An extractor class to create and pattern match with syntax Function(vparams, body).

  45. abstract type GenericApply >: Null <: Universe.TermTree with Universe.GenericApplyApi

    Common base class for Apply and TypeApply.

  46. trait GenericApplyApi extends Universe.TermTreeApi

    The API that all applies support

  47. abstract type Ident >: Null <: Universe.RefTree with Universe.IdentApi

    A reference to identifier name.

  48. trait IdentApi extends Universe.RefTreeApi

    The API that all idents support

  49. abstract class IdentExtractor extends AnyRef

    An extractor class to create and pattern match with syntax Ident(qual, name).

  50. abstract type If >: Null <: Universe.TermTree with Universe.IfApi

    Conditional expression

  51. trait IfApi extends Universe.TermTreeApi

    The API that all ifs support

  52. abstract class IfExtractor extends AnyRef

    An extractor class to create and pattern match with syntax If(cond, thenp, elsep).

  53. abstract type ImplDef >: Null <: Universe.MemberDef with Universe.ImplDefApi

    A common base class for class and object definitions.

  54. trait ImplDefApi extends Universe.MemberDefApi

    The API that all impl defs support

  55. abstract type Import >: Null <: Universe.SymTree with Universe.ImportApi

    Import clause

  56. trait ImportApi extends Universe.SymTreeApi

    The API that all imports support

  57. abstract class ImportExtractor extends AnyRef

    An extractor class to create and pattern match with syntax Import(expr, selectors).

  58. abstract type ImportSelector >: Null <: Universe.ImportSelectorApi

    Import selector

  59. trait ImportSelectorApi extends AnyRef

    The API that all import selectors support

  60. abstract class ImportSelectorExtractor extends AnyRef

    An extractor class to create and pattern match with syntax ImportSelector(name:, namePos, rename, renamePos).

  61. abstract type LabelDef >: Null <: Universe.DefTree with Universe.TermTree with Universe.LabelDefApi

    A labelled expression.

  62. trait LabelDefApi extends Universe.DefTreeApi with Universe.TermTreeApi

    The API that all label defs support

  63. abstract class LabelDefExtractor extends AnyRef

    An extractor class to create and pattern match with syntax LabelDef(name, params, rhs).

  64. abstract type Literal >: Null <: Universe.TermTree with Universe.LiteralApi

    Literal

  65. trait LiteralApi extends Universe.TermTreeApi

    The API that all literals support

  66. abstract class LiteralExtractor extends AnyRef

    An extractor class to create and pattern match with syntax Literal(value).

  67. abstract type Match >: Null <: Universe.TermTree with Universe.MatchApi

    - Pattern matching expression (before compiler phase explicitouter before 2.

  68. trait MatchApi extends Universe.TermTreeApi

    The API that all matches support

  69. abstract class MatchExtractor extends AnyRef

    An extractor class to create and pattern match with syntax Match(selector, cases).

  70. abstract type MemberDef >: Null <: Universe.DefTree with Universe.MemberDefApi

    Common base class for all member definitions: types, classes, objects, packages, vals and vars, defs.

  71. trait MemberDefApi extends Universe.DefTreeApi

    The API that all member defs support

  72. abstract type Modifiers >: Null <: Universe.ModifiersApi

    The type of tree modifiers.

  73. abstract class ModifiersApi extends AnyRef

    The API that all Modifiers support

  74. abstract class ModifiersExtractor extends AnyRef

    An extractor class to create and pattern match with syntax Modifiers(flags, privateWithin, annotations).

  75. abstract type ModuleDef >: Null <: Universe.ImplDef with Universe.ModuleDefApi

    An object definition, e.

  76. trait ModuleDefApi extends Universe.ImplDefApi

    The API that all module defs support

  77. abstract class ModuleDefExtractor extends AnyRef

    An extractor class to create and pattern match with syntax ModuleDef(mods, name, impl).

  78. abstract type NameTree >: Null <: Universe.Tree with Universe.NameTreeApi

    A tree with a name - effectively, a DefTree or RefTree.

  79. trait NameTreeApi extends Universe.TreeApi

    The API that all name trees support

  80. abstract type New >: Null <: Universe.TermTree with Universe.NewApi

    Object instantiation

  81. trait NewApi extends Universe.TermTreeApi

    The API that all news support

  82. abstract class NewExtractor extends AnyRef

    An extractor class to create and pattern match with syntax New(tpt).

  83. abstract type PackageDef >: Null <: Universe.MemberDef with Universe.PackageDefApi

    A packaging, such as package pid { stats }

  84. trait PackageDefApi extends Universe.MemberDefApi

    The API that all package defs support

  85. abstract class PackageDefExtractor extends AnyRef

    An extractor class to create and pattern match with syntax PackageDef(pid, stats).

  86. abstract type RefTree >: Null <: Universe.SymTree with Universe.NameTree with Universe.RefTreeApi

    A tree which references a symbol-carrying entity.

  87. trait RefTreeApi extends Universe.SymTreeApi with Universe.NameTreeApi

    The API that all ref trees support

  88. abstract type ReferenceToBoxed >: Null <: Universe.TermTree with Universe.ReferenceToBoxedApi

    Marks underlying reference to id as boxed.

  89. trait ReferenceToBoxedApi extends Universe.TermTreeApi

    The API that all references support

  90. abstract class ReferenceToBoxedExtractor extends AnyRef

    An extractor class to create and pattern match with syntax ReferenceToBoxed(ident).

  91. abstract type Return >: Null <: Universe.TermTree with Universe.SymTree with Universe.ReturnApi

    Return expression

  92. trait ReturnApi extends Universe.TermTreeApi

    The API that all returns support

  93. abstract class ReturnExtractor extends AnyRef

    An extractor class to create and pattern match with syntax Return(expr).

  94. abstract type Select >: Null <: Universe.RefTree with Universe.SelectApi

    A member selection <qualifier> .

  95. trait SelectApi extends Universe.RefTreeApi

    The API that all selects support

  96. abstract class SelectExtractor extends AnyRef

    An extractor class to create and pattern match with syntax Select(qual, name).

  97. abstract type SelectFromTypeTree >: Null <: Universe.TypTree with Universe.RefTree with Universe.SelectFromTypeTreeApi

    Type selection <qualifier> # <name>, eliminated by RefCheck

  98. trait SelectFromTypeTreeApi extends Universe.TypTreeApi with Universe.RefTreeApi

    The API that all selects from type trees support

  99. abstract class SelectFromTypeTreeExtractor extends AnyRef

    An extractor class to create and pattern match with syntax SelectFromTypeTree(qualifier, name).

  100. abstract type SingletonTypeTree >: Null <: Universe.TypTree with Universe.SingletonTypeTreeApi

    Singleton type, eliminated by RefCheck

  101. trait SingletonTypeTreeApi extends Universe.TypTreeApi

    The API that all singleton type trees support

  102. abstract class SingletonTypeTreeExtractor extends AnyRef

    An extractor class to create and pattern match with syntax SingletonTypeTree(ref).

  103. abstract type Star >: Null <: Universe.TermTree with Universe.StarApi

    Repetition of pattern.

  104. trait StarApi extends Universe.TermTreeApi

    The API that all stars support

  105. abstract class StarExtractor extends AnyRef

    An extractor class to create and pattern match with syntax Star(elem).

  106. abstract type Super >: Null <: Universe.TermTree with Universe.SuperApi

    Super reference, where qual is the corresponding this reference.

  107. trait SuperApi extends Universe.TermTreeApi

    The API that all supers support

  108. abstract class SuperExtractor extends AnyRef

    An extractor class to create and pattern match with syntax Super(qual, mix).

  109. abstract type SymTree >: Null <: Universe.Tree with Universe.SymTreeApi

    A tree with a mutable symbol field, initialized to NoSymbol.

  110. trait SymTreeApi extends Universe.TreeApi

    The API that all sym trees support

  111. abstract type Template >: Null <: Universe.SymTree with Universe.TemplateApi

    Instantiation template of a class or trait

  112. trait TemplateApi extends Universe.SymTreeApi

    The API that all templates support

  113. abstract class TemplateExtractor extends AnyRef

    An extractor class to create and pattern match with syntax Template(parents, self, body).

  114. abstract type TermTree >: Null <: Universe.Tree with Universe.TermTreeApi

    A tree for a term.

  115. trait TermTreeApi extends Universe.TreeApi

    The API that all term trees support

  116. abstract type This >: Null <: Universe.TermTree with Universe.SymTree with Universe.ThisApi

    Self reference

  117. trait ThisApi extends Universe.TermTreeApi with Universe.SymTreeApi

    The API that all thises support

  118. abstract class ThisExtractor extends AnyRef

    An extractor class to create and pattern match with syntax This(qual).

  119. abstract type Throw >: Null <: Universe.TermTree with Universe.ThrowApi

    Throw expression

  120. trait ThrowApi extends Universe.TermTreeApi

    The API that all tries support

  121. abstract class ThrowExtractor extends AnyRef

    An extractor class to create and pattern match with syntax Throw(expr).

  122. abstract class Transformer extends AnyRef

    A class that implement a default tree transformation strategy: breadth-first component-wise cloning.

  123. class Traverser extends AnyRef

    A class that implement a default tree traversal strategy: breadth-first component-wise.

  124. abstract type Tree >: Null <: Universe.TreeApi

    The type of Scala abstract syntax trees.

  125. trait TreeApi extends Product

    The API that all trees support.

  126. abstract type TreeCopier <: Universe.TreeCopierOps

    The type of standard (lazy) tree copiers.

  127. abstract class TreeCopierOps extends AnyRef

    The API of a tree copier.

  128. abstract type Try >: Null <: Universe.TermTree with Universe.TryApi

    Try catch node

  129. trait TryApi extends Universe.TermTreeApi

    The API that all tries support

  130. abstract class TryExtractor extends AnyRef

    An extractor class to create and pattern match with syntax Try(block, catches, finalizer).

  131. abstract type TypTree >: Null <: Universe.Tree with Universe.TypTreeApi

    A tree for a type.

  132. trait TypTreeApi extends Universe.TreeApi

    The API that all typ trees support

  133. abstract type TypeApply >: Null <: Universe.GenericApply with Universe.TypeApplyApi

    Explicit type application.

  134. trait TypeApplyApi extends Universe.GenericApplyApi

    The API that all type applies support

  135. abstract class TypeApplyExtractor extends AnyRef

    An extractor class to create and pattern match with syntax TypeApply(fun, args).

  136. abstract type TypeBoundsTree >: Null <: Universe.TypTree with Universe.TypeBoundsTreeApi

    Type bounds tree node

  137. trait TypeBoundsTreeApi extends Universe.TypTreeApi

    The API that all type bound trees support

  138. abstract class TypeBoundsTreeExtractor extends AnyRef

    An extractor class to create and pattern match with syntax TypeBoundsTree(lo, hi).

  139. abstract type TypeDef >: Null <: Universe.MemberDef with Universe.TypeDefApi

    An abstract type, a type parameter, or a type alias.

  140. trait TypeDefApi extends Universe.MemberDefApi

    The API that all type defs support

  141. abstract class TypeDefExtractor extends AnyRef

    An extractor class to create and pattern match with syntax TypeDef(mods, name, tparams, rhs).

  142. abstract type TypeTree >: Null <: Universe.TypTree with Universe.TypeTreeApi

    A synthetic tree holding an arbitrary type.

  143. trait TypeTreeApi extends Universe.TypTreeApi

    The API that all type trees support

  144. abstract class TypeTreeExtractor extends AnyRef

    An extractor class to create and pattern match with syntax TypeTree().

  145. abstract type Typed >: Null <: Universe.TermTree with Universe.TypedApi

    Type annotation, eliminated by compiler phase cleanup

  146. trait TypedApi extends Universe.TermTreeApi

    The API that all typeds support

  147. abstract class TypedExtractor extends AnyRef

    An extractor class to create and pattern match with syntax Typed(expr, tpt).

  148. abstract type UnApply >: Null <: Universe.TermTree with Universe.UnApplyApi

    Used to represent unapply methods in pattern matching.

  149. trait UnApplyApi extends Universe.TermTreeApi

    The API that all unapplies support

  150. abstract class UnApplyExtractor extends AnyRef

    An extractor class to create and pattern match with syntax UnApply(fun, args).

  151. abstract type ValDef >: Null <: Universe.ValOrDefDef with Universe.ValDefApi

    Broadly speaking, a value definition.

  152. trait ValDefApi extends Universe.ValOrDefDefApi

    The API that all val defs support

  153. abstract class ValDefExtractor extends AnyRef

    An extractor class to create and pattern match with syntax ValDef(mods, name, tpt, rhs).

  154. abstract type ValOrDefDef >: Null <: Universe.MemberDef with Universe.ValOrDefDefApi

    A common base class for ValDefs and DefDefs.

  155. trait ValOrDefDefApi extends Universe.MemberDefApi

    The API that all val defs and def defs support

  156. type ModifiersCreator = Universe.ModifiersExtractor

    Annotations
    @deprecated
    Deprecated

    (Since version 2.11.0) Use ModifiersExtractor instead

Abstract Value Members

  1. abstract val Alternative: Universe.AlternativeExtractor

    The constructor/extractor for Alternative instances.

  2. implicit abstract val AlternativeTag: ClassTag[Universe.Alternative]

    A tag that preserves the identity of the Alternative abstract type from erasure.

    A tag that preserves the identity of the Alternative abstract type from erasure. Can be used for pattern matching, instance tests, serialization and likes.

  3. abstract val Annotated: Universe.AnnotatedExtractor

    The constructor/extractor for Annotated instances.

  4. implicit abstract val AnnotatedTag: ClassTag[Universe.Annotated]

    A tag that preserves the identity of the Annotated abstract type from erasure.

    A tag that preserves the identity of the Annotated abstract type from erasure. Can be used for pattern matching, instance tests, serialization and likes.

  5. abstract val AppliedTypeTree: Universe.AppliedTypeTreeExtractor

    The constructor/extractor for AppliedTypeTree instances.

  6. implicit abstract val AppliedTypeTreeTag: ClassTag[Universe.AppliedTypeTree]

    A tag that preserves the identity of the AppliedTypeTree abstract type from erasure.

    A tag that preserves the identity of the AppliedTypeTree abstract type from erasure. Can be used for pattern matching, instance tests, serialization and likes.

  7. abstract val Apply: Universe.ApplyExtractor

    The constructor/extractor for Apply instances.

  8. implicit abstract val ApplyTag: ClassTag[Universe.Apply]

    A tag that preserves the identity of the Apply abstract type from erasure.

    A tag that preserves the identity of the Apply abstract type from erasure. Can be used for pattern matching, instance tests, serialization and likes.

  9. abstract val Assign: Universe.AssignExtractor

    The constructor/extractor for Assign instances.

  10. abstract val AssignOrNamedArg: Universe.AssignOrNamedArgExtractor

    The constructor/extractor for AssignOrNamedArg instances.

  11. implicit abstract val AssignOrNamedArgTag: ClassTag[Universe.AssignOrNamedArg]

    A tag that preserves the identity of the AssignOrNamedArg abstract type from erasure.

    A tag that preserves the identity of the AssignOrNamedArg abstract type from erasure. Can be used for pattern matching, instance tests, serialization and likes.

  12. implicit abstract val AssignTag: ClassTag[Universe.Assign]

    A tag that preserves the identity of the Assign abstract type from erasure.

    A tag that preserves the identity of the Assign abstract type from erasure. Can be used for pattern matching, instance tests, serialization and likes.

  13. abstract val Bind: Universe.BindExtractor

    The constructor/extractor for Bind instances.

  14. implicit abstract val BindTag: ClassTag[Universe.Bind]

    A tag that preserves the identity of the Bind abstract type from erasure.

    A tag that preserves the identity of the Bind abstract type from erasure. Can be used for pattern matching, instance tests, serialization and likes.

  15. abstract val Block: Universe.BlockExtractor

    The constructor/extractor for Block instances.

  16. implicit abstract val BlockTag: ClassTag[Universe.Block]

    A tag that preserves the identity of the Block abstract type from erasure.

    A tag that preserves the identity of the Block abstract type from erasure. Can be used for pattern matching, instance tests, serialization and likes.

  17. abstract val CaseDef: Universe.CaseDefExtractor

    The constructor/extractor for CaseDef instances.

  18. implicit abstract val CaseDefTag: ClassTag[Universe.CaseDef]

    A tag that preserves the identity of the CaseDef abstract type from erasure.

    A tag that preserves the identity of the CaseDef abstract type from erasure. Can be used for pattern matching, instance tests, serialization and likes.

  19. abstract val ClassDef: Universe.ClassDefExtractor

    The constructor/extractor for ClassDef instances.

  20. implicit abstract val ClassDefTag: ClassTag[Universe.ClassDef]

    A tag that preserves the identity of the ClassDef abstract type from erasure.

    A tag that preserves the identity of the ClassDef abstract type from erasure. Can be used for pattern matching, instance tests, serialization and likes.

  21. abstract val CompoundTypeTree: Universe.CompoundTypeTreeExtractor

    The constructor/extractor for CompoundTypeTree instances.

  22. implicit abstract val CompoundTypeTreeTag: ClassTag[Universe.CompoundTypeTree]

    A tag that preserves the identity of the CompoundTypeTree abstract type from erasure.

    A tag that preserves the identity of the CompoundTypeTree abstract type from erasure. Can be used for pattern matching, instance tests, serialization and likes.

  23. abstract val DefDef: Universe.DefDefExtractor

    The constructor/extractor for DefDef instances.

  24. implicit abstract val DefDefTag: ClassTag[Universe.DefDef]

    A tag that preserves the identity of the DefDef abstract type from erasure.

    A tag that preserves the identity of the DefDef abstract type from erasure. Can be used for pattern matching, instance tests, serialization and likes.

  25. implicit abstract val DefTreeTag: ClassTag[Universe.DefTree]

    A tag that preserves the identity of the DefTree abstract type from erasure.

    A tag that preserves the identity of the DefTree abstract type from erasure. Can be used for pattern matching, instance tests, serialization and likes.

  26. abstract val EmptyTree: Universe.Tree

    The empty tree

  27. abstract val ExistentialTypeTree: Universe.ExistentialTypeTreeExtractor

    The constructor/extractor for ExistentialTypeTree instances.

  28. implicit abstract val ExistentialTypeTreeTag: ClassTag[Universe.ExistentialTypeTree]

    A tag that preserves the identity of the ExistentialTypeTree abstract type from erasure.

    A tag that preserves the identity of the ExistentialTypeTree abstract type from erasure. Can be used for pattern matching, instance tests, serialization and likes.

  29. abstract val Function: Universe.FunctionExtractor

    The constructor/extractor for Function instances.

  30. implicit abstract val FunctionTag: ClassTag[Universe.Function]

    A tag that preserves the identity of the Function abstract type from erasure.

    A tag that preserves the identity of the Function abstract type from erasure. Can be used for pattern matching, instance tests, serialization and likes.

  31. implicit abstract val GenericApplyTag: ClassTag[Universe.GenericApply]

    A tag that preserves the identity of the GenericApply abstract type from erasure.

    A tag that preserves the identity of the GenericApply abstract type from erasure. Can be used for pattern matching, instance tests, serialization and likes.

  32. abstract def Ident(sym: Universe.Symbol): Universe.Ident

    A factory method for Ident nodes.

  33. abstract val Ident: Universe.IdentExtractor

    The constructor/extractor for Ident instances.

  34. implicit abstract val IdentTag: ClassTag[Universe.Ident]

    A tag that preserves the identity of the Ident abstract type from erasure.

    A tag that preserves the identity of the Ident abstract type from erasure. Can be used for pattern matching, instance tests, serialization and likes.

  35. abstract val If: Universe.IfExtractor

    The constructor/extractor for If instances.

  36. implicit abstract val IfTag: ClassTag[Universe.If]

    A tag that preserves the identity of the If abstract type from erasure.

    A tag that preserves the identity of the If abstract type from erasure. Can be used for pattern matching, instance tests, serialization and likes.

  37. implicit abstract val ImplDefTag: ClassTag[Universe.ImplDef]

    A tag that preserves the identity of the ImplDef abstract type from erasure.

    A tag that preserves the identity of the ImplDef abstract type from erasure. Can be used for pattern matching, instance tests, serialization and likes.

  38. abstract val Import: Universe.ImportExtractor

    The constructor/extractor for Import instances.

  39. abstract val ImportSelector: Universe.ImportSelectorExtractor

    The constructor/extractor for ImportSelector instances.

  40. implicit abstract val ImportSelectorTag: ClassTag[Universe.ImportSelector]

    A tag that preserves the identity of the ImportSelector abstract type from erasure.

    A tag that preserves the identity of the ImportSelector abstract type from erasure. Can be used for pattern matching, instance tests, serialization and likes.

  41. implicit abstract val ImportTag: ClassTag[Universe.Import]

    A tag that preserves the identity of the Import abstract type from erasure.

    A tag that preserves the identity of the Import abstract type from erasure. Can be used for pattern matching, instance tests, serialization and likes.

  42. abstract val LabelDef: Universe.LabelDefExtractor

    The constructor/extractor for LabelDef instances.

  43. implicit abstract val LabelDefTag: ClassTag[Universe.LabelDef]

    A tag that preserves the identity of the LabelDef abstract type from erasure.

    A tag that preserves the identity of the LabelDef abstract type from erasure. Can be used for pattern matching, instance tests, serialization and likes.

  44. abstract val Literal: Universe.LiteralExtractor

    The constructor/extractor for Literal instances.

  45. implicit abstract val LiteralTag: ClassTag[Universe.Literal]

    A tag that preserves the identity of the Literal abstract type from erasure.

    A tag that preserves the identity of the Literal abstract type from erasure. Can be used for pattern matching, instance tests, serialization and likes.

  46. abstract val Match: Universe.MatchExtractor

    The constructor/extractor for Match instances.

  47. implicit abstract val MatchTag: ClassTag[Universe.Match]

    A tag that preserves the identity of the Match abstract type from erasure.

    A tag that preserves the identity of the Match abstract type from erasure. Can be used for pattern matching, instance tests, serialization and likes.

  48. implicit abstract val MemberDefTag: ClassTag[Universe.MemberDef]

    A tag that preserves the identity of the MemberDef abstract type from erasure.

    A tag that preserves the identity of the MemberDef abstract type from erasure. Can be used for pattern matching, instance tests, serialization and likes.

  49. abstract val Modifiers: Universe.ModifiersExtractor

    The constructor/extractor for Modifiers instances.

  50. implicit abstract val ModifiersTag: ClassTag[Universe.Modifiers]

    A tag that preserves the identity of the Modifiers abstract type from erasure.

    A tag that preserves the identity of the Modifiers abstract type from erasure. Can be used for pattern matching, instance tests, serialization and likes.

  51. abstract val ModuleDef: Universe.ModuleDefExtractor

    The constructor/extractor for ModuleDef instances.

  52. implicit abstract val ModuleDefTag: ClassTag[Universe.ModuleDef]

    A tag that preserves the identity of the ModuleDef abstract type from erasure.

    A tag that preserves the identity of the ModuleDef abstract type from erasure. Can be used for pattern matching, instance tests, serialization and likes.

  53. implicit abstract val NameTreeTag: ClassTag[Universe.NameTree]

    A tag that preserves the identity of the NameTree abstract type from erasure.

    A tag that preserves the identity of the NameTree abstract type from erasure. Can be used for pattern matching, instance tests, serialization and likes.

  54. abstract val New: Universe.NewExtractor

    The constructor/extractor for New instances.

  55. implicit abstract val NewTag: ClassTag[Universe.New]

    A tag that preserves the identity of the New abstract type from erasure.

    A tag that preserves the identity of the New abstract type from erasure. Can be used for pattern matching, instance tests, serialization and likes.

  56. abstract val PackageDef: Universe.PackageDefExtractor

    The constructor/extractor for PackageDef instances.

  57. implicit abstract val PackageDefTag: ClassTag[Universe.PackageDef]

    A tag that preserves the identity of the PackageDef abstract type from erasure.

    A tag that preserves the identity of the PackageDef abstract type from erasure. Can be used for pattern matching, instance tests, serialization and likes.

  58. implicit abstract val RefTreeTag: ClassTag[Universe.RefTree]

    A tag that preserves the identity of the RefTree abstract type from erasure.

    A tag that preserves the identity of the RefTree abstract type from erasure. Can be used for pattern matching, instance tests, serialization and likes.

  59. abstract val ReferenceToBoxed: Universe.ReferenceToBoxedExtractor

    The constructor/extractor for ReferenceToBoxed instances.

  60. implicit abstract val ReferenceToBoxedTag: ClassTag[Universe.ReferenceToBoxed]

    A tag that preserves the identity of the ReferenceToBoxed abstract type from erasure.

    A tag that preserves the identity of the ReferenceToBoxed abstract type from erasure. Can be used for pattern matching, instance tests, serialization and likes.

  61. abstract val Return: Universe.ReturnExtractor

    The constructor/extractor for Return instances.

  62. implicit abstract val ReturnTag: ClassTag[Universe.Return]

    A tag that preserves the identity of the Return abstract type from erasure.

    A tag that preserves the identity of the Return abstract type from erasure. Can be used for pattern matching, instance tests, serialization and likes.

  63. abstract def Select(qualifier: Universe.Tree, sym: Universe.Symbol): Universe.Select

    A factory method for Select nodes.

  64. abstract val Select: Universe.SelectExtractor

    The constructor/extractor for Select instances.

  65. abstract val SelectFromTypeTree: Universe.SelectFromTypeTreeExtractor

    The constructor/extractor for SelectFromTypeTree instances.

  66. implicit abstract val SelectFromTypeTreeTag: ClassTag[Universe.SelectFromTypeTree]

    A tag that preserves the identity of the SelectFromTypeTree abstract type from erasure.

    A tag that preserves the identity of the SelectFromTypeTree abstract type from erasure. Can be used for pattern matching, instance tests, serialization and likes.

  67. implicit abstract val SelectTag: ClassTag[Universe.Select]

    A tag that preserves the identity of the Select abstract type from erasure.

    A tag that preserves the identity of the Select abstract type from erasure. Can be used for pattern matching, instance tests, serialization and likes.

  68. abstract val SingletonTypeTree: Universe.SingletonTypeTreeExtractor

    The constructor/extractor for SingletonTypeTree instances.

  69. implicit abstract val SingletonTypeTreeTag: ClassTag[Universe.SingletonTypeTree]

    A tag that preserves the identity of the SingletonTypeTree abstract type from erasure.

    A tag that preserves the identity of the SingletonTypeTree abstract type from erasure. Can be used for pattern matching, instance tests, serialization and likes.

  70. abstract val Star: Universe.StarExtractor

    The constructor/extractor for Star instances.

  71. implicit abstract val StarTag: ClassTag[Universe.Star]

    A tag that preserves the identity of the Star abstract type from erasure.

    A tag that preserves the identity of the Star abstract type from erasure. Can be used for pattern matching, instance tests, serialization and likes.

  72. abstract val Super: Universe.SuperExtractor

    The constructor/extractor for Super instances.

  73. implicit abstract val SuperTag: ClassTag[Universe.Super]

    A tag that preserves the identity of the Super abstract type from erasure.

    A tag that preserves the identity of the Super abstract type from erasure. Can be used for pattern matching, instance tests, serialization and likes.

  74. implicit abstract val SymTreeTag: ClassTag[Universe.SymTree]

    A tag that preserves the identity of the SymTree abstract type from erasure.

    A tag that preserves the identity of the SymTree abstract type from erasure. Can be used for pattern matching, instance tests, serialization and likes.

  75. abstract val Template: Universe.TemplateExtractor

    The constructor/extractor for Template instances.

  76. implicit abstract val TemplateTag: ClassTag[Universe.Template]

    A tag that preserves the identity of the Template abstract type from erasure.

    A tag that preserves the identity of the Template abstract type from erasure. Can be used for pattern matching, instance tests, serialization and likes.

  77. implicit abstract val TermTreeTag: ClassTag[Universe.TermTree]

    A tag that preserves the identity of the TermTree abstract type from erasure.

    A tag that preserves the identity of the TermTree abstract type from erasure. Can be used for pattern matching, instance tests, serialization and likes.

  78. abstract def This(sym: Universe.Symbol): Universe.Tree

    A factory method for This nodes.

  79. abstract val This: Universe.ThisExtractor

    The constructor/extractor for This instances.

  80. implicit abstract val ThisTag: ClassTag[Universe.This]

    A tag that preserves the identity of the This abstract type from erasure.

    A tag that preserves the identity of the This abstract type from erasure. Can be used for pattern matching, instance tests, serialization and likes.

  81. abstract val Throw: Universe.ThrowExtractor

    The constructor/extractor for Throw instances.

  82. implicit abstract val ThrowTag: ClassTag[Universe.Throw]

    A tag that preserves the identity of the Throw abstract type from erasure.

    A tag that preserves the identity of the Throw abstract type from erasure. Can be used for pattern matching, instance tests, serialization and likes.

  83. implicit abstract val TreeTag: ClassTag[Universe.Tree]

    A tag that preserves the identity of the Tree abstract type from erasure.

    A tag that preserves the identity of the Tree abstract type from erasure. Can be used for pattern matching, instance tests, serialization and likes.

  84. abstract val Try: Universe.TryExtractor

    The constructor/extractor for Try instances.

  85. implicit abstract val TryTag: ClassTag[Universe.Try]

    A tag that preserves the identity of the Try abstract type from erasure.

    A tag that preserves the identity of the Try abstract type from erasure. Can be used for pattern matching, instance tests, serialization and likes.

  86. implicit abstract val TypTreeTag: ClassTag[Universe.TypTree]

    A tag that preserves the identity of the TypTree abstract type from erasure.

    A tag that preserves the identity of the TypTree abstract type from erasure. Can be used for pattern matching, instance tests, serialization and likes.

  87. abstract val TypeApply: Universe.TypeApplyExtractor

    The constructor/extractor for TypeApply instances.

  88. implicit abstract val TypeApplyTag: ClassTag[Universe.TypeApply]

    A tag that preserves the identity of the TypeApply abstract type from erasure.

    A tag that preserves the identity of the TypeApply abstract type from erasure. Can be used for pattern matching, instance tests, serialization and likes.

  89. abstract val TypeBoundsTree: Universe.TypeBoundsTreeExtractor

    The constructor/extractor for TypeBoundsTree instances.

  90. implicit abstract val TypeBoundsTreeTag: ClassTag[Universe.TypeBoundsTree]

    A tag that preserves the identity of the TypeBoundsTree abstract type from erasure.

    A tag that preserves the identity of the TypeBoundsTree abstract type from erasure. Can be used for pattern matching, instance tests, serialization and likes.

  91. abstract val TypeDef: Universe.TypeDefExtractor

    The constructor/extractor for TypeDef instances.

  92. implicit abstract val TypeDefTag: ClassTag[Universe.TypeDef]

    A tag that preserves the identity of the TypeDef abstract type from erasure.

    A tag that preserves the identity of the TypeDef abstract type from erasure. Can be used for pattern matching, instance tests, serialization and likes.

  93. abstract def TypeTree(tp: Universe.Type): Universe.TypeTree

    A factory method for TypeTree nodes.

  94. abstract val TypeTree: Universe.TypeTreeExtractor

    The constructor/extractor for TypeTree instances.

  95. implicit abstract val TypeTreeTag: ClassTag[Universe.TypeTree]

    A tag that preserves the identity of the TypeTree abstract type from erasure.

    A tag that preserves the identity of the TypeTree abstract type from erasure. Can be used for pattern matching, instance tests, serialization and likes.

  96. abstract val Typed: Universe.TypedExtractor

    The constructor/extractor for Typed instances.

  97. implicit abstract val TypedTag: ClassTag[Universe.Typed]

    A tag that preserves the identity of the Typed abstract type from erasure.

    A tag that preserves the identity of the Typed abstract type from erasure. Can be used for pattern matching, instance tests, serialization and likes.

  98. abstract val UnApply: Universe.UnApplyExtractor

    The constructor/extractor for UnApply instances.

  99. implicit abstract val UnApplyTag: ClassTag[Universe.UnApply]

    A tag that preserves the identity of the UnApply abstract type from erasure.

    A tag that preserves the identity of the UnApply abstract type from erasure. Can be used for pattern matching, instance tests, serialization and likes.

  100. abstract val ValDef: Universe.ValDefExtractor

    The constructor/extractor for ValDef instances.

  101. implicit abstract val ValDefTag: ClassTag[Universe.ValDef]

    A tag that preserves the identity of the ValDef abstract type from erasure.

    A tag that preserves the identity of the ValDef abstract type from erasure. Can be used for pattern matching, instance tests, serialization and likes.

  102. implicit abstract val ValOrDefDefTag: ClassTag[Universe.ValOrDefDef]

    A tag that preserves the identity of the ValOrDefDef abstract type from erasure.

    A tag that preserves the identity of the ValOrDefDef abstract type from erasure. Can be used for pattern matching, instance tests, serialization and likes.

  103. abstract val emptyValDef: Universe.ValDef

    An empty deferred value definition corresponding to: val _: _ This is used as a placeholder in the self parameter Template if there is no definition of a self value of self type.

  104. abstract def newLazyTreeCopier: Universe.TreeCopier

    Creates a lazy tree copier.

  105. abstract def newStrictTreeCopier: Universe.TreeCopier

    Creates a strict tree copier.

  106. abstract val pendingSuperCall: Universe.Apply

    An empty superclass constructor call corresponding to: super.

    An empty superclass constructor call corresponding to: super.<init>() This is used as a placeholder in the primary constructor body in class templates to denote the insertion point of a call to superclass constructor after the typechecker figures out the superclass of a given template.

  107. abstract def treeToString(tree: Universe.Tree): String

    Obtains string representation of a tree

    Obtains string representation of a tree

    Attributes
    protected
  108. abstract def Apply(sym: Universe.Symbol, args: Universe.Tree*): Universe.Tree

    A factory method for Apply nodes.

    A factory method for Apply nodes.

    Annotations
    @deprecated
    Deprecated

    (Since version 2.10.1) Use Apply(Ident(sym), args.toList) instead

  109. abstract def ApplyConstructor(tpt: Universe.Tree, args: List[Universe.Tree]): Universe.Tree

    0-1 argument list new, based on a type tree.

    0-1 argument list new, based on a type tree.

    Annotations
    @deprecated
    Deprecated

    (Since version 2.10.1) Use Apply(Select(New(tpt), nme.CONSTRUCTOR), args) instead

  110. abstract def Bind(sym: Universe.Symbol, body: Universe.Tree): Universe.Bind

    A factory method for Bind nodes.

    A factory method for Bind nodes.

    Annotations
    @deprecated
    Deprecated

    (Since version 2.10.1) Use the canonical Bind constructor to create a bind and then initialize its symbol manually

  111. abstract def Block(stats: Universe.Tree*): Universe.Block

    A factory method for Block nodes.

    A factory method for Block nodes. Flattens directly nested blocks.

    Annotations
    @deprecated
    Deprecated

    (Since version 2.10.1) Use the canonical Block constructor, explicitly specifying its expression if necessary. Flatten directly nested blocks manually if needed

  112. abstract def CaseDef(pat: Universe.Tree, body: Universe.Tree): Universe.CaseDef

    A factory method for CaseDef nodes.

    A factory method for CaseDef nodes.

    Annotations
    @deprecated
    Deprecated

    (Since version 2.10.1) Use the canonical CaseDef constructor passing EmptyTree for guard

  113. abstract def ClassDef(sym: Universe.Symbol, impl: Universe.Template): Universe.ClassDef

    A factory method for ClassDef nodes.

    A factory method for ClassDef nodes.

    Annotations
    @deprecated
    Deprecated

    (Since version 2.10.1) Use the canonical ClassDef constructor to create a class and then initialize its position and symbol manually

  114. abstract def DefDef(sym: Universe.Symbol, rhs: (List[List[Universe.Symbol]]) ⇒ Universe.Tree): Universe.DefDef

    A factory method for ValDef nodes.

    A factory method for ValDef nodes.

    Annotations
    @deprecated
    Deprecated

    (Since version 2.10.1) Use the canonical DefDef constructor to create a method and then initialize its position and symbol manually

  115. abstract def DefDef(sym: Universe.Symbol, rhs: Universe.Tree): Universe.DefDef

    A factory method for ValDef nodes.

    A factory method for ValDef nodes.

    Annotations
    @deprecated
    Deprecated

    (Since version 2.10.1) Use the canonical DefDef constructor to create a method and then initialize its position and symbol manually

  116. abstract def DefDef(sym: Universe.Symbol, mods: Universe.Modifiers, rhs: Universe.Tree): Universe.DefDef

    A factory method for ValDef nodes.

    A factory method for ValDef nodes.

    Annotations
    @deprecated
    Deprecated

    (Since version 2.10.1) Use the canonical DefDef constructor to create a method and then initialize its position and symbol manually

  117. abstract def DefDef(sym: Universe.Symbol, vparamss: List[List[Universe.ValDef]], rhs: Universe.Tree): Universe.DefDef

    A factory method for ValDef nodes.

    A factory method for ValDef nodes.

    Annotations
    @deprecated
    Deprecated

    (Since version 2.10.1) Use the canonical DefDef constructor to create a method and then initialize its position and symbol manually

  118. abstract def DefDef(sym: Universe.Symbol, mods: Universe.Modifiers, vparamss: List[List[Universe.ValDef]], rhs: Universe.Tree): Universe.DefDef

    A factory method for ValDef nodes.

    A factory method for ValDef nodes.

    Annotations
    @deprecated
    Deprecated

    (Since version 2.10.1) Use the canonical DefDef constructor to create a method and then initialize its position and symbol manually

  119. abstract def Ident(name: String): Universe.Ident

    A factory method for Ident nodes.

    A factory method for Ident nodes.

    Annotations
    @deprecated
    Deprecated

    (Since version 2.10.1) Use Ident(newTermName(name)) instead

  120. abstract def LabelDef(sym: Universe.Symbol, params: List[Universe.Symbol], rhs: Universe.Tree): Universe.LabelDef

    A factory method for LabelDef nodes.

    A factory method for LabelDef nodes.

    Annotations
    @deprecated
    Deprecated

    (Since version 2.10.1) Use the canonical LabelDef constructor to create a label and then initialize its position and symbol manually

  121. abstract def ModuleDef(sym: Universe.Symbol, impl: Universe.Template): Universe.ModuleDef

    A factory method for ModuleDef nodes.

    A factory method for ModuleDef nodes.

    Annotations
    @deprecated
    Deprecated

    (Since version 2.10.1) Use the canonical ModuleDef constructor to create an object and then initialize its position and symbol manually

  122. abstract def New(sym: Universe.Symbol, args: Universe.Tree*): Universe.Tree

    0-1 argument list new, based on a symbol.

    0-1 argument list new, based on a symbol.

    Annotations
    @deprecated
    Deprecated

    (Since version 2.10.1) Use New(sym.toType, args) instead

  123. abstract def New(tpe: Universe.Type, args: Universe.Tree*): Universe.Tree

    0-1 argument list new, based on a type.

    0-1 argument list new, based on a type.

    Annotations
    @deprecated
    Deprecated

    (Since version 2.10.1) Use New(TypeTree(tpe), args.toList) instead

  124. abstract def New(tpt: Universe.Tree, argss: List[List[Universe.Tree]]): Universe.Tree

    Factory method for object creation new tpt(args_1)...(args_n) A New(t, as) is expanded to: (new t).<init>(as)

    Factory method for object creation new tpt(args_1)...(args_n) A New(t, as) is expanded to: (new t).<init>(as)

    Annotations
    @deprecated
    Deprecated

    (Since version 2.10.1) Use Apply(...Apply(Select(New(tpt), nme.CONSTRUCTOR), args1)...argsN) instead

  125. abstract def Select(qualifier: Universe.Tree, name: String): Universe.Select

    A factory method for Select nodes.

    A factory method for Select nodes. The string name argument is assumed to represent a TermName.

    Annotations
    @deprecated
    Deprecated

    (Since version 2.10.1) Use Select(tree, newTermName(name)) instead

  126. abstract def Super(sym: Universe.Symbol, mix: Universe.TypeName): Universe.Tree

    A factory method for Super nodes.

    A factory method for Super nodes.

    Annotations
    @deprecated
    Deprecated

    (Since version 2.10.1) Use Super(This(sym), mix) instead

  127. abstract def Throw(tpe: Universe.Type, args: Universe.Tree*): Universe.Throw

    A factory method for Throw nodes.

    A factory method for Throw nodes.

    Annotations
    @deprecated
    Deprecated

    (Since version 2.10.1) Use the canonical New constructor to create an object instantiation expression and then wrap it in Throw

  128. abstract def Try(body: Universe.Tree, cases: (Universe.Tree, Universe.Tree)*): Universe.Try

    A factory method for Try nodes.

    A factory method for Try nodes.

    Annotations
    @deprecated
    Deprecated

    (Since version 2.10.1) Use canonical CaseDef constructors to to create exception catching expressions and then wrap them in Try

  129. abstract def TypeDef(sym: Universe.Symbol): Universe.TypeDef

    A factory method for TypeDef nodes.

    A factory method for TypeDef nodes.

    Annotations
    @deprecated
    Deprecated

    (Since version 2.10.1) Use the canonical TypeDef constructor to create an abstract type or type parameter and then initialize its position and symbol manually

  130. abstract def TypeDef(sym: Universe.Symbol, rhs: Universe.Tree): Universe.TypeDef

    A factory method for TypeDef nodes.

    A factory method for TypeDef nodes.

    Annotations
    @deprecated
    Deprecated

    (Since version 2.10.1) Use the canonical TypeDef constructor to create a type alias and then initialize its position and symbol manually

  131. abstract def ValDef(sym: Universe.Symbol): Universe.ValDef

    A factory method for ValDef nodes.

    A factory method for ValDef nodes.

    Annotations
    @deprecated
    Deprecated

    (Since version 2.10.1) Use the canonical ValDef constructor to create a val with an empty right-hand side and then initialize its position and symbol manually

  132. abstract def ValDef(sym: Universe.Symbol, rhs: Universe.Tree): Universe.ValDef

    A factory method for ValDef nodes.

    A factory method for ValDef nodes.

    Annotations
    @deprecated
    Deprecated

    (Since version 2.10.1) Use the canonical ValDef constructor to create a val and then initialize its position and symbol manually

Concrete Value Members

  1. final def !=(arg0: AnyRef): Boolean

    Definition Classes
    AnyRef
  2. final def !=(arg0: Any): Boolean

    Definition Classes
    Any
  3. final def ##(): Int

    Definition Classes
    AnyRef → Any
  4. def +(other: String): String

    Implicit information
    This member is added by an implicit conversion from Trees to StringAdd[Trees] performed by method StringAdd in scala.Predef.
    Definition Classes
    StringAdd
  5. def ->[B](y: B): (Trees, B)

    Implicit information
    This member is added by an implicit conversion from Trees to ArrowAssoc[Trees] performed by method ArrowAssoc in scala.Predef.
    Definition Classes
    ArrowAssoc
    Annotations
    @inline()
  6. final def ==(arg0: AnyRef): Boolean

    Definition Classes
    AnyRef
  7. final def ==(arg0: Any): Boolean

    Definition Classes
    Any
  8. def Modifiers(flags: Universe.FlagSet): Universe.Modifiers

    The factory for Modifiers instances.

  9. def Modifiers(flags: Universe.FlagSet, privateWithin: Universe.Name): Universe.Modifiers

    The factory for Modifiers instances.

  10. lazy val NoMods: Universe.Modifiers

    An empty Modifiers object: no flags, empty visibility annotation and no Scala annotations.

  11. final def asInstanceOf[T0]: T0

    Definition Classes
    Any
  12. def clone(): AnyRef

    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws()
  13. def ensuring(cond: (Trees) ⇒ Boolean, msg: ⇒ Any): Trees

    Implicit information
    This member is added by an implicit conversion from Trees to Ensuring[Trees] performed by method Ensuring in scala.Predef.
    Definition Classes
    Ensuring
  14. def ensuring(cond: (Trees) ⇒ Boolean): Trees

    Implicit information
    This member is added by an implicit conversion from Trees to Ensuring[Trees] performed by method Ensuring in scala.Predef.
    Definition Classes
    Ensuring
  15. def ensuring(cond: Boolean, msg: ⇒ Any): Trees

    Implicit information
    This member is added by an implicit conversion from Trees to Ensuring[Trees] performed by method Ensuring in scala.Predef.
    Definition Classes
    Ensuring
  16. def ensuring(cond: Boolean): Trees

    Implicit information
    This member is added by an implicit conversion from Trees to Ensuring[Trees] performed by method Ensuring in scala.Predef.
    Definition Classes
    Ensuring
  17. final def eq(arg0: AnyRef): Boolean

    Definition Classes
    AnyRef
  18. def equals(arg0: Any): Boolean

    Definition Classes
    AnyRef → Any
  19. def finalize(): Unit

    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws()
  20. def formatted(fmtstr: String): String

    Returns string formatted according to given format string.

    Returns string formatted according to given format string. Format strings are as for String.format (@see java.lang.String.format).

    Implicit information
    This member is added by an implicit conversion from Trees to StringFormat[Trees] performed by method StringFormat in scala.Predef.
    Definition Classes
    StringFormat
    Annotations
    @inline()
  21. final def getClass(): Class[_]

    Definition Classes
    AnyRef → Any
  22. def hashCode(): Int

    Definition Classes
    AnyRef → Any
  23. final def isInstanceOf[T0]: Boolean

    Definition Classes
    Any
  24. def itransform(transformer: Universe.Transformer, tree: Universe.Tree): Universe.Tree

    Delegates the transformation strategy to scala.reflect.internal.Trees, because pattern matching on abstract types we have here degrades performance.

    Delegates the transformation strategy to scala.reflect.internal.Trees, because pattern matching on abstract types we have here degrades performance.

    Attributes
    protected
  25. def itraverse(traverser: Universe.Traverser, tree: Universe.Tree): Unit

    Delegates the traversal strategy to scala.reflect.internal.Trees, because pattern matching on abstract types we have here degrades performance.

    Delegates the traversal strategy to scala.reflect.internal.Trees, because pattern matching on abstract types we have here degrades performance.

    Attributes
    protected
  26. final def ne(arg0: AnyRef): Boolean

    Definition Classes
    AnyRef
  27. final def notify(): Unit

    Definition Classes
    AnyRef
  28. final def notifyAll(): Unit

    Definition Classes
    AnyRef
  29. final def synchronized[T0](arg0: ⇒ T0): T0

    Definition Classes
    AnyRef
  30. def toString(): String

    Definition Classes
    AnyRef → Any
  31. val treeCopy: Universe.TreeCopier

    The standard (lazy) tree copier.

  32. final def wait(): Unit

    Definition Classes
    AnyRef
    Annotations
    @throws()
  33. final def wait(arg0: Long, arg1: Int): Unit

    Definition Classes
    AnyRef
    Annotations
    @throws()
  34. final def wait(arg0: Long): Unit

    Definition Classes
    AnyRef
    Annotations
    @throws()
  35. def xtransform(transformer: Universe.Transformer, tree: Universe.Tree): Universe.Tree

    Provides an extension hook for the transformation strategy.

    Provides an extension hook for the transformation strategy. Future-proofs against new node types.

    Attributes
    protected
  36. def xtraverse(traverser: Universe.Traverser, tree: Universe.Tree): Unit

    Provides an extension hook for the traversal strategy.

    Provides an extension hook for the traversal strategy. Future-proofs against new node types.

    Attributes
    protected
  37. def [B](y: B): (Trees, B)

    Implicit information
    This member is added by an implicit conversion from Trees to ArrowAssoc[Trees] performed by method ArrowAssoc in scala.Predef.
    Definition Classes
    ArrowAssoc

Inherited from AnyRef

Inherited from Any

Inherited by implicit conversion StringAdd from Trees to StringAdd[Trees]

Inherited by implicit conversion StringFormat from Trees to StringFormat[Trees]

Inherited by implicit conversion Ensuring from Trees to Ensuring[Trees]

Inherited by implicit conversion ArrowAssoc from Trees to ArrowAssoc[Trees]

Trees

Tree Copying

Factories

Tree Traversal and Transformation

API

The methods available for each reflection entity, without the implementation. Since the reflection entities are later overridden by runtime reflection and macros, their API counterparts guarantee a minimum set of methods that are implemented.

Extractors

Extractors provide the machinery necessary to allow pattern matching and construction of reflection entities that is similar to case classes, although the entities are only abstract types that are later overridden.

Tags

Implicit values that provide ClassTags for the reflection classes. These are abstract in the interface but are later filled in to provide ClassTags for the either the runtime reflection or macros entities, depending on the use.

Ungrouped