treehugger

Forest

class Forest extends Universe with StdNames with Definitions with Symbols with Types with Constants with Scopes with Names with Trees with AnnotationInfos with TreePrinters with TreeGen with DocGen with TreehuggerDSLs

Linear Supertypes
Ordering
  1. Alphabetic
  2. By inheritance
Inherited
  1. Forest
  2. TreehuggerDSLs
  3. DocGen
  4. TreeGen
  5. TreePrinters
  6. AnnotationInfos
  7. Trees
  8. Scopes
  9. Constants
  10. Types
  11. Symbols
  12. Definitions
  13. StdNames
  14. NameManglers
  15. Universe
  16. TreePrinters
  17. StandardDefinitions
  18. AnnotationInfos
  19. Trees
  20. Names
  21. Scopes
  22. Constants
  23. Types
  24. Symbols
  25. AnyRef
  26. Any
  1. Hide All
  2. Show all
Learn more about member selection
Visibility
  1. Public
  2. All

Instance Constructors

  1. new Forest()

Type Members

  1. abstract class AbsAnnotationInfo extends AnyRef

    Definition Classes
    AnnotationInfos
  2. trait AbsCompoundType extends Universe.AbsType

    This class declares methods that are visible in a CompoundType (i.

  3. abstract class AbsConstant extends AnyRef

    Definition Classes
    Constants
  4. abstract class AbsDefinitions extends AnyRef

    Definition Classes
    StandardDefinitions
  5. abstract class AbsModifiers extends AnyRef

    Definition Classes
    Trees
  6. trait AbsSingletonType extends Universe.AbsType

    This class declares methods that are visible in a SingleType.

  7. abstract class AbsSymbol extends AnyRef

    Definition Classes
    Symbols
  8. abstract class AbsType extends AnyRef

    This class declares operations that are visible in a Type.

  9. abstract class AbsTypeImpl extends Forest.AbsType

    Definition Classes
    Types
  10. case class Alternative(trees: List[Universe.Tree]) extends Universe.Tree with Universe.TermTree with Product with Serializable

    Alternatives of patterns, eliminated by explicitouter, except for occurrences in encoded Switch stmt (=remaining Match(CaseDef(.

  11. case class Annotated(annot: Universe.Tree, arg: Universe.Tree) extends Universe.Tree with Product with Serializable

    A tree that has an annotation attached to it.

  12. case class AnnotatedType(annotations: List[Forest.AnnotationInfo], underlying: Forest.Type, selfsym: Forest.Symbol) extends Forest.Type with Product with Serializable

    A type carrying some annotations.

  13. abstract class AnnotatedTypeExtractor extends AnyRef

    Definition Classes
    Types
  14. sealed abstract class AnnotationInfo extends Forest.AbsAnnotationInfo with Product3[Forest.Type, List[Forest.Tree], List[(Forest.Name, Forest.ClassfileAnnotArg)]]

    Typed information about an annotation.

  15. abstract class AnnotationInfoExtractor extends AnyRef

    Definition Classes
    AnnotationInfos
  16. abstract type AnnotationType

    Definition Classes
    Trees
  17. case class AnonFunc(vparamss: List[List[Universe.ValDef]], tpt: Universe.Tree, rhs: Universe.Tree) extends Universe.Tree with Universe.FuncTree with Product with Serializable

    Definition Classes
    Trees
  18. case class AppliedTypeTree(tpt: Universe.Tree, args: List[Universe.Tree]) extends Universe.Tree with Universe.TypTree with Product with Serializable

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

  19. case class Apply(fun: Universe.Tree, args: List[Universe.Tree]) extends Universe.GenericApply with Product with Serializable

    Value application

  20. case class ApplyDynamic(qual: Universe.Tree, args: List[Universe.Tree]) extends Universe.Tree with Universe.TermTree with Universe.SymTree with Product with Serializable

    Dynamic value application.

  21. class ApplyImplicitView extends Universe.Apply

    Definition Classes
    Trees
  22. class ApplyToImplicitArgs extends Universe.Apply

    Definition Classes
    Trees
  23. case class ArrayValue(elemtpt: Universe.Tree, elems: List[Universe.Tree]) extends Universe.Tree with Universe.TermTree with Product with Serializable

    Array of expressions, needs to be translated in backend,

  24. case class Assign(lhs: Universe.Tree, rhs: Universe.Tree) extends Universe.Tree with Universe.TermTree with Product with Serializable

    Assignment

  25. class BackQuotedIdent extends Universe.Ident

    Definition Classes
    Trees
  26. case class Bind(name: Universe.Name, body: Universe.Tree) extends Universe.DefTree with Product with Serializable

    Bind of a variable to a rhs pattern, eliminated by explicitouter

  27. case class Block(stats: List[Universe.Tree], expr: Universe.Tree) extends Universe.Tree with Universe.TermTree with Product with Serializable

    Block of expressions (semicolon separated expressions)

  28. case class CaseDef(pat: Universe.Tree, guard: Universe.Tree, body: Universe.Tree) extends Universe.Tree with Product with Serializable

    Case clause in a pattern match, eliminated during explicitouter (except for occurrences in switch statements)

  29. case class ClassDef(mods: Universe.Modifiers, ctormods: Universe.Modifiers, name: Universe.TypeName, tparams: List[Universe.TypeDef], vparams: List[Universe.ValDef], impl: Universe.Template) extends Universe.ImplDef with Product with Serializable

    A class definition.

  30. case class ClassInfoType(parents: List[Forest.Type], decls: List[Forest.Tree], typeSymbol: Forest.Symbol) extends Forest.CompoundType with Product with Serializable

    A class representing a class info

  31. abstract class ClassInfoTypeExtractor extends AnyRef

    An extractor class to create and pattern match with syntax ClassInfo(parents, decls, clazz) Here, parents is the list of parent types of the class, decls is the scope containing all declarations in the class, and clazz is the symbol of the class itself.

  32. class ClassSymbol extends Forest.TypeSymbol

    A class for class symbols

  33. abstract class ClassfileAnnotArg extends Product

    Arguments to classfile annotations (which are written to bytecode as java annotations) are either:

  34. case class Commented(mods: Universe.Modifiers, comment: List[String], expr: Universe.Tree) extends Universe.Tree with Product with Serializable

    Commented expression

  35. trait CommonNames extends AnyRef

    Definition Classes
    StdNames
  36. class CompleteAnnotationInfo extends Forest.AnnotationInfo

    Definition Classes
    AnnotationInfos
  37. abstract class CompoundType extends Forest.Type

    A common base class for intersection types and class types

  38. case class CompoundTypeTree(templ: Universe.Template) extends Universe.Tree with Universe.TypTree with Product with Serializable

    Intersection type <parent1> with .

  39. case class Constant(value: Any) extends Forest.AbsConstant with Product with Serializable

    Definition Classes
    ConstantsConstants
  40. abstract class ConstantExtractor extends AnyRef

    Definition Classes
    Constants
  41. abstract case class ConstantType(value: Forest.Constant) extends Forest.SingletonType with Product with Serializable

    A class representing a constant type.

  42. abstract class ConstantTypeExtractor extends AnyRef

    An extractor class to create and pattern match with syntax ConstantType(constant) Here, constant is the constant value represented by the type.

  43. case class DefDef(mods: Universe.Modifiers, name: Universe.Name, tparams: List[Universe.TypeDef], vparamss: List[List[Universe.ValDef]], tpt: Universe.Tree, rhs: Universe.Tree) extends Universe.ValOrDefDef with Product with Serializable

    A method or macro definition.

  44. abstract class DefTree extends Universe.Tree with Universe.SymTree

    A tree which defines a symbol-carrying entity.

  45. sealed trait DocElement extends AnyRef

    Definition Classes
    DocGen
  46. case class DocTag(tag: String, args: List[Any]) extends Forest.DocElement with Product with Serializable

    Definition Classes
    DocGen
  47. case class DocText(text: String) extends Forest.DocElement with Product with Serializable

    Definition Classes
    DocGen
  48. sealed trait Enumerator extends Universe.Tree

    Definition Classes
    Trees
  49. case class ExistentialType(quantified: List[Forest.Tree], underlying: Forest.Type) extends Forest.Type with Product with Serializable

    Definition Classes
    TypesTypes
  50. abstract class ExistentialTypeExtractor extends AnyRef

    Definition Classes
    Types
  51. case class ExistentialTypeTree(tpt: Universe.Tree, whereClauses: List[Universe.Tree]) extends Universe.Tree with Universe.TypTree with Product with Serializable

    Definition Classes
    Trees
  52. class FilterTreeTraverser extends Universe.Traverser

    Definition Classes
    Trees
  53. class FindTreeTraverser extends Universe.Traverser

    Definition Classes
    Trees
  54. case class ForFilter(pos: Position, test: Universe.Tree) extends Universe.Tree with Universe.Enumerator with Product with Serializable

    Definition Classes
    Trees
  55. case class ForTree(enums: List[Universe.Enumerator], body: Universe.Tree) extends Universe.Tree with Product with Serializable

    Definition Classes
    Trees
  56. case class ForValDef(pos: Position, name: Universe.TermName, tpt: Universe.Tree, rhs: Universe.Tree) extends Universe.ValOrDefDef with Universe.Enumerator with Product with Serializable

    Definition Classes
    Trees
  57. case class ForValFrom(pos: Position, name: Universe.TermName, tpt: Universe.Tree, rhs: Universe.Tree) extends Universe.ValOrDefDef with Universe.Enumerator with Product with Serializable

    Definition Classes
    Trees
  58. case class ForYieldTree(enums: List[Universe.Enumerator], body: Universe.Tree) extends Universe.Tree with Product with Serializable

    Definition Classes
    Trees
  59. class ForeachTreeTraverser extends Universe.Traverser

    Definition Classes
    Trees
  60. trait FuncTree extends Universe.Tree with Universe.TermTree

    A tree for a function expression.

  61. case class Function(vparams: List[Universe.ValDef], body: Universe.Tree) extends Universe.Tree with Universe.TermTree with Universe.SymTree with Product with Serializable

    Anonymous function, eliminated by analyzer

  62. abstract class GenericApply extends Universe.Tree with Universe.TermTree

    Common base class for Apply and TypeApply.

  63. case class Ident(name: Universe.Name) extends Universe.Tree with Universe.RefTree with Product with Serializable

    Identifier <name>

  64. case class If(cond: Universe.Tree, thenp: Universe.Tree, elsep: Universe.Tree) extends Universe.Tree with Universe.TermTree with Product with Serializable

    Conditional expression

  65. abstract class ImplDef extends Universe.MemberDef

    A common base class for class and object definitions.

  66. case class Import(expr: Universe.Tree, selectors: List[Universe.ImportSelector]) extends Universe.Tree with Universe.SymTree with Product with Serializable

    Import clause

  67. case class ImportSelector(name: Universe.Name, namePos: Int, rename: Universe.Name, renamePos: Int) extends Product with Serializable

    Import selector

  68. case class Infix(qualifier: Universe.Tree, name: Universe.Name, args: List[Universe.Tree]) extends Universe.Tree with Product with Serializable

    Infix application

  69. case class InfixUnApply(qualifier: Universe.Tree, name: Universe.Name, args: List[Universe.Tree]) extends Universe.Tree with Product with Serializable

    Infix extraction, for example case x :: rest

  70. class JavaKeywords extends AnyRef

    Definition Classes
    StdNames
  71. class JavaMethodType extends Forest.MethodType

    Definition Classes
    Types
  72. trait Keywords extends AnyRef

    This should be the first trait in the linearization.

  73. case class LabelDef(name: Universe.TermName, param: Universe.Tree, rhs: Universe.Tree) extends Universe.DefTree with Universe.TermTree with Product with Serializable

    A labelled expression.

  74. class LazyTreeCopier extends Universe.TreeCopierOps

    Definition Classes
    Trees
  75. case class Literal(value: Universe.Constant) extends Universe.Tree with Universe.TermTree with Product with Serializable

    Literal

  76. case class LiteralAnnotArg(const: Forest.Constant) extends Forest.ClassfileAnnotArg with Product with Serializable

    Represents a compile-time Constant (Boolean, Byte, Short, Char, Int, Long, Float, Double, String, java.lang.Class or an instance of a Java enumeration value).

  77. case class Match(selector: Universe.Tree, cases: List[Universe.CaseDef]) extends Universe.Tree with Universe.TermTree with Product with Serializable

    - Pattern matching expression (before explicitouter)

  78. abstract class MemberDef extends Universe.DefTree

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

  79. class MethodSymbol extends Forest.TermSymbol

    A class for method symbols

  80. case class MethodType(params: List[Forest.Symbol], resultType: Forest.Type) extends Forest.Type with Product with Serializable

    A class representing a method type with parameters.

  81. abstract class MethodTypeExtractor extends AnyRef

    An extractor class to create and pattern match with syntax MethodType(params, respte) Here, params is a potentially empty list of parameter symbols of the method, and restpe is the result type of the method.

  82. case class Modifiers(flags: Long, privateWithin: Forest.Name, annotations: List[Forest.AnnotationInfo]) extends Forest.AbsModifiers with HasFlags with Product with Serializable

  83. class ModuleClassSymbol extends Forest.ClassSymbol

    A class for module class symbols Note: Not all module classes are of this type; when unpickled, we get plain class symbols!

  84. case class ModuleDef(mods: Universe.Modifiers, name: Universe.TermName, impl: Universe.Template) extends Universe.ImplDef with Product with Serializable

    An object definition, e.

  85. class ModuleSymbol extends Forest.TermSymbol

    A class for module symbols

  86. trait Name extends AnyRef

    Definition Classes
    Names
  87. trait NameManglingCommon extends AnyRef

    Definition Classes
    NameManglers
  88. case class NamedType(name: Forest.Name, tp: Forest.Type) extends Forest.Type with Product with Serializable

    A class representing types with a name.

  89. case class New(tpt: Universe.Tree) extends Universe.Tree with Universe.TermTree with Product with Serializable

    Object instantiation One should always use factory method below to build a user level new.

  90. case class NotNullType(underlying: Forest.Type) extends Forest.SubType with Product with Serializable

    Definition Classes
    Types
  91. case class NullaryMethodType(resultType: Forest.Type) extends Forest.Type with Forest.SimpleTypeProxy with Product with Serializable

    Definition Classes
    TypesTypes
  92. abstract class NullaryMethodTypeExtractor extends AnyRef

    Definition Classes
    Types
  93. case class OverloadedType(pre: Forest.Type, alternatives: List[Forest.Symbol]) extends Forest.Type with Product with Serializable

    A class containing the alternatives and type prefix of an overloaded symbol.

  94. class PackageClassInfoType extends Forest.ClassInfoType

    Definition Classes
    Types
  95. case class PackageDef(mods: Universe.Modifiers, pid: Universe.RefTree, stats: List[Universe.Tree]) extends Universe.MemberDef with Product with Serializable

    A packaging, such as package pid { stats }

  96. case class PathType(tree: Forest.Tree) extends Forest.Type with Product with Serializable

    A class representing a path dependent type

  97. final class PathType0 extends Forest.PathType

    Definition Classes
    Types
  98. case class PolyType(typeParams: List[Forest.Symbol], resultType: Forest.Type) extends Forest.Type with Product with Serializable

    A type function or the type of a polymorphic value (and thus of kind *).

  99. abstract class PolyTypeExtractor extends AnyRef

    Definition Classes
    Types
  100. type Position = String

    Definition Classes
    ForestUniverse
  101. class RawTreePrinter extends Universe.TreePrinter

    Definition Classes
    TreePrinters
  102. trait RefTree extends Universe.Tree with Universe.SymTree

    A tree which references a symbol-carrying entity.

  103. case class RefinedType(parents: List[Forest.Type], decls: List[Forest.Tree]) extends Forest.CompoundType with Product with Serializable

    A class representing intersection types with refinements of the form <parents_0> with ... with <parents_n> { decls } Cannot be created directly; one should always use refinedType for creation.

  104. final class RefinedType0 extends Forest.RefinedType

    Definition Classes
    Types
  105. abstract class RefinedTypeExtractor extends AnyRef

    An extractor class to create and pattern match with syntax RefinedType(parents, decls) Here, parents is the list of parent types of the class, and decls is the scope containing all declarations in the class.

  106. case class Return(expr: Universe.Tree) extends Universe.Tree with Universe.TermTree with Universe.SymTree with Product with Serializable

    Return expression

  107. type Scope = List[Tree]

    Definition Classes
    ScopesScopes
  108. case class Select(qualifier: Universe.Tree, name: Universe.Name) extends Universe.Tree with Universe.RefTree with Product with Serializable

    Designator <qualifier> .

  109. case class SelectFromTypeTree(qualifier: Universe.Tree, name: Universe.TypeName) extends Universe.Tree with Universe.TypTree with Universe.RefTree with Product with Serializable

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

  110. trait SimpleTypeProxy extends Forest.Type

    A proxy for a type (identified by field underlying) that forwards most operations to it (for exceptions, see WrappingProxy, which forwards even more operations).

  111. abstract case class SingleType(pre: Forest.Type, sym: Forest.Symbol) extends Forest.SingletonType with Product with Serializable

    A class for singleton types of the form <prefix>.<sym.name>.type.

  112. abstract class SingleTypeExtractor extends AnyRef

    An extractor class to create and pattern match with syntax SingleType(pre, sym) Here, pre is the prefix of the single-type, and sym is the stable value symbol referred to by the single-type.

  113. abstract class SingletonType extends Forest.SubType with Forest.SimpleTypeProxy with Forest.AbsSingletonType

    The type of Scala singleton types, i.

  114. case class SingletonTypeTree(ref: Universe.Tree) extends Universe.Tree with Universe.TypTree with Product with Serializable

    Singleton type, eliminated by RefCheck

  115. case class Star(elem: Universe.Tree) extends Universe.Tree with Universe.TermTree with Product with Serializable

    Repetition of pattern, eliminated by explicitouter

  116. class StrictTreeCopier extends Universe.TreeCopierOps

    Definition Classes
    Trees
  117. abstract class SubType extends Forest.Type

    A base class for types that defer some operations to their immediate supertype.

  118. case class Super(qual: Universe.Tree, mix: Universe.TypeName) extends Universe.Tree with Universe.TermTree with Product with Serializable

    Super reference, qual = corresponding this reference

  119. abstract case class SuperType(thistpe: Forest.Type, supertpe: Forest.Type) extends Forest.SingletonType with Product with Serializable

    The SuperType type is not directly written, but arises when C.super is used as a prefix in a TypeRef or SingleType.

  120. abstract class SuperTypeExtractor extends AnyRef

    An extractor class to create and pattern match with syntax SingleType(thistpe, supertpe)

  121. trait SymTree extends Universe.Tree

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

  122. abstract class Symbol extends Forest.AbsSymbol with HasFlags

    Definition Classes
    SymbolsSymbols
  123. abstract class SymbolNames extends AnyRef

    Definition Classes
    StdNames
  124. case class Template(parents: List[Universe.Tree], self: Universe.ValDef, body: List[Universe.Tree]) extends Universe.Tree with Universe.SymTree with Product with Serializable

    Instantiation template of a class or trait

  125. case class TermName(name: String) extends Name with Product with Serializable

    Definition Classes
    Names
  126. trait TermNameMangling extends Forest.NameManglingCommon

    Definition Classes
    NameManglers
  127. trait TermNames extends Forest.Keywords with Forest.CommonNames

    Definition Classes
    StdNames
  128. class TermSymbol extends Forest.Symbol

    A class for term symbols

  129. trait TermTree extends Universe.Tree

    A tree for a term.

  130. case class This(qual: Universe.TypeName) extends Universe.Tree with Universe.TermTree with Universe.SymTree with Product with Serializable

    Self reference

  131. abstract case class ThisType(sym: Forest.Symbol) extends Forest.SingletonType with Product with Serializable

    A class for this-types of the form <sym>.

  132. abstract class ThisTypeExtractor extends AnyRef

    An extractor class to create and pattern match with syntax ThisType(sym) where sym is the class prefix of the this type.

  133. case class Throw(expr: Universe.Tree) extends Universe.Tree with Universe.TermTree with Product with Serializable

    Throw expression

  134. class Traverser extends AnyRef

    Definition Classes
    Trees
  135. abstract class Tree extends Product

    Tree is the basis for scala's abstract syntax.

  136. type TreeCopier = TreeCopierOps

    Definition Classes
    ForestTrees
  137. trait TreeCopierOps extends AnyRef

    Definition Classes
    Trees
  138. class TreePrinter extends Forest.TreePrinter

    Definition Classes
    TreePrintersTreePrinters
  139. case class Try(block: Universe.Tree, catches: List[Universe.CaseDef], finalizer: Universe.Tree) extends Universe.Tree with Universe.TermTree with Product with Serializable

    Definition Classes
    Trees
  140. trait TypTree extends Universe.Tree

    A tree for a type.

  141. abstract class Type extends Forest.AbsTypeImpl

    The base class for all types

  142. case class TypeApply(fun: Universe.Tree, args: List[Universe.Tree]) extends Universe.GenericApply with Product with Serializable

    Explicit type application.

  143. abstract case class TypeBounds(lo: Forest.Type, hi: Forest.Type, view: Forest.Type, context: Forest.Type) extends Forest.SubType with Product with Serializable

    A class for the bounds of abstract types and type parameters

  144. abstract class TypeBoundsExtractor extends AnyRef

    An extractor class to create and pattern match with syntax TypeBound(lower, upper) Here, lower is the lower bound of the TypeBounds pair, and upper is the upper bound.

  145. case class TypeBoundsTree(lo: Universe.Tree, hi: Universe.Tree) extends Universe.Tree with Universe.TypTree with Product with Serializable

    Definition Classes
    Trees
  146. class TypeConstraint extends AnyRef

    A class expressing upper and lower bounds constraints of type variables, as well as their instantiations.

  147. case class TypeDef(mods: Universe.Modifiers, name: Universe.TypeName, tparams: List[Universe.TypeDef], rhs: Universe.Tree) extends Universe.MemberDef with Product with Serializable

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

  148. case class TypeName(name: String) extends Name with Product with Serializable

    Definition Classes
    Names
  149. trait TypeNameMangling extends Forest.NameManglingCommon

    Definition Classes
    NameManglers
  150. trait TypeNames extends Forest.CommonNames

    Definition Classes
    StdNames
  151. abstract case class TypeRef(pre: Forest.Type, sym: Forest.Symbol, args: List[Forest.Type]) extends Forest.Type with Product with Serializable

    A class for named types of the form <prefix>.<sym.name>[args] Cannot be created directly; one should always use typeRef for creation.

  152. abstract class TypeRefExtractor extends AnyRef

    An extractor class to create and pattern match with syntax TypeRef(pre, sym, args) Here, pre is the prefix of the type reference, sym is the symbol referred to by the type reference, and args is a possible empty list of type argumenrts.

  153. class TypeSymbol extends Forest.Symbol

    Definition Classes
    Symbols
  154. case class TypeTree() extends Universe.Tree with Universe.TypTree with Product with Serializable

    A synthetic tree holding an arbitrary type.

  155. class TypeVar extends Forest.Type

    A class representing a type variable: not used after phase typer.

  156. case class Typed(expr: Universe.Tree, tpt: Universe.Tree) extends Universe.Tree with Universe.TermTree with Product with Serializable

    Type annotation, eliminated by explicit outer

  157. case class UnApply(fun: Universe.Tree, args: List[Universe.Tree]) extends Universe.Tree with Universe.TermTree with Product with Serializable

    Definition Classes
    Trees
  158. final class UniqueConstantType extends Forest.ConstantType with Forest.UniqueType

    Definition Classes
    Types
  159. final class UniqueSingleType extends Forest.SingleType with Forest.UniqueType

    Definition Classes
    Types
  160. final class UniqueSuperType extends Forest.SuperType with Forest.UniqueType

    Definition Classes
    Types
  161. final class UniqueThisType extends Forest.ThisType with Forest.UniqueType

    Definition Classes
    Types
  162. trait UniqueType extends Product

    Definition Classes
    Types
  163. final class UniqueTypeBounds extends Forest.TypeBounds with Forest.UniqueType

    Definition Classes
    Types
  164. final class UniqueTypeRef extends Forest.TypeRef with Forest.UniqueType

    Definition Classes
    Types
  165. case class ValDef(mods: Universe.Modifiers, lhs: Universe.Tree, rhs: Universe.Tree) extends Universe.ValOrDefDef with Product with Serializable

    A constant value definition (this includes vars as well, which differ from vals only in having the MUTABLE flag set in their Modifiers.

  166. abstract class ValOrDefDef extends Universe.MemberDef

    A common base class for ValDefs and DefDefs.

  167. trait ValueClassDefinitions extends AnyRef

    Definition Classes
    Definitions

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. final def ==(arg0: AnyRef): Boolean

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

    Definition Classes
    Any
  6. object AnnotatedType extends Forest.AnnotatedTypeExtractor with Serializable

    Definition Classes
    TypesTypes
  7. object AnnotationInfo extends Forest.AnnotationInfoExtractor

    Definition Classes
    AnnotationInfosAnnotationInfos
  8. def Apply(sym: Symbol, args: Tree*): Apply

    Definition Classes
    Trees
  9. def BackQuotedIdent(sym: Symbol): BackQuotedIdent

    Definition Classes
    Trees
  10. object BackQuotedIdent extends Serializable

    Definition Classes
    Trees
  11. def Bind(sym: Symbol, body: Tree): Bind

    Definition Classes
    Trees
  12. def Block(stats: Tree*): Block

    Block factory that flattens directly nested blocks.

    Block factory that flattens directly nested blocks.

    Definition Classes
    Trees
  13. final val BooleanTag: Int(2)

    Definition Classes
    Constants
  14. final val ByteTag: Int(3)

    Definition Classes
    Constants
  15. def CaseDef(pat: Tree, body: Tree): CaseDef

    casedef shorthand

    casedef shorthand

    Definition Classes
    Trees
  16. final val CharTag: Int(5)

    Definition Classes
    Constants
  17. object ClassInfoType extends Forest.ClassInfoTypeExtractor with Serializable

    The constructor/deconstructor for ClassInfoType instances.

  18. final val ClassTag: Int(12)

    Definition Classes
    Constants
  19. object ConsoleWriter extends Writer

    A writer that writes to the current Console and is sensitive to replacement of the Console's output stream.

  20. object Constant extends Forest.ConstantExtractor with Serializable

    Definition Classes
    ConstantsConstants
  21. object ConstantType extends Forest.ConstantTypeExtractor with Serializable

    The constructor/deconstructor for ConstantType instances.

  22. object DocTag extends Product with Serializable

    Definition Classes
    DocGen
  23. final val DoubleTag: Int(9)

    Definition Classes
    Constants
  24. val EmptyScope: Nil.type

    The empty scope (immutable).

    The empty scope (immutable).

    Definition Classes
    Scopes
  25. object EmptyTree extends Universe.Tree with Universe.TermTree with Product with Serializable

    The empty tree

  26. def EmptyTypeName: TypeName

    Definition Classes
    Names
  27. final val EnumTag: Int(13)

    Definition Classes
    Constants
  28. object ErrorType extends Forest.Type with Product with Serializable

    An object representing an erroneous type

  29. object ExistentialType extends Forest.ExistentialTypeExtractor with Serializable

    Definition Classes
    TypesTypes
  30. val Flags: treehugger.Flags.type

  31. final val FloatTag: Int(8)

    Definition Classes
    Constants
  32. def ForFilter(test: Tree): ForFilter

    Definition Classes
    Trees
  33. def ForValDef(name: TermName, tpt: Tree, rhs: Tree): ForValDef

    Definition Classes
    Trees
  34. def ForValFrom(name: TermName, tpt: Tree, rhs: Tree): ForValFrom

    Definition Classes
    Trees
  35. def Ident(sym: Symbol): Ident

    Definition Classes
    Trees
  36. def Infix(qualifier: Tree, sym: Symbol, args: List[Tree]): Infix

    Definition Classes
    Trees
  37. def InfixUnApply(qualifier: Tree, sym: Symbol, args: List[Tree]): InfixUnApply

    Definition Classes
    Trees
  38. final val IntTag: Int(6)

    Definition Classes
    Constants
  39. def LabelDef(sym: Symbol, param: Tree, rhs: Tree): LabelDef

    A TypeDef node which defines abstract type or type parameter for given sym

    A TypeDef node which defines abstract type or type parameter for given sym

    Definition Classes
    Trees
  40. final val LongTag: Int(7)

    Definition Classes
    Constants
  41. val MODULE_SUFFIX_STRING: String

    Definition Classes
    StdNames
  42. object MethodType extends Forest.MethodTypeExtractor with Serializable

    The constructor/deconstructor for MethodType instances.

  43. def Modifiers(mods: Set[api.Modifier.Value], privateWithin: Name, annotations: List[AnnotationInfo]): Modifiers

    Definition Classes
    TreesTrees
  44. def Modifiers(flags: Long): Modifiers

    Definition Classes
    Trees
  45. def Modifiers(flags: Long, privateWithin: Name): Modifiers

    Definition Classes
    Trees
  46. def ModuleDef(sym: Symbol, impl: Template): ModuleDef

    sym

    the class symbol

    impl

    the implementation template

    Definition Classes
    Trees
  47. def New(sym: Symbol, args: Tree*): Tree

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

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

    Definition Classes
    Trees
  48. def New(tpt: Tree, argss: List[List[Tree]]): 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)

    Definition Classes
    Trees
  49. lazy val NoMods: Modifiers

    Definition Classes
    Trees
  50. val NoPackage: Ident

    Definition Classes
    Trees
  51. val NoPosition: Position

    Definition Classes
    ForestUniverse
  52. object NoPrefix extends Forest.Type with Product with Serializable

    An object representing a non-existing prefix

  53. object NoSymbol extends Forest.Symbol

    Definition Classes
    SymbolsSymbols
  54. final val NoTag: Int(0)

    Definition Classes
    Constants
  55. object NoType extends Forest.Type with Product with Serializable

    An object representing a non-existing type

  56. final val NullTag: Int(11)

    Definition Classes
    Constants
  57. object NullaryMethodType extends Forest.NullaryMethodTypeExtractor with Serializable

    Definition Classes
    TypesTypes
  58. object PathType extends Serializable

    Definition Classes
    Types
  59. object PolyType extends Forest.PolyTypeExtractor with Serializable

    Definition Classes
    TypesTypes
  60. object RefinedType extends Forest.RefinedTypeExtractor with Serializable

    The constructor/deconstructor for RefinedType instances.

  61. def Select(qualifier: Tree, sym: Symbol): Select

    Definition Classes
    Trees
  62. final val ShortTag: Int(4)

    Definition Classes
    Constants
  63. object SingleType extends Forest.SingleTypeExtractor with Serializable

    The constructor/deconstructor for SingleType instances.

  64. final val StringTag: Int(10)

    Definition Classes
    Constants
  65. def Super(qual: Tree): Super

    Definition Classes
    Trees
  66. def Super(sym: Symbol): Super

    Definition Classes
    Trees
  67. def Super(sym: Symbol, mix: TypeName): Super

    Definition Classes
    Trees
  68. object SuperType extends Forest.SuperTypeExtractor with Serializable

    The constructor/deconstructor for SuperType instances.

  69. final val SymbolTag: Int(14)

    Definition Classes
    Constants
  70. def This(sym: Symbol): This

    Definition Classes
    Trees
  71. object ThisType extends Forest.ThisTypeExtractor with Serializable

    The constructor/deconstructor for ThisType instances.

  72. object TypeBounds extends Forest.TypeBoundsExtractor with Serializable

    The constructor/deconstructor for TypeBounds instances.

  73. def TypeDef(sym: Symbol): TypeDef

    Definition Classes
    Trees
  74. def TypeDef(sym: Symbol, rhs: Tree): TypeDef

    A TypeDef node which defines given sym with given tight hand side rhs.

    A TypeDef node which defines given sym with given tight hand side rhs.

    Definition Classes
    Trees
  75. object TypeRef extends Forest.TypeRefExtractor with Serializable

    The constructor/deconstructor for TypeRef instances.

  76. def TypeTree(tp: Type): TypeTree

    Definition Classes
    Trees
  77. object TypeVar

    Definition Classes
    Types
  78. final val UnitTag: Int(1)

    Definition Classes
    Constants
  79. def ValDef(sym: Symbol): ValDef

    Definition Classes
    Trees
  80. def ValDef(sym: Symbol, rhs: Tree): ValDef

    Definition Classes
    Trees
  81. def ValDef(mods: Modifiers, name: Name, tpt: Tree, rhs: Tree): ValDef

    Definition Classes
    Trees
  82. object WildcardType extends Forest.Type with Product with Serializable

    An object representing an unknown type, used during type inference.

  83. def annotatedType(annots: List[AnnotationInfo], underlying: Type, selfsym: Symbol = NoSymbol): Type

    Creator for AnnotatedTypes.

    Creator for AnnotatedTypes. It returns the underlying type if annotations.isEmpty rather than walking into the assertion.

    Definition Classes
    Types
  84. def appliedType(tycon: Type, args: List[Type]): Type

    A creator for type applications

    A creator for type applications

    Definition Classes
    Types
  85. def appliedType(tycon: Type, args: Type*): Type

    Definition Classes
    Types
  86. final def asInstanceOf[T0]: T0

    Definition Classes
    Any
  87. def backquotedPath(t: Tree): String

    Turns a path into a String, introducing backquotes as necessary.

    Turns a path into a String, introducing backquotes as necessary.

    Definition Classes
    TreePrinters
  88. val builtinFullNames: Set[String]

    Definition Classes
    Types
  89. lazy val classfileAnnotArgManifest: ClassManifest[ClassfileAnnotArg]

    Definition Classes
    AnnotationInfosAnnotationInfos
  90. def clone(): AnyRef

    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws()
  91. final def compareLengths(xs1: List[_], xs2: List[_]): Int

    Definition Classes
    Types
    Annotations
    @tailrec()
  92. def copyTypeRef(tp: Type, pre: Type, sym: Symbol, args: List[Type]): Type

    Definition Classes
    Types
  93. object definitions extends Forest.AbsDefinitions with Forest.ValueClassDefinitions

    Definition Classes
    DefinitionsStandardDefinitions
  94. object emptyValDef extends Forest.ValDef

    Definition Classes
    TreesTrees
  95. def encode(str: String): TermName

    Definition Classes
    StdNames
  96. final def eq(arg0: AnyRef): Boolean

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

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

    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws()
  99. val forMSIL: Boolean

  100. final def getClass(): Class[_]

    Definition Classes
    AnyRef → Any
  101. final def hasLength(xs: List[_], len: Int): Boolean

    Again avoiding calling length, but the lengthCompare interface is clunky.

    Again avoiding calling length, but the lengthCompare interface is clunky.

    Definition Classes
    Types
  102. def hashCode(): Int

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

    Definition Classes
    Any
  104. def isTupleTree(tree: Tree): Boolean

    Definition Classes
    TreeGen
  105. val javanme: JavaKeywords

    Definition Classes
    StdNames
  106. final val maxTostringRecursions: Int(50)

    The maximum number of recursions allowed in toString

    The maximum number of recursions allowed in toString

    Definition Classes
    Types
  107. def maybeMkAsInstanceOf(tree: Tree, pt: Type, tpe: Type, beforeRefChecks: Boolean = false): Tree

    Cast tree to pt, unless tpe is a subtype of pt, or pt is Unit.

    Cast tree to pt, unless tpe is a subtype of pt, or pt is Unit.

    Definition Classes
    TreeGen
  108. def mkAnd(tree1: Tree, tree2: Tree): Tree

    Definition Classes
    TreeGen
  109. def mkApplyIfNeeded(qual: Tree): Tree

    If this is a reference to a method with an empty parameter list, wrap it in an apply.

    If this is a reference to a method with an empty parameter list, wrap it in an apply.

    Definition Classes
    TreeGen
  110. def mkAsInstanceOf(value: Tree, tpe: Type, any: Boolean = true, wrapInApply: Boolean = true): Tree

    Builds a cast with given value and type.

    Builds a cast with given value and type.

    Definition Classes
    TreeGen
  111. def mkAttributedIdent(sym: Symbol): Tree

    Definition Classes
    TreeGen
  112. def mkAttributedQualifier(tpe: Type, termSym: Symbol): Tree

    Builds a reference to value whose type is given stable prefix.

    Builds a reference to value whose type is given stable prefix. If the type is unsuitable, e.g. it is a TypeRef for an abstract type variable, then an Ident will be made using termSym as the Ident's symbol. In that case, termSym must not be NoSymbol.

    Definition Classes
    TreeGen
  113. def mkAttributedQualifier(tpe: Type): Tree

    Builds a reference to value whose type is given stable prefix.

    Builds a reference to value whose type is given stable prefix. The type must be suitable for this. For example, it must not be a TypeRef pointing to an abstract type variable.

    Definition Classes
    TreeGen
  114. def mkAttributedRef(sym: Symbol): Tree

    Builds a reference to given symbol.

    Builds a reference to given symbol.

    Definition Classes
    TreeGen
  115. def mkAttributedRef(pre: Type, sym: Symbol): Tree

    Builds a reference to given symbol with given stable prefix.

    Builds a reference to given symbol with given stable prefix.

    Definition Classes
    TreeGen
  116. def mkAttributedSelect(qual: Tree, sym: Symbol): Tree

    Definition Classes
    TreeGen
  117. def mkAttributedThis(sym: Symbol): Tree

    Builds a reference with stable type to given symbol

    Builds a reference with stable type to given symbol

    Definition Classes
    TreeGen
  118. def mkAttributedTypeApply(target: Tree, method: Symbol, targs: List[Type]): Tree

    Definition Classes
    TreeGen
  119. def mkCast(tree: Tree, pt: Type): Tree

    Cast tree to type pt

    Cast tree to type pt

    Definition Classes
    TreeGen
  120. def mkClassOf(tp: Type): Tree

    Apparently we smuggle a Type around as a Literal(Constant(tp)) and the implementation of Constant#tpe is such that x.

    Apparently we smuggle a Type around as a Literal(Constant(tp)) and the implementation of Constant#tpe is such that x.tpe becomes ClassType(value.asInstanceOf[Type]), i.e. java.lang.Class[Type]. Can't find any docs on how/why it's done this way. See ticket SI-490 for some interesting comments from lauri alanko suggesting that the type given by classOf[T] is too strong and should be weakened so as not to suggest that classOf[List[String]] is any different from classOf[List[Int]].

    !!! See deconstMap in Erasure for one bug this encoding has induced: I would be very surprised if there aren't more.

    Definition Classes
    TreeGen
  121. def mkIsInstanceOf(value: Tree, tpe: Type, any: Boolean = true, wrapInApply: Boolean = true): Tree

    Builds an instance test with given value and type.

    Builds an instance test with given value and type.

    Definition Classes
    TreeGen
  122. def mkMethodCall(target: Tree, targs: List[Type], args: List[Tree]): Tree

    Definition Classes
    TreeGen
  123. def mkMethodCall(receiver: Tree, method: Symbol, targs: List[Type], args: List[Tree]): Tree

    Definition Classes
    TreeGen
  124. def mkMethodCall(receiver: Symbol, methodName: Name, args: List[Tree]): Tree

    Definition Classes
    TreeGen
  125. def mkMethodCall(target: Tree, args: List[Tree]): Tree

    Definition Classes
    TreeGen
  126. def mkMethodCall(method: Symbol, args: List[Tree]): Tree

    Definition Classes
    TreeGen
  127. def mkMethodCall(method: Symbol, targs: List[Type], args: List[Tree]): Tree

    Definition Classes
    TreeGen
  128. def mkMethodCall(receiver: Symbol, methodName: Name, targs: List[Type], args: List[Tree]): Tree

    A creator for method calls, e.

    A creator for method calls, e.g. fn[T1, T2, ...](v1, v2, ...) There are a number of variations.

    receiver

    symbol of the method receiver

    methodName

    name of the method to call

    targs

    type arguments (if Nil, no TypeApply node will be generated)

    args

    value arguments

    returns

    the newly created trees.

    Definition Classes
    TreeGen
  129. def mkNewCons(head: Tree, tail: Tree): Tree

    Builds a list with given head and tail.

    Builds a list with given head and tail.

    Definition Classes
    TreeGen
  130. def mkNil: Tree

    Builds a list with given head and tail.

    Builds a list with given head and tail.

    Definition Classes
    TreeGen
  131. def mkOr(tree1: Tree, tree2: Tree): Tree

    Definition Classes
    TreeGen
  132. def mkScalaDoc(target: Tree, elems: List[DocElement]): Commented

    Definition Classes
    DocGen
  133. def mkTuple(elems: List[Tree]): Tree

    Builds a tuple

    Builds a tuple

    Definition Classes
    TreeGen
  134. def mkTypeApply(target: Tree, method: Symbol, targs: List[Type]): Tree

    Definition Classes
    TreeGen
  135. def mkTypeApply(fun: Tree, targs: List[Tree]): Tree

    Builds a type application node if args.

    Builds a type application node if args.nonEmpty, returns fun otherwise.

    Definition Classes
    TreeGen
  136. def mkUnattributedRef(sym: Symbol): Tree

    Builds an untyped reference to given symbol.

    Builds an untyped reference to given symbol.

    Definition Classes
    TreeGen
  137. def mkZero(tp: Type): Tree

    Builds a tree representing an undefined local, as in var x: T = _ which is appropriate to the given Type.

    Builds a tree representing an undefined local, as in var x: T = _ which is appropriate to the given Type.

    Definition Classes
    TreeGen
  138. final def ne(arg0: AnyRef): Boolean

    Definition Classes
    AnyRef
  139. def newLazyTreeCopier: TreeCopier

    Definition Classes
    ForestTrees
  140. def newScope(): Nil.type

    Create a new scope

    Create a new scope

    Definition Classes
    ScopesScopes
  141. def newStrictTreeCopier: TreeCopier

    Definition Classes
    ForestTrees
  142. def newTermName(name: String): TermName

    Definition Classes
    Names
  143. def newTreePrinter(): TreePrinter

    Definition Classes
    TreePrinters
  144. def newTreePrinter(stream: OutputStream): TreePrinter

    Definition Classes
    TreePrinters
  145. def newTreePrinter(writer: PrintWriter): TreePrinter

    Hook to define what show(tree) means.

    Hook to define what show(tree) means.

    Definition Classes
    TreePrintersTreePrinters
  146. def newTypeName(name: String): TypeName

    Definition Classes
    Names
  147. object nme extends Forest.TermNames with Forest.TermNameMangling

    Definition Classes
    StdNames
  148. final def notify(): Unit

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

    Definition Classes
    AnyRef
  150. def productConstr: Select

    Definition Classes
    TreeGen
  151. implicit def promoteTermNamesAsNecessary(name: Name): TermName

    Definition Classes
    Names
  152. def quotedName(name: Name): String

    Definition Classes
    TreePrinters
  153. def quotedName(name: Name, decode: Boolean): String

    Adds backticks if the name is a scala keyword.

    Adds backticks if the name is a scala keyword.

    Definition Classes
    TreePrinters
  154. def refinedType(parents: List[Type], owner: Symbol, decls: List[Tree], customToString: String): Type

    the canonical creator for a refined type with a given scope

    the canonical creator for a refined type with a given scope

    Definition Classes
    Types
  155. def rootId(name: Name): Select

    Definition Classes
    TreeGen
  156. def rootScalaDot(name: Name): Select

    Definition Classes
    TreeGen
  157. final def sameLength(xs1: List[_], xs2: List[_]): Boolean

    True if two lists have the same length.

    True if two lists have the same length. Since calling length on linear sequences is O(n), it is an inadvisable way to test length equality.

    Definition Classes
    Types
  158. def scalaAnyRefConstr: Select

    Definition Classes
    TreeGen
  159. def scalaDot(name: Name): Select

    Definition Classes
    TreeGen
  160. def scalaFunctionConstr(argtpes: List[Tree], restpe: Tree, abstractFun: Boolean = false): Tree

    Definition Classes
    TreeGen
  161. def scalaScalaObjectConstr: Select

    Definition Classes
    TreeGen
  162. def scalaUnitConstr: Select

    Definition Classes
    TreeGen
  163. def serializableConstr: Select

    Definition Classes
    TreeGen
  164. def show(tree: Tree, mkPrinter: (PrintWriter) ⇒ Forest.TreePrinter = newTreePrinter): String

    Definition Classes
    TreePrinters
  165. final val showOuterTests: Boolean(false)

    Definition Classes
    TreePrinters
  166. def showRaw(tree: Tree): String

    Definition Classes
    TreePrinters
  167. def singleType(pre: Type, sym: Symbol): Type

    The canonical creator for single-types

    The canonical creator for single-types

    Definition Classes
    Types
  168. lazy val sn: SymbolNames

    Definition Classes
    StdNames
  169. implicit def stringToTermName(s: String): TermName

    Definition Classes
    StdNames
  170. final def synchronized[T0](arg0: ⇒ T0): T0

    Definition Classes
    AnyRef
  171. def toString(): String

    Definition Classes
    AnyRef → Any
  172. object tpnme extends Forest.TypeNames with Forest.TypeNameMangling

    Definition Classes
    StdNames
  173. val treeCopy: TreeCopier

    Definition Classes
    Trees
  174. def treeToString(args: Any*): String

    Definition Classes
    TreePrinters
  175. object treehuggerDSL

    Definition Classes
    TreehuggerDSLs
  176. def typeRef(pre: Type, sym: Symbol, args: Type*): Type

    Definition Classes
    Types
  177. def typeRef(pre: Type, sym: Symbol, args: List[Type]): Type

    Definition Classes
    Types
  178. def typeRef(sym: Symbol): Type

    Definition Classes
    Types
  179. final def wait(): Unit

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

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

    Definition Classes
    AnyRef
    Annotations
    @throws()
  182. def xprintTree(treePrinter: TreePrinter, tree: Tree): Unit

    Hook for extensions

    Hook for extensions

    Definition Classes
    TreePrinters
  183. def xtraverse(traverser: Traverser, tree: Tree): Unit

    Attributes
    protected
    Definition Classes
    Trees

Inherited from TreehuggerDSLs

Inherited from DocGen

Inherited from TreeGen

Inherited from TreePrinters

Inherited from AnnotationInfos

Inherited from Trees

Inherited from Scopes

Inherited from Constants

Inherited from Types

Inherited from Symbols

Inherited from Definitions

Inherited from StdNames

Inherited from NameManglers

Inherited from Universe

Inherited from api.TreePrinters

Inherited from StandardDefinitions

Inherited from api.AnnotationInfos

Inherited from api.Trees

Inherited from Names

Inherited from api.Scopes

Inherited from api.Constants

Inherited from api.Types

Inherited from api.Symbols

Inherited from AnyRef

Inherited from Any

No Group