scala.reflect.macros

Universe

abstract class Universe extends api.Universe

EXPERIMENTAL

The refinement of scala.reflect.api.Universe for the use by macro writers.

This universe provides mutability for reflection artifacts (e.g. macros can change types of compiler trees, add annotation to symbols representing definitions, etc) and exposes some internal compiler functionality such as Symbol.deSkolemize or Tree.attachments.

Source
Universe.scala
Linear Supertypes
Type Hierarchy Learn more about scaladoc diagrams
Content Hierarchy Learn more about scaladoc diagrams
SymTreeTypeTreeIdentUniverse.MethodSymbolUniverse.ModuleSymbolUniverse.ClassSymbolUniverse.FreeTermSymbolUniverse.FreeTypeSymbolUniverse.SingletonTypeUniverse.ThisTypeUniverse.SingleTypeUniverse.SuperTypeUniverse.ConstantTypeUniverse.TypeRefUniverse.CompoundTypeUniverse.RefinedTypeUniverse.ClassInfoTypeUniverse.MethodTypeUniverse.NullaryMethodTypeUniverse.PolyTypeUniverse.ExistentialTypeUniverse.AnnotatedTypeUniverse.TypeBoundsUniverse.BoundedWildcardTypeUniverse.MemberScopeUniverse.RefTreeUniverse.SelectUniverse.SelectFromTypeTreeUniverse.DefTreeUniverse.MemberDefUniverse.LabelDefUniverse.BindUniverse.PackageDefUniverse.ImplDefUniverse.ValOrDefDefUniverse.TypeDefUniverse.ClassDefUniverse.ModuleDefUniverse.ValDefUniverse.DefDefUniverse.BlockUniverse.AlternativeUniverse.StarUniverse.UnApplyUniverse.FunctionUniverse.AssignUniverse.AssignOrNamedArgUniverse.IfUniverse.MatchUniverse.ReturnUniverse.TryUniverse.ThrowUniverse.NewUniverse.TypedUniverse.GenericApplyUniverse.TypeApplyUniverse.ApplyUniverse.SuperUniverse.ThisUniverse.ReferenceToBoxedUniverse.LiteralUniverse.SingletonTypeTreeUniverse.CompoundTypeTreeUniverse.AppliedTypeTreeUniverse.TypeBoundsTreeUniverse.ExistentialTypeTreeUniverse.TreeCopierUniverse.LiteralArgumentUniverse.ArrayArgumentUniverse.NestedArgumentUniverse.TypeTag[T]Universe.ModuleMirrorUniverse.ClassMirrorUniverse.RuntimeMirrorTreeUniverse.TypTreeUniverse.TermSymbolUniverse.TypeSymbolUniverse.TypeUniverse.ScopeUniverse.NameTreeUniverse.TermTreeUniverse.TreeCopierOpsUniverse.JavaArgumentUniverse.WeakTypeTag[T]Universe.TemplateMirrorUniverse.ReflectiveMirror
Ordering
  1. Grouped
  2. Alphabetic
  3. By inheritance
Inherited
  1. Universe
  2. Universe
  3. Quasiquotes
  4. Importers
  5. Printers
  6. Mirrors
  7. BuildUtils
  8. StandardLiftables
  9. StandardNames
  10. StandardDefinitions
  11. ImplicitTags
  12. TagInterop
  13. TypeTags
  14. Exprs
  15. Positions
  16. Annotations
  17. Constants
  18. Trees
  19. Names
  20. Scopes
  21. FlagSets
  22. Types
  23. Symbols
  24. AnyRef
  25. 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

Instance Constructors

  1. new Universe()

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 AnnotatedType >: Null <: Universe.Type with Universe.AnnotatedTypeApi

    The AnnotatedType type signature is used for annotated types of the for <type> @<annotation>.

  8. trait AnnotatedTypeApi extends Universe.TypeApi

    The API that all annotated types support.

  9. abstract class AnnotatedTypeExtractor extends AnyRef

    An extractor class to create and pattern match with syntax AnnotatedType(annotations, underlying, selfsym).

  10. abstract type Annotation >: Null <: Universe.AnnotationApi

    Information about an annotation.

  11. trait AnnotationApi extends AnyRef

    The API of Annotation instances.

  12. abstract class AnnotationExtractor extends AnyRef

    An extractor class to create and pattern match with syntax Annotation(tpe, scalaArgs, javaArgs).

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

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

  14. trait AppliedTypeTreeApi extends Universe.TypTreeApi

    The API that all applied type trees support

  15. abstract class AppliedTypeTreeExtractor extends AnyRef

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

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

    Value application

  17. trait ApplyApi extends Universe.GenericApplyApi

    The API that all applies support

  18. abstract class ApplyExtractor extends AnyRef

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

  19. abstract type ArrayArgument >: Null <: Universe.JavaArgument with Universe.ArrayArgumentApi

    An array argument to a Java annotation as in @Target(value={TYPE,FIELD,METHOD,PARAMETER})

  20. trait ArrayArgumentApi extends AnyRef

    API of ArrayArgument instances.

  21. abstract class ArrayArgumentExtractor extends AnyRef

    An extractor class to create and pattern match with syntax ArrayArgument(args) where args is the argument array.

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

    Assignment

  23. trait AssignApi extends Universe.TermTreeApi

    The API that all assigns support

  24. abstract class AssignExtractor extends AnyRef

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

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

    Either an assignment or a named argument.

  26. trait AssignOrNamedArgApi extends Universe.TermTreeApi

    The API that all assigns support

  27. abstract class AssignOrNamedArgExtractor extends AnyRef

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

  28. trait AttachableApi extends AnyRef

    The API of reflection artifacts that support scala.reflect.macros.Attachments.

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

    Bind a variable to a rhs pattern.

  30. trait BindApi extends Universe.DefTreeApi

    The API that all binds support

  31. abstract class BindExtractor extends AnyRef

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

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

    Block of expressions (semicolon separated expressions)

  33. trait BlockApi extends Universe.TermTreeApi

    The API that all blocks support

  34. abstract class BlockExtractor extends AnyRef

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

  35. case class BooleanFlag(value: Option[Boolean]) extends Product with Serializable

  36. abstract type BoundedWildcardType >: Null <: Universe.Type with Universe.BoundedWildcardTypeApi

    BoundedWildcardTypes, used only during type inference, are created in two places:

  37. trait BoundedWildcardTypeApi extends Universe.TypeApi

    The API that all this types support.

  38. abstract class BoundedWildcardTypeExtractor extends AnyRef

    An extractor class to create and pattern match with syntax BoundedWildcardTypeExtractor(bounds) with bounds denoting the type bounds.

  39. abstract class BuildApi extends AnyRef

    Definition Classes
    BuildUtils
  40. abstract type CaseDef >: Null <: Universe.Tree with Universe.CaseDefApi

    Case clause in a pattern match.

  41. trait CaseDefApi extends Universe.TreeApi

    The API that all case defs support

  42. abstract class CaseDefExtractor extends AnyRef

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

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

    A class definition.

  44. trait ClassDefApi extends Universe.ImplDefApi

    The API that all class defs support

  45. abstract class ClassDefExtractor extends AnyRef

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

  46. abstract type ClassInfoType >: Null <: Universe.CompoundType with Universe.ClassInfoTypeApi

    The ClassInfo type signature is used to define parents and declarations of classes, traits, and objects.

  47. trait ClassInfoTypeApi extends Universe.TypeApi

    The API that all class info types support.

  48. 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.

  49. trait ClassMirror extends Universe.TemplateMirror

    A mirror that reflects the instance parts of a runtime class.

  50. abstract type ClassSymbol >: Null <: Universe.TypeSymbol with Universe.ClassSymbolApi

    The type of class symbols representing class and trait definitions.

  51. trait ClassSymbolApi extends Universe.TypeSymbolApi

    The API of class symbols.

  52. abstract type CompilationUnit <: CompilationUnitContextApi

    The type of compilation units.

  53. trait CompilationUnitContextApi extends AnyRef

    Compilation unit describes a unit of work of the compilation run.

  54. abstract type CompoundType >: Null <: Universe.Type

    A subtype of Type representing refined types as well as ClassInfo signatures.

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

    Intersection type <parent1> with .

  56. trait CompoundTypeTreeApi extends Universe.TypTreeApi

    The API that all compound type trees support

  57. abstract class CompoundTypeTreeExtractor extends AnyRef

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

  58. abstract type Constant >: Null <: Universe.ConstantApi

    This "virtual" case class represents the reflection interface for literal expressions which can not be further broken down or evaluated, such as "true", "0", "classOf[List]".

  59. abstract class ConstantApi extends AnyRef

    The API of Constant instances.

  60. abstract class ConstantExtractor extends AnyRef

    An extractor class to create and pattern match with syntax Constant(value) where value is the Scala value of the constant.

  61. abstract type ConstantType >: Null <: Universe.SingletonType with Universe.ConstantTypeApi

    The ConstantType type is not directly written in user programs, but arises as the type of a constant.

  62. trait ConstantTypeApi extends Universe.TypeApi

    The API that all constant types support.

  63. 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.

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

    A method or macro definition.

  65. trait DefDefApi extends Universe.ValOrDefDefApi

    The API that all def defs support

  66. abstract class DefDefExtractor extends AnyRef

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

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

    A tree which defines a symbol-carrying entity.

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

    The API that all def trees support

  69. trait DefinitionsApi extends Universe.StandardTypes

    Defines standard symbols (and types via its base trait).

  70. abstract type ExistentialType >: Null <: Universe.Type with Universe.ExistentialTypeApi

    The ExistentialType type signature is used for existential types and wildcard types.

  71. trait ExistentialTypeApi extends Universe.TypeApi

    The API that all existential types support.

  72. abstract class ExistentialTypeExtractor extends AnyRef

    An extractor class to create and pattern match with syntax ExistentialType(quantified, underlying).

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

    Existential type tree node

  74. trait ExistentialTypeTreeApi extends Universe.TypTreeApi

    The API that all existential type trees support

  75. abstract class ExistentialTypeTreeExtractor extends AnyRef

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

  76. trait Expr[+T] extends Equals with Serializable

    Expr wraps an abstract syntax tree and tags it with its type.

  77. trait FieldMirror extends AnyRef

    A mirror that reflects a field.

  78. trait FlagOps extends Any

    The API of FlagSet instances.

  79. abstract type FlagSet

    An abstract type representing sets of flags (like private, final, etc.

  80. trait FlagValues extends AnyRef

    All possible values that can constitute flag sets.

  81. abstract type FreeTermSymbol >: Null <: Universe.TermSymbol with Universe.FreeTermSymbolApi

    The type of free terms introduced by reification.

  82. trait FreeTermSymbolApi extends Universe.TermSymbolApi

    The API of free term symbols.

  83. abstract type FreeTypeSymbol >: Null <: Universe.TypeSymbol with Universe.FreeTypeSymbolApi

    The type of free types introduced by reification.

  84. trait FreeTypeSymbolApi extends Universe.TypeSymbolApi

    The API of free type symbols.

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

    Anonymous function, eliminated by compiler phase lambdalift

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

    The API that all functions support

  87. abstract class FunctionExtractor extends AnyRef

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

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

    Common base class for Apply and TypeApply.

  89. trait GenericApplyApi extends Universe.TermTreeApi

    The API that all applies support

  90. abstract type Ident >: Null <: RefTree with IdentContextApi

    A reference to identifier name.

    A reference to identifier name.

    Definition Classes
    UniverseTrees
  91. trait IdentApi extends Universe.RefTreeApi

    The API that all idents support

  92. trait IdentContextApi extends IdentApi

    The extended API of idents that's supported in macro context universes

  93. abstract class IdentExtractor extends AnyRef

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

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

    Conditional expression

  95. trait IfApi extends Universe.TermTreeApi

    The API that all ifs support

  96. abstract class IfExtractor extends AnyRef

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

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

    A common base class for class and object definitions.

  98. trait ImplDefApi extends Universe.MemberDefApi

    The API that all impl defs support

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

    Import clause

  100. trait ImportApi extends Universe.SymTreeApi

    The API that all imports support

  101. abstract class ImportExtractor extends AnyRef

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

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

    Import selector

  103. trait ImportSelectorApi extends AnyRef

    The API that all import selectors support

  104. abstract class ImportSelectorExtractor extends AnyRef

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

  105. trait Importer extends AnyRef

    The API of importers.

  106. trait InstanceMirror extends AnyRef

    A mirror that reflects a runtime value.

  107. abstract type JavaArgument >: Null <: AnyRef

    A Java annotation argument

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

    A labelled expression.

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

    The API that all label defs support

  110. abstract class LabelDefExtractor extends AnyRef

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

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

    Literal

  112. trait LiteralApi extends Universe.TermTreeApi

    The API that all literals support

  113. abstract type LiteralArgument >: Null <: Universe.JavaArgument with Universe.LiteralArgumentApi

    A literal argument to a Java annotation as "Use X instead" in @Deprecated("Use X instead")

  114. trait LiteralArgumentApi extends AnyRef

    The API of LiteralArgument instances.

  115. abstract class LiteralArgumentExtractor extends AnyRef

    An extractor class to create and pattern match with syntax LiteralArgument(value) where value is the constant argument.

  116. abstract class LiteralExtractor extends AnyRef

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

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

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

  118. trait MatchApi extends Universe.TermTreeApi

    The API that all matches support

  119. abstract class MatchExtractor extends AnyRef

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

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

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

  121. trait MemberDefApi extends Universe.DefTreeApi

    The API that all member defs support

  122. abstract type MemberScope >: Null <: Universe.Scope with Universe.MemberScopeApi

    The type of member scopes, as in class definitions, for example.

  123. trait MemberScopeApi extends Universe.ScopeApi

    The API that all member scopes support

  124. trait MethodMirror extends AnyRef

    A mirror that reflects a method.

  125. abstract type MethodSymbol >: Null <: Universe.TermSymbol with Universe.MethodSymbolApi

    The type of method symbols representing def declarations.

  126. trait MethodSymbolApi extends Universe.TermSymbolApi

    The API of method symbols.

  127. abstract type MethodType >: Null <: Universe.Type with Universe.MethodTypeApi

    The MethodType type signature is used to indicate parameters and result type of a method

  128. trait MethodTypeApi extends Universe.TypeApi

    The API that all method types support.

  129. 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.

  130. abstract type Mirror >: Null <: api.Mirror[Universe.this.type]

    The base type of all mirrors of this universe.

    The base type of all mirrors of this universe.

    This abstract type conforms the base interface for all mirrors defined in scala.reflect.api.Mirror and is gradually refined in specific universes (e.g. Mirror of a scala.reflect.api.JavaUniverse is capable of reflection).

    Definition Classes
    Mirrors
  131. abstract type Modifiers >: Null <: ModifiersApi

    The type of tree modifiers.

    The type of tree modifiers.

    Definition Classes
    Trees
  132. abstract class ModifiersApi extends AnyRef

    The API that all Modifiers support

  133. abstract class ModifiersExtractor extends AnyRef

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

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

    An object definition, e.

  135. trait ModuleDefApi extends Universe.ImplDefApi

    The API that all module defs support

  136. abstract class ModuleDefExtractor extends AnyRef

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

  137. trait ModuleMirror extends Universe.TemplateMirror

    A mirror that reflects a Scala object definition or the static parts of a runtime class.

  138. abstract type ModuleSymbol >: Null <: Universe.TermSymbol with Universe.ModuleSymbolApi

    The type of module symbols representing object declarations.

  139. trait ModuleSymbolApi extends Universe.TermSymbolApi

    The API of module symbols.

  140. abstract type Name >: Null <: NameApi

    The abstract type of names.

    The abstract type of names.

    Definition Classes
    Names
  141. abstract class NameApi extends AnyRef

    The API of Name instances.

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

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

  143. trait NameTreeApi extends Universe.TreeApi

    The API that all name trees support

  144. trait NamesApi extends AnyRef

    Defines standard names, common for term and type names: These can be accessed via the nme and tpnme members.

  145. abstract type NestedArgument >: Null <: Universe.JavaArgument with Universe.NestedArgumentApi

    A nested annotation argument to a Java annotation as @Nested in @Outer(@Nested).

  146. trait NestedArgumentApi extends AnyRef

    API of NestedArgument instances.

  147. abstract class NestedArgumentExtractor extends AnyRef

    An extractor class to create and pattern match with syntax NestedArgument(annotation) where annotation is the nested annotation.

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

    Object instantiation

  149. trait NewApi extends Universe.TermTreeApi

    The API that all news support

  150. abstract class NewExtractor extends AnyRef

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

  151. abstract type NullaryMethodType >: Null <: Universe.Type with Universe.NullaryMethodTypeApi

    The NullaryMethodType type signature is used for parameterless methods with declarations of the form def foo: T

  152. trait NullaryMethodTypeApi extends Universe.TypeApi

    The API that all nullary method types support.

  153. abstract class NullaryMethodTypeExtractor extends AnyRef

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

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

    A packaging, such as package pid { stats }

  155. trait PackageDefApi extends Universe.MemberDefApi

    The API that all package defs support

  156. abstract class PackageDefExtractor extends AnyRef

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

  157. abstract type PolyType >: Null <: Universe.Type with Universe.PolyTypeApi

    The PolyType type signature is used for polymorphic methods that have at least one type parameter.

  158. trait PolyTypeApi extends Universe.TypeApi

    The API that all polymorphic types support.

  159. abstract class PolyTypeExtractor extends AnyRef

    An extractor class to create and pattern match with syntax PolyType(typeParams, resultType).

  160. abstract type Position >: Null <: api.Position { type Pos = Universe.this.Position }

    Defines a universe-specific notion of positions.

    Defines a universe-specific notion of positions. The main documentation entry about positions is located at scala.reflect.api.Position.

    Definition Classes
    Positions
  161. implicit class Quasiquote extends AnyRef

    Definition Classes
    Quasiquotes
  162. abstract type RefTree >: Null <: Universe.SymTree with Universe.NameTree with Universe.RefTreeApi

    A tree which references a symbol-carrying entity.

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

    The API that all ref trees support

  164. abstract class RefTreeExtractor extends AnyRef

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

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

    Marks underlying reference to id as boxed.

  166. trait ReferenceToBoxedApi extends Universe.TermTreeApi

    The API that all references support

  167. abstract class ReferenceToBoxedExtractor extends AnyRef

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

  168. abstract type RefinedType >: Null <: Universe.CompoundType with Universe.RefinedTypeApi

    The RefinedType type defines types of any of the forms on the left, with their RefinedType representations to the right.

  169. trait RefinedTypeApi extends Universe.TypeApi

    The API that all refined types support.

  170. 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.

  171. trait ReflectiveMirror extends api.Mirror[Mirrors.this.type]

    A mirror that reflects instances and static classes.

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

    Return expression

  173. trait ReturnApi extends Universe.TermTreeApi

    The API that all returns support

  174. abstract class ReturnExtractor extends AnyRef

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

  175. abstract type Run <: RunContextApi

    The type of compilation runs.

  176. trait RunContextApi extends AnyRef

    Compilation run uniquely identifies current invocation of the compiler (e.

  177. abstract type RuntimeClass >: Null

    Abstracts the runtime representation of a class on the underlying platform.

    Abstracts the runtime representation of a class on the underlying platform.

    Definition Classes
    Mirrors
  178. trait RuntimeMirror extends api.Mirror[Mirrors.this.type] with Universe.ReflectiveMirror

    The API of a mirror for a reflective universe.

  179. abstract type Scope >: Null <: Universe.ScopeApi

    The base type of all scopes.

  180. trait ScopeApi extends Iterable[Universe.Symbol]

    The API that all scopes support

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

    A member selection <qualifier> .

  182. trait SelectApi extends Universe.RefTreeApi

    The API that all selects support

  183. abstract class SelectExtractor extends AnyRef

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

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

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

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

    The API that all selects from type trees support

  186. abstract class SelectFromTypeTreeExtractor extends AnyRef

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

  187. abstract type SingleType >: Null <: Universe.SingletonType with Universe.SingleTypeApi

    The SingleType type describes types of any of the forms on the left, with their TypeRef representations to the right.

  188. trait SingleTypeApi extends Universe.TypeApi

    The API that all single types support.

  189. 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.

  190. abstract type SingletonType >: Null <: Universe.Type

    The type of Scala singleton types, i.

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

    Singleton type, eliminated by RefCheck

  192. trait SingletonTypeTreeApi extends Universe.TypTreeApi

    The API that all singleton type trees support

  193. abstract class SingletonTypeTreeExtractor extends AnyRef

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

  194. trait StandardTypes extends AnyRef

    Defines standard types.

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

    Repetition of pattern.

  196. trait StarApi extends Universe.TermTreeApi

    The API that all stars support

  197. abstract class StarExtractor extends AnyRef

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

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

    Super reference, where qual is the corresponding this reference.

  199. trait SuperApi extends Universe.TermTreeApi

    The API that all supers support

  200. abstract class SuperExtractor extends AnyRef

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

  201. abstract type SuperType >: Null <: Universe.SingletonType with Universe.SuperTypeApi

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

  202. trait SuperTypeApi extends Universe.TypeApi

    The API that all super types support.

  203. abstract class SuperTypeExtractor extends AnyRef

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

  204. abstract type SymTree >: Null <: Tree with SymTreeContextApi

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

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

    Definition Classes
    UniverseTrees
  205. trait SymTreeApi extends Universe.TreeApi

    The API that all sym trees support

  206. trait SymTreeContextApi extends SymTreeApi

    The extended API of sym trees that's supported in macro context universes

  207. abstract type Symbol >: Null <: SymbolContextApi

    The Symbol API is extended for macros: See SymbolContextApi for details.

    The Symbol API is extended for macros: See SymbolContextApi for details.

    Definition Classes
    UniverseSymbols
  208. trait SymbolApi extends AnyRef

    The API of symbols.

  209. trait SymbolContextApi extends SymbolApi with AttachableApi

    The extended API of symbols that's supported in macro context universes

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

    Instantiation template of a class or trait

  211. trait TemplateApi extends Universe.SymTreeApi

    The API that all templates support

  212. abstract class TemplateExtractor extends AnyRef

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

  213. trait TemplateMirror extends AnyRef

    A mirror that reflects the instance or static parts of a runtime class.

  214. abstract type TermName >: Null <: Name

    The abstract type of names representing types.

    The abstract type of names representing types.

    Definition Classes
    Names
  215. abstract class TermNameExtractor extends AnyRef

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

  216. trait TermNamesApi extends Universe.NamesApi

    Defines standard term names that can be accessed via the nme member.

  217. abstract type TermSymbol >: Null <: Universe.Symbol with Universe.TermSymbolApi

    The type of term symbols representing val, var, def, and object declarations as well as packages and value parameters.

  218. trait TermSymbolApi extends Universe.SymbolApi

    The API of term symbols.

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

    A tree for a term.

  220. trait TermTreeApi extends Universe.TreeApi

    The API that all term trees support

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

    Self reference

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

    The API that all thises support

  223. abstract class ThisExtractor extends AnyRef

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

  224. abstract type ThisType >: Null <: Universe.SingletonType with Universe.ThisTypeApi

    A singleton type that describes types of the form on the left with the corresponding ThisType representation to the right:

  225. trait ThisTypeApi extends Universe.TypeApi

    The API that all this types support.

  226. 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.

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

    Throw expression

  228. trait ThrowApi extends Universe.TermTreeApi

    The API that all tries support

  229. abstract class ThrowExtractor extends AnyRef

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

  230. abstract class Transformer extends AnyRef

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

  231. class Traverser extends AnyRef

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

  232. abstract type Tree >: Null <: TreeContextApi

    The Tree API is extended for macros: See TreeContextApi for details.

    The Tree API is extended for macros: See TreeContextApi for details.

    Definition Classes
    UniverseTrees
  233. trait TreeApi extends Product

    The API that all trees support.

  234. trait TreeContextApi extends TreeApi with AttachableApi

    The extended API of trees that's supported in macro context universes

  235. abstract type TreeCopier <: Universe.TreeCopierOps

    The type of standard (lazy) tree copiers.

  236. abstract class TreeCopierOps extends AnyRef

    The API of a tree copier.

  237. trait TreePrinter extends AnyRef

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

    Try catch node

  239. trait TryApi extends Universe.TermTreeApi

    The API that all tries support

  240. abstract class TryExtractor extends AnyRef

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

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

    A tree for a type.

  242. trait TypTreeApi extends Universe.TreeApi

    The API that all typ trees support

  243. abstract type Type >: Null <: Universe.TypeApi

    The type of Scala types, and also Scala type signatures.

  244. abstract class TypeApi extends AnyRef

    The API of types.

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

    Explicit type application.

  246. trait TypeApplyApi extends Universe.GenericApplyApi

    The API that all type applies support

  247. abstract class TypeApplyExtractor extends AnyRef

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

  248. abstract type TypeBounds >: Null <: Universe.Type with Universe.TypeBoundsApi

    The TypeBounds type signature is used to indicate lower and upper type bounds of type parameters and abstract types.

  249. trait TypeBoundsApi extends Universe.TypeApi

    The API that all type bounds support.

  250. 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.

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

    Type bounds tree node

  252. trait TypeBoundsTreeApi extends Universe.TypTreeApi

    The API that all type bound trees support

  253. abstract class TypeBoundsTreeExtractor extends AnyRef

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

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

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

  255. trait TypeDefApi extends Universe.MemberDefApi

    The API that all type defs support

  256. abstract class TypeDefExtractor extends AnyRef

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

  257. abstract type TypeName >: Null <: Name

    The abstract type of names representing terms.

    The abstract type of names representing terms.

    Definition Classes
    Names
  258. abstract class TypeNameExtractor extends AnyRef

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

  259. trait TypeNamesApi extends Universe.NamesApi

    Defines standard type names that can be accessed via the tpnme member.

  260. abstract type TypeRef >: Null <: Universe.Type with Universe.TypeRefApi

    The TypeRef type describes types of any of the forms on the left, with their TypeRef representations to the right.

  261. trait TypeRefApi extends Universe.TypeApi

    The API that all type refs support.

  262. 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.

  263. abstract type TypeSymbol >: Null <: Universe.Symbol with Universe.TypeSymbolApi

    The type of type symbols representing type, class, and trait declarations, as well as type parameters.

  264. trait TypeSymbolApi extends Universe.SymbolApi

    The API of type symbols.

  265. trait TypeTag[T] extends Universe.WeakTypeTag[T] with Equals with Serializable

    A TypeTag is a scala.reflect.api.TypeTags#WeakTypeTag with the additional static guarantee that all type references are concrete, i.

  266. abstract type TypeTree >: Null <: TypTree with TypeTreeContextApi

    A synthetic tree holding an arbitrary type.

    A synthetic tree holding an arbitrary type. Not to be confused with with TypTree, the trait for trees that are only used for type trees. TypeTree's are inserted in several places, but most notably in RefCheck, where the arbitrary type trees are all replaced by TypeTree's.

    Definition Classes
    UniverseTrees
  267. trait TypeTreeApi extends Universe.TypTreeApi

    The API that all type trees support

  268. trait TypeTreeContextApi extends TypeTreeApi

    The extended API of sym trees that's supported in macro context universes

  269. abstract class TypeTreeExtractor extends AnyRef

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

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

    Type annotation, eliminated by compiler phase cleanup

  271. trait TypedApi extends Universe.TermTreeApi

    The API that all typeds support

  272. abstract class TypedExtractor extends AnyRef

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

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

    Used to represent unapply methods in pattern matching.

  274. trait UnApplyApi extends Universe.TermTreeApi

    The API that all unapplies support

  275. abstract class UnApplyExtractor extends AnyRef

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

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

    Broadly speaking, a value definition.

  277. trait ValDefApi extends Universe.ValOrDefDefApi

    The API that all val defs support

  278. abstract class ValDefExtractor extends AnyRef

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

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

    A common base class for ValDefs and DefDefs.

  280. trait ValOrDefDefApi extends Universe.MemberDefApi

    The API that all val defs and def defs support

  281. trait WeakTypeTag[T] extends Equals with Serializable

    If an implicit value of type WeakTypeTag[T] is required, the compiler will create one, and the reflective representation of T can be accessed via the tpe field.

  282. type ModifiersCreator = ModifiersExtractor

    Definition Classes
    Trees
    Annotations
    @deprecated
    Deprecated

    (Since version 2.11.0) Use ModifiersExtractor instead

Abstract Value Members

  1. abstract val Alternative: AlternativeExtractor

    The constructor/extractor for Alternative instances.

    The constructor/extractor for Alternative instances.

    Definition Classes
    Trees
  2. implicit abstract val AlternativeTag: ClassTag[Alternative]

    Definition Classes
    ImplicitTags
  3. abstract val Annotated: AnnotatedExtractor

    The constructor/extractor for Annotated instances.

    The constructor/extractor for Annotated instances.

    Definition Classes
    Trees
  4. implicit abstract val AnnotatedTag: ClassTag[Annotated]

    Definition Classes
    ImplicitTags
  5. abstract val AnnotatedType: AnnotatedTypeExtractor

    The constructor/extractor for AnnotatedType instances.

    The constructor/extractor for AnnotatedType instances.

    Definition Classes
    Types
  6. implicit abstract val AnnotatedTypeTag: ClassTag[AnnotatedType]

    Definition Classes
    ImplicitTags
  7. abstract val Annotation: AnnotationExtractor

    The constructor/extractor for Annotation instances.

    The constructor/extractor for Annotation instances.

    Definition Classes
    Annotations
  8. implicit abstract val AnnotationTag: ClassTag[Annotation]

    Definition Classes
    ImplicitTags
  9. abstract val AppliedTypeTree: AppliedTypeTreeExtractor

    The constructor/extractor for AppliedTypeTree instances.

    The constructor/extractor for AppliedTypeTree instances.

    Definition Classes
    Trees
  10. implicit abstract val AppliedTypeTreeTag: ClassTag[AppliedTypeTree]

    Definition Classes
    ImplicitTags
  11. abstract val Apply: ApplyExtractor

    The constructor/extractor for Apply instances.

    The constructor/extractor for Apply instances.

    Definition Classes
    Trees
  12. implicit abstract val ApplyTag: ClassTag[Apply]

    Definition Classes
    ImplicitTags
  13. abstract val ArrayArgument: ArrayArgumentExtractor

    The constructor/extractor for ArrayArgument instances.

    The constructor/extractor for ArrayArgument instances.

    Definition Classes
    Annotations
  14. implicit abstract val ArrayArgumentTag: ClassTag[ArrayArgument]

    Definition Classes
    ImplicitTags
  15. abstract val Assign: AssignExtractor

    The constructor/extractor for Assign instances.

    The constructor/extractor for Assign instances.

    Definition Classes
    Trees
  16. abstract val AssignOrNamedArg: AssignOrNamedArgExtractor

    The constructor/extractor for AssignOrNamedArg instances.

    The constructor/extractor for AssignOrNamedArg instances.

    Definition Classes
    Trees
  17. implicit abstract val AssignOrNamedArgTag: ClassTag[AssignOrNamedArg]

    Definition Classes
    ImplicitTags
  18. implicit abstract val AssignTag: ClassTag[Assign]

    Definition Classes
    ImplicitTags
  19. abstract val Bind: BindExtractor

    The constructor/extractor for Bind instances.

    The constructor/extractor for Bind instances.

    Definition Classes
    Trees
  20. implicit abstract val BindTag: ClassTag[Bind]

    Definition Classes
    ImplicitTags
  21. abstract val Block: BlockExtractor

    The constructor/extractor for Block instances.

    The constructor/extractor for Block instances.

    Definition Classes
    Trees
  22. implicit abstract val BlockTag: ClassTag[Block]

    Definition Classes
    ImplicitTags
  23. abstract val BoundedWildcardType: BoundedWildcardTypeExtractor

    The constructor/extractor for BoundedWildcardType instances.

    The constructor/extractor for BoundedWildcardType instances.

    Definition Classes
    Types
  24. implicit abstract val BoundedWildcardTypeTag: ClassTag[BoundedWildcardType]

    Definition Classes
    ImplicitTags
  25. abstract val CaseDef: CaseDefExtractor

    The constructor/extractor for CaseDef instances.

    The constructor/extractor for CaseDef instances.

    Definition Classes
    Trees
  26. implicit abstract val CaseDefTag: ClassTag[CaseDef]

    Definition Classes
    ImplicitTags
  27. abstract val ClassDef: ClassDefExtractor

    The constructor/extractor for ClassDef instances.

    The constructor/extractor for ClassDef instances.

    Definition Classes
    Trees
  28. implicit abstract val ClassDefTag: ClassTag[ClassDef]

    Definition Classes
    ImplicitTags
  29. abstract val ClassInfoType: ClassInfoTypeExtractor

    The constructor/extractor for ClassInfoType instances.

    The constructor/extractor for ClassInfoType instances.

    Definition Classes
    Types
  30. implicit abstract val ClassInfoTypeTag: ClassTag[ClassInfoType]

    Definition Classes
    ImplicitTags
  31. implicit abstract val ClassSymbolTag: ClassTag[ClassSymbol]

    Definition Classes
    ImplicitTags
  32. implicit abstract val CompoundTypeTag: ClassTag[CompoundType]

    Definition Classes
    ImplicitTags
  33. abstract val CompoundTypeTree: CompoundTypeTreeExtractor

    The constructor/extractor for CompoundTypeTree instances.

    The constructor/extractor for CompoundTypeTree instances.

    Definition Classes
    Trees
  34. implicit abstract val CompoundTypeTreeTag: ClassTag[CompoundTypeTree]

    Definition Classes
    ImplicitTags
  35. abstract val Constant: ConstantExtractor

    The constructor/extractor for Constant instances.

    The constructor/extractor for Constant instances.

    Definition Classes
    Constants
  36. implicit abstract val ConstantTag: ClassTag[Constant]

    Definition Classes
    ImplicitTags
  37. abstract val ConstantType: ConstantTypeExtractor

    The constructor/extractor for ConstantType instances.

    The constructor/extractor for ConstantType instances.

    Definition Classes
    Types
  38. implicit abstract val ConstantTypeTag: ClassTag[ConstantType]

    Definition Classes
    ImplicitTags
  39. abstract val DefDef: DefDefExtractor

    The constructor/extractor for DefDef instances.

    The constructor/extractor for DefDef instances.

    Definition Classes
    Trees
  40. implicit abstract val DefDefTag: ClassTag[DefDef]

    Definition Classes
    ImplicitTags
  41. implicit abstract val DefTreeTag: ClassTag[DefTree]

    Definition Classes
    ImplicitTags
  42. abstract val EmptyTree: Tree

    The empty tree

    The empty tree

    Definition Classes
    Trees
  43. abstract val ExistentialType: ExistentialTypeExtractor

    The constructor/extractor for ExistentialType instances.

    The constructor/extractor for ExistentialType instances.

    Definition Classes
    Types
  44. implicit abstract val ExistentialTypeTag: ClassTag[ExistentialType]

    Definition Classes
    ImplicitTags
  45. abstract val ExistentialTypeTree: ExistentialTypeTreeExtractor

    The constructor/extractor for ExistentialTypeTree instances.

    The constructor/extractor for ExistentialTypeTree instances.

    Definition Classes
    Trees
  46. implicit abstract val ExistentialTypeTreeTag: ClassTag[ExistentialTypeTree]

    Definition Classes
    ImplicitTags
  47. abstract val Flag: FlagValues

    A module that contains all possible values that can constitute flag sets.

    A module that contains all possible values that can constitute flag sets.

    Definition Classes
    FlagSets
  48. implicit abstract val FlagSetTag: ClassTag[FlagSet]

    Definition Classes
    ImplicitTags
  49. implicit abstract val FreeTermSymbolTag: ClassTag[FreeTermSymbol]

    Definition Classes
    ImplicitTags
  50. implicit abstract val FreeTypeSymbolTag: ClassTag[FreeTypeSymbol]

    Definition Classes
    ImplicitTags
  51. abstract val Function: FunctionExtractor

    The constructor/extractor for Function instances.

    The constructor/extractor for Function instances.

    Definition Classes
    Trees
  52. implicit abstract val FunctionTag: ClassTag[Function]

    Definition Classes
    ImplicitTags
  53. implicit abstract val GenericApplyTag: ClassTag[GenericApply]

    Definition Classes
    ImplicitTags
  54. abstract def Ident(sym: Symbol): Ident

    A factory method for Ident nodes.

    A factory method for Ident nodes.

    Definition Classes
    Trees
  55. abstract val Ident: IdentExtractor

    The constructor/extractor for Ident instances.

    The constructor/extractor for Ident instances.

    Definition Classes
    Trees
  56. implicit abstract val IdentTag: ClassTag[Ident]

    Definition Classes
    ImplicitTags
  57. abstract val If: IfExtractor

    The constructor/extractor for If instances.

    The constructor/extractor for If instances.

    Definition Classes
    Trees
  58. implicit abstract val IfTag: ClassTag[If]

    Definition Classes
    ImplicitTags
  59. implicit abstract val ImplDefTag: ClassTag[ImplDef]

    Definition Classes
    ImplicitTags
  60. abstract val Import: ImportExtractor

    The constructor/extractor for Import instances.

    The constructor/extractor for Import instances.

    Definition Classes
    Trees
  61. abstract val ImportSelector: ImportSelectorExtractor

    The constructor/extractor for ImportSelector instances.

    The constructor/extractor for ImportSelector instances.

    Definition Classes
    Trees
  62. implicit abstract val ImportSelectorTag: ClassTag[ImportSelector]

    Definition Classes
    ImplicitTags
  63. implicit abstract val ImportTag: ClassTag[Import]

    Definition Classes
    ImplicitTags
  64. implicit abstract val JavaArgumentTag: ClassTag[JavaArgument]

    Definition Classes
    ImplicitTags
  65. abstract val LabelDef: LabelDefExtractor

    The constructor/extractor for LabelDef instances.

    The constructor/extractor for LabelDef instances.

    Definition Classes
    Trees
  66. implicit abstract val LabelDefTag: ClassTag[LabelDef]

    Definition Classes
    ImplicitTags
  67. abstract val Literal: LiteralExtractor

    The constructor/extractor for Literal instances.

    The constructor/extractor for Literal instances.

    Definition Classes
    Trees
  68. abstract val LiteralArgument: LiteralArgumentExtractor

    The constructor/extractor for LiteralArgument instances.

    The constructor/extractor for LiteralArgument instances.

    Definition Classes
    Annotations
  69. implicit abstract val LiteralArgumentTag: ClassTag[LiteralArgument]

    Definition Classes
    ImplicitTags
  70. implicit abstract val LiteralTag: ClassTag[Literal]

    Definition Classes
    ImplicitTags
  71. abstract val Match: MatchExtractor

    The constructor/extractor for Match instances.

    The constructor/extractor for Match instances.

    Definition Classes
    Trees
  72. implicit abstract val MatchTag: ClassTag[Match]

    Definition Classes
    ImplicitTags
  73. implicit abstract val MemberDefTag: ClassTag[MemberDef]

    Definition Classes
    ImplicitTags
  74. implicit abstract val MemberScopeTag: ClassTag[MemberScope]

    Definition Classes
    ImplicitTags
  75. implicit abstract val MethodSymbolTag: ClassTag[MethodSymbol]

    Definition Classes
    ImplicitTags
  76. abstract val MethodType: MethodTypeExtractor

    The constructor/extractor for MethodType instances.

    The constructor/extractor for MethodType instances.

    Definition Classes
    Types
  77. implicit abstract val MethodTypeTag: ClassTag[MethodType]

    Definition Classes
    ImplicitTags
  78. abstract val Modifiers: ModifiersExtractor

    The constructor/extractor for Modifiers instances.

    The constructor/extractor for Modifiers instances.

    Definition Classes
    Trees
  79. implicit abstract val ModifiersTag: ClassTag[Modifiers]

    Definition Classes
    ImplicitTags
  80. abstract val ModuleDef: ModuleDefExtractor

    The constructor/extractor for ModuleDef instances.

    The constructor/extractor for ModuleDef instances.

    Definition Classes
    Trees
  81. implicit abstract val ModuleDefTag: ClassTag[ModuleDef]

    Definition Classes
    ImplicitTags
  82. implicit abstract val ModuleSymbolTag: ClassTag[ModuleSymbol]

    Definition Classes
    ImplicitTags
  83. implicit abstract val NameTag: ClassTag[Name]

    Definition Classes
    ImplicitTags
  84. implicit abstract val NameTreeTag: ClassTag[NameTree]

    Definition Classes
    ImplicitTags
  85. abstract val NestedArgument: NestedArgumentExtractor

    The constructor/extractor for NestedArgument instances.

    The constructor/extractor for NestedArgument instances.

    Definition Classes
    Annotations
  86. implicit abstract val NestedArgumentTag: ClassTag[NestedArgument]

    Definition Classes
    ImplicitTags
  87. abstract val New: NewExtractor

    The constructor/extractor for New instances.

    The constructor/extractor for New instances.

    Definition Classes
    Trees
  88. implicit abstract val NewTag: ClassTag[New]

    Definition Classes
    ImplicitTags
  89. abstract val NoFlags: FlagSet

    The empty set of flags

    The empty set of flags

    Definition Classes
    FlagSets
  90. abstract val NoPosition: Position

    A special "missing" position.

    A special "missing" position.

    Definition Classes
    Positions
  91. abstract val NoPrefix: Type

    This constant is used as a special value denoting the empty prefix in a path dependent type.

    This constant is used as a special value denoting the empty prefix in a path dependent type. For instance x.type is represented as SingleType(NoPrefix, <x>), where <x> stands for the symbol for x.

    Definition Classes
    Types
  92. abstract val NoSymbol: Symbol

    A special "missing" symbol.

    A special "missing" symbol. Commonly used in the API to denote a default or empty value.

    Definition Classes
    Symbols
  93. abstract val NoType: Type

    This constant is used as a special value that indicates that no meaningful type exists.

    This constant is used as a special value that indicates that no meaningful type exists.

    Definition Classes
    Types
  94. abstract val NullaryMethodType: NullaryMethodTypeExtractor

    The constructor/extractor for NullaryMethodType instances.

    The constructor/extractor for NullaryMethodType instances.

    Definition Classes
    Types
  95. implicit abstract val NullaryMethodTypeTag: ClassTag[NullaryMethodType]

    Definition Classes
    ImplicitTags
  96. abstract val PackageDef: PackageDefExtractor

    The constructor/extractor for PackageDef instances.

    The constructor/extractor for PackageDef instances.

    Definition Classes
    Trees
  97. implicit abstract val PackageDefTag: ClassTag[PackageDef]

    Definition Classes
    ImplicitTags
  98. abstract val PolyType: PolyTypeExtractor

    The constructor/extractor for PolyType instances.

    The constructor/extractor for PolyType instances.

    Definition Classes
    Types
  99. implicit abstract val PolyTypeTag: ClassTag[PolyType]

    Definition Classes
    ImplicitTags
  100. implicit abstract val PositionTag: ClassTag[Position]

    Definition Classes
    ImplicitTags
  101. abstract val RefTree: RefTreeExtractor

    The constructor/extractor for RefTree instances.

    The constructor/extractor for RefTree instances.

    Definition Classes
    Trees
  102. implicit abstract val RefTreeTag: ClassTag[RefTree]

    Definition Classes
    ImplicitTags
  103. abstract val ReferenceToBoxed: ReferenceToBoxedExtractor

    The constructor/extractor for ReferenceToBoxed instances.

    The constructor/extractor for ReferenceToBoxed instances.

    Definition Classes
    Trees
  104. implicit abstract val ReferenceToBoxedTag: ClassTag[ReferenceToBoxed]

    Definition Classes
    ImplicitTags
  105. abstract val RefinedType: RefinedTypeExtractor

    The constructor/extractor for RefinedType instances.

    The constructor/extractor for RefinedType instances.

    Definition Classes
    Types
  106. implicit abstract val RefinedTypeTag: ClassTag[RefinedType]

    Definition Classes
    ImplicitTags
  107. abstract val Return: ReturnExtractor

    The constructor/extractor for Return instances.

    The constructor/extractor for Return instances.

    Definition Classes
    Trees
  108. implicit abstract val ReturnTag: ClassTag[Return]

    Definition Classes
    ImplicitTags
  109. implicit abstract val ScopeTag: ClassTag[Scope]

    Definition Classes
    ImplicitTags
  110. abstract def Select(qualifier: Tree, sym: Symbol): Select

    A factory method for Select nodes.

    A factory method for Select nodes.

    Definition Classes
    Trees
  111. abstract val Select: SelectExtractor

    The constructor/extractor for Select instances.

    The constructor/extractor for Select instances.

    Definition Classes
    Trees
  112. abstract val SelectFromTypeTree: SelectFromTypeTreeExtractor

    The constructor/extractor for SelectFromTypeTree instances.

    The constructor/extractor for SelectFromTypeTree instances.

    Definition Classes
    Trees
  113. implicit abstract val SelectFromTypeTreeTag: ClassTag[SelectFromTypeTree]

    Definition Classes
    ImplicitTags
  114. implicit abstract val SelectTag: ClassTag[Select]

    Definition Classes
    ImplicitTags
  115. abstract val SingleType: SingleTypeExtractor

    The constructor/extractor for SingleType instances.

    The constructor/extractor for SingleType instances.

    Definition Classes
    Types
  116. implicit abstract val SingleTypeTag: ClassTag[SingleType]

    Definition Classes
    ImplicitTags
  117. implicit abstract val SingletonTypeTag: ClassTag[SingletonType]

    Definition Classes
    ImplicitTags
  118. abstract val SingletonTypeTree: SingletonTypeTreeExtractor

    The constructor/extractor for SingletonTypeTree instances.

    The constructor/extractor for SingletonTypeTree instances.

    Definition Classes
    Trees
  119. implicit abstract val SingletonTypeTreeTag: ClassTag[SingletonTypeTree]

    Definition Classes
    ImplicitTags
  120. abstract val Star: StarExtractor

    The constructor/extractor for Star instances.

    The constructor/extractor for Star instances.

    Definition Classes
    Trees
  121. implicit abstract val StarTag: ClassTag[Star]

    Definition Classes
    ImplicitTags
  122. abstract val Super: SuperExtractor

    The constructor/extractor for Super instances.

    The constructor/extractor for Super instances.

    Definition Classes
    Trees
  123. implicit abstract val SuperTag: ClassTag[Super]

    Definition Classes
    ImplicitTags
  124. abstract val SuperType: SuperTypeExtractor

    The constructor/extractor for SuperType instances.

    The constructor/extractor for SuperType instances.

    Definition Classes
    Types
  125. implicit abstract val SuperTypeTag: ClassTag[SuperType]

    Definition Classes
    ImplicitTags
  126. implicit abstract val SymTreeTag: ClassTag[SymTree]

    Definition Classes
    ImplicitTags
  127. implicit abstract val SymbolTag: ClassTag[Symbol]

    Definition Classes
    ImplicitTags
  128. abstract val Template: TemplateExtractor

    The constructor/extractor for Template instances.

    The constructor/extractor for Template instances.

    Definition Classes
    Trees
  129. implicit abstract val TemplateTag: ClassTag[Template]

    Definition Classes
    ImplicitTags
  130. abstract val TermName: TermNameExtractor

    The constructor/extractor for TermName instances.

    The constructor/extractor for TermName instances.

    Definition Classes
    Names
  131. implicit abstract val TermNameTag: ClassTag[TermName]

    Definition Classes
    ImplicitTags
  132. implicit abstract val TermSymbolTag: ClassTag[TermSymbol]

    Definition Classes
    ImplicitTags
  133. implicit abstract val TermTreeTag: ClassTag[TermTree]

    Definition Classes
    ImplicitTags
  134. abstract def This(sym: Symbol): Tree

    A factory method for This nodes.

    A factory method for This nodes.

    Definition Classes
    Trees
  135. abstract val This: ThisExtractor

    The constructor/extractor for This instances.

    The constructor/extractor for This instances.

    Definition Classes
    Trees
  136. implicit abstract val ThisTag: ClassTag[This]

    Definition Classes
    ImplicitTags
  137. abstract val ThisType: ThisTypeExtractor

    The constructor/extractor for ThisType instances.

    The constructor/extractor for ThisType instances.

    Definition Classes
    Types
  138. implicit abstract val ThisTypeTag: ClassTag[ThisType]

    Definition Classes
    ImplicitTags
  139. abstract val Throw: ThrowExtractor

    The constructor/extractor for Throw instances.

    The constructor/extractor for Throw instances.

    Definition Classes
    Trees
  140. implicit abstract val ThrowTag: ClassTag[Throw]

    Definition Classes
    ImplicitTags
  141. implicit abstract val TreeTag: ClassTag[Tree]

    Definition Classes
    ImplicitTags
  142. abstract val Try: TryExtractor

    The constructor/extractor for Try instances.

    The constructor/extractor for Try instances.

    Definition Classes
    Trees
  143. implicit abstract val TryTag: ClassTag[Try]

    Definition Classes
    ImplicitTags
  144. implicit abstract val TypTreeTag: ClassTag[TypTree]

    Definition Classes
    ImplicitTags
  145. abstract val TypeApply: TypeApplyExtractor

    The constructor/extractor for TypeApply instances.

    The constructor/extractor for TypeApply instances.

    Definition Classes
    Trees
  146. implicit abstract val TypeApplyTag: ClassTag[TypeApply]

    Definition Classes
    ImplicitTags
  147. abstract val TypeBounds: TypeBoundsExtractor

    The constructor/extractor for TypeBounds instances.

    The constructor/extractor for TypeBounds instances.

    Definition Classes
    Types
  148. implicit abstract val TypeBoundsTag: ClassTag[TypeBounds]

    Definition Classes
    ImplicitTags
  149. abstract val TypeBoundsTree: TypeBoundsTreeExtractor

    The constructor/extractor for TypeBoundsTree instances.

    The constructor/extractor for TypeBoundsTree instances.

    Definition Classes
    Trees
  150. implicit abstract val TypeBoundsTreeTag: ClassTag[TypeBoundsTree]

    Definition Classes
    ImplicitTags
  151. abstract val TypeDef: TypeDefExtractor

    The constructor/extractor for TypeDef instances.

    The constructor/extractor for TypeDef instances.

    Definition Classes
    Trees
  152. implicit abstract val TypeDefTag: ClassTag[TypeDef]

    Definition Classes
    ImplicitTags
  153. abstract val TypeName: TypeNameExtractor

    The constructor/extractor for TypeName instances.

    The constructor/extractor for TypeName instances.

    Definition Classes
    Names
  154. implicit abstract val TypeNameTag: ClassTag[TypeName]

    Definition Classes
    ImplicitTags
  155. abstract val TypeRef: TypeRefExtractor

    The constructor/extractor for TypeRef instances.

    The constructor/extractor for TypeRef instances.

    Definition Classes
    Types
  156. implicit abstract val TypeRefTag: ClassTag[TypeRef]

    Definition Classes
    ImplicitTags
  157. implicit abstract val TypeSymbolTag: ClassTag[TypeSymbol]

    Definition Classes
    ImplicitTags
  158. implicit abstract val TypeTagg: ClassTag[Type]

    Definition Classes
    ImplicitTags
  159. abstract def TypeTree(tp: Type): TypeTree

    A factory method for TypeTree nodes.

    A factory method for TypeTree nodes.

    Definition Classes
    Trees
  160. abstract val TypeTree: TypeTreeExtractor

    The constructor/extractor for TypeTree instances.

    The constructor/extractor for TypeTree instances.

    Definition Classes
    Trees
  161. implicit abstract val TypeTreeTag: ClassTag[TypeTree]

    Definition Classes
    ImplicitTags
  162. abstract val Typed: TypedExtractor

    The constructor/extractor for Typed instances.

    The constructor/extractor for Typed instances.

    Definition Classes
    Trees
  163. implicit abstract val TypedTag: ClassTag[Typed]

    Definition Classes
    ImplicitTags
  164. abstract val UnApply: UnApplyExtractor

    The constructor/extractor for UnApply instances.

    The constructor/extractor for UnApply instances.

    Definition Classes
    Trees
  165. implicit abstract val UnApplyTag: ClassTag[UnApply]

    Definition Classes
    ImplicitTags
  166. abstract val ValDef: ValDefExtractor

    The constructor/extractor for ValDef instances.

    The constructor/extractor for ValDef instances.

    Definition Classes
    Trees
  167. implicit abstract val ValDefTag: ClassTag[ValDef]

    Definition Classes
    ImplicitTags
  168. implicit abstract val ValOrDefDefTag: ClassTag[ValOrDefDef]

    Definition Classes
    ImplicitTags
  169. abstract val WildcardType: Type

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

    An object representing an unknown type, used during type inference. If you see WildcardType outside of inference it is almost certainly a bug.

    Definition Classes
    Types
  170. implicit abstract def addFlagOps(left: FlagSet): FlagOps

    The API of FlagSet instances.

    The API of FlagSet instances.

    Definition Classes
    FlagSets
  171. abstract def appliedType(tycon: Type, args: List[Type]): Type

    A creator for type applications

    A creator for type applications

    Definition Classes
    Types
  172. abstract def atPos[T <: Tree](pos: Position)(tree: T): T

    Assigns a given position to all position-less nodes of a given AST.

    Assigns a given position to all position-less nodes of a given AST.

    Definition Classes
    Positions
  173. abstract val build: BuildApi

    Definition Classes
    BuildUtils
  174. abstract def captureVariable(vble: Symbol): Unit

    Mark a variable as captured; i.

    Mark a variable as captured; i.e. force boxing in a *Ref type.

  175. abstract def capturedVariableType(vble: Symbol): Type

    Convert type of a captured variable to *Ref type.

  176. abstract val definitions: DefinitionsApi

    A value containing all standard definitions in DefinitionsApi

    A value containing all standard definitions in DefinitionsApi

    Definition Classes
    StandardDefinitions
  177. abstract val emptyValDef: 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.

    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.

    Definition Classes
    Trees
  178. abstract def existentialAbstraction(tparams: List[Symbol], tpe0: Type): Type

    A creator for existential types.

    A creator for existential types. This generates:

    tpe1 where { tparams }

    where tpe1 is the result of extrapolating tpe with regard to tparams. Extrapolating means that type variables in tparams occurring in covariant positions are replaced by upper bounds, (minus any SingletonClass markers), type variables in tparams occurring in contravariant positions are replaced by upper bounds, provided the resulting type is legal with regard to stability, and does not contain any type variable in tparams.

    The abstraction drops all type parameters that are not directly or indirectly referenced by type tpe1. If there are no remaining type parameters, simply returns result type tpe.

    Definition Classes
    Types
  179. abstract def glb(ts: List[Type]): Type

    The greatest lower bound of a list of types, as determined by <:<.

    The greatest lower bound of a list of types, as determined by <:<.

    Definition Classes
    Types
  180. abstract def intersectionType(tps: List[Type], owner: Symbol): Type

    A creator for intersection type where intersections of a single type are replaced by the type itself, and repeated parent classes are merged.

    A creator for intersection type where intersections of a single type are replaced by the type itself, and repeated parent classes are merged.

    !!! Repeated parent classes are not merged - is this a bug in the comment or in the code?

    Definition Classes
    Types
  181. abstract def intersectionType(tps: List[Type]): Type

    A creator for intersection type where intersections of a single type are replaced by the type itself.

    A creator for intersection type where intersections of a single type are replaced by the type itself.

    Definition Classes
    Types
  182. abstract def lub(xs: List[Type]): Type

    The least upper bound of a list of types, as determined by <:<.

    The least upper bound of a list of types, as determined by <:<.

    Definition Classes
    Types
  183. abstract def mkImporter(from0: api.Universe): Importer { val from: from0.type }

    Creates an importer that moves reflection artifacts between universes.

    Creates an importer that moves reflection artifacts between universes.

    Definition Classes
    Importers
  184. abstract def newLazyTreeCopier: TreeCopier

    Creates a lazy tree copier.

    Creates a lazy tree copier.

    Definition Classes
    Trees
  185. abstract def newRawTreePrinter(out: PrintWriter): TreePrinter

    Hook to define what showRaw(...) means.

    Hook to define what showRaw(...) means.

    Attributes
    protected
    Definition Classes
    Printers
  186. abstract def newScopeWith(elems: Symbol*): Scope

    Create a new scope with the given initial elements.

    Create a new scope with the given initial elements.

    Definition Classes
    Scopes
  187. abstract def newStrictTreeCopier: TreeCopier

    Creates a strict tree copier.

    Creates a strict tree copier.

    Definition Classes
    Trees
  188. abstract def newTreePrinter(out: PrintWriter): TreePrinter

    Hook to define what show(...) means.

    Hook to define what show(...) means.

    Attributes
    protected
    Definition Classes
    Printers
  189. abstract val nme: TermNamesApi

    A value containing all standard term names.

    A value containing all standard term names.

    Definition Classes
    StandardNames
  190. abstract val pendingSuperCall: 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.

    Definition Classes
    Trees
  191. abstract def polyType(tparams: List[Symbol], tpe: Type): Type

    A creator for type parameterizations that strips empty type parameter lists.

    A creator for type parameterizations that strips empty type parameter lists. Use this factory method to indicate the type has kind * (it's a polymorphic value) until we start tracking explicit kinds equivalent to typeFun (except that the latter requires tparams nonEmpty).

    Definition Classes
    Types
  192. abstract def referenceCapturedVariable(vble: Symbol): Tree

    Mark given identifier as a reference to a captured variable itself suppressing dereferencing with the elem field.

  193. abstract def refinedType(parents: List[Type], owner: Symbol): Type

    The canonical creator for a refined type with an initially empty scope.

    The canonical creator for a refined type with an initially empty scope.

    Definition Classes
    Types
  194. abstract def refinedType(parents: List[Type], owner: Symbol, decls: Scope, pos: Position): 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
  195. abstract val rootMirror: Mirror

    The root mirror of this universe.

    The root mirror of this universe. This mirror contains standard Scala classes and types such as Any, AnyRef, AnyVal, Nothing, Null, and all classes loaded from scala-library, which are shared across all mirrors within the enclosing universe.

    Definition Classes
    Mirrors
  196. abstract def show(flags: FlagSet): String

    Renders a prettified representation of a flag set.

    Renders a prettified representation of a flag set.

    Definition Classes
    Printers
  197. abstract def show(name: Name): String

    Renders a prettified representation of a name.

    Renders a prettified representation of a name.

    Definition Classes
    Printers
  198. abstract def singleType(pre: Type, sym: Symbol): Type

    The canonical creator for single-types

    The canonical creator for single-types

    Definition Classes
    Types
  199. abstract val tpnme: TypeNamesApi

    A value containing all standard type names.

    A value containing all standard type names.

    Definition Classes
    StandardNames
  200. abstract val treeBuild: TreeBuilder { val global: Universe.this.type }

    A factory that encapsulates common tree-building functions.

  201. abstract def typeRef(pre: Type, sym: Symbol, args: List[Type]): Type

    The canonical creator for typerefs

    The canonical creator for typerefs

    Definition Classes
    Types
  202. abstract def wrappingPos(trees: List[Tree]): Position

    A position that wraps the non-empty set of trees.

    A position that wraps the non-empty set of trees. The point of the wrapping position is the point of the first trees' position. If all some the trees are non-synthetic, returns a range position enclosing the non-synthetic trees Otherwise returns a synthetic offset position to point.

    Definition Classes
    Positions
  203. abstract def wrappingPos(default: Position, trees: List[Tree]): Position

    A position that wraps a set of trees.

    A position that wraps a set of trees. The point of the wrapping position is the point of the default position. If some of the trees are ranges, returns a range position enclosing all ranges Otherwise returns default position.

    Definition Classes
    Positions
  204. abstract def Apply(sym: Symbol, args: Tree*): Tree

    A factory method for Apply nodes.

    A factory method for Apply nodes.

    Definition Classes
    Trees
    Annotations
    @deprecated
    Deprecated

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

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

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

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

    Definition Classes
    Trees
    Annotations
    @deprecated
    Deprecated

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

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

    A factory method for Bind nodes.

    A factory method for Bind nodes.

    Definition Classes
    Trees
    Annotations
    @deprecated
    Deprecated

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

  207. abstract def Block(stats: Tree*): Block

    A factory method for Block nodes.

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

    Definition Classes
    Trees
    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

  208. abstract def CaseDef(pat: Tree, body: Tree): CaseDef

    A factory method for CaseDef nodes.

    A factory method for CaseDef nodes.

    Definition Classes
    Trees
    Annotations
    @deprecated
    Deprecated

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

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

    A factory method for ClassDef nodes.

    A factory method for ClassDef nodes.

    Definition Classes
    Trees
    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

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

    A factory method for ValDef nodes.

    A factory method for ValDef nodes.

    Definition Classes
    Trees
    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

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

    A factory method for ValDef nodes.

    A factory method for ValDef nodes.

    Definition Classes
    Trees
    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

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

    A factory method for ValDef nodes.

    A factory method for ValDef nodes.

    Definition Classes
    Trees
    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

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

    A factory method for ValDef nodes.

    A factory method for ValDef nodes.

    Definition Classes
    Trees
    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

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

    A factory method for ValDef nodes.

    A factory method for ValDef nodes.

    Definition Classes
    Trees
    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

  215. abstract def Ident(name: String): Ident

    A factory method for Ident nodes.

    A factory method for Ident nodes.

    Definition Classes
    Trees
    Annotations
    @deprecated
    Deprecated

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

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

    A factory method for LabelDef nodes.

    A factory method for LabelDef nodes.

    Definition Classes
    Trees
    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

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

    A factory method for ModuleDef nodes.

    A factory method for ModuleDef nodes.

    Definition Classes
    Trees
    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

  218. abstract 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
    Annotations
    @deprecated
    Deprecated

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

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

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

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

    Definition Classes
    Trees
    Annotations
    @deprecated
    Deprecated

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

  220. abstract 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
    Annotations
    @deprecated
    Deprecated

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

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

    A factory method for Select nodes.

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

    Definition Classes
    Trees
    Annotations
    @deprecated
    Deprecated

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

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

    A factory method for Super nodes.

    A factory method for Super nodes.

    Definition Classes
    Trees
    Annotations
    @deprecated
    Deprecated

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

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

    A factory method for Throw nodes.

    A factory method for Throw nodes.

    Definition Classes
    Trees
    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

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

    A factory method for Try nodes.

    A factory method for Try nodes.

    Definition Classes
    Trees
    Annotations
    @deprecated
    Deprecated

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

  225. abstract def TypeDef(sym: Symbol): TypeDef

    A factory method for TypeDef nodes.

    A factory method for TypeDef nodes.

    Definition Classes
    Trees
    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

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

    A factory method for TypeDef nodes.

    A factory method for TypeDef nodes.

    Definition Classes
    Trees
    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

  227. abstract def ValDef(sym: Symbol): ValDef

    A factory method for ValDef nodes.

    A factory method for ValDef nodes.

    Definition Classes
    Trees
    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

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

    A factory method for ValDef nodes.

    A factory method for ValDef nodes.

    Definition Classes
    Trees
    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

  229. abstract def newTermName(s: String): TermName

    Create a new term name.

    Create a new term name.

    Definition Classes
    Names
    Annotations
    @deprecated
    Deprecated

    (Since version 2.11.0) Use TermName instead

  230. abstract def newTypeName(s: String): TypeName

    Creates a new type name.

    Creates a new type name.

    Definition Classes
    Names
    Annotations
    @deprecated
    Deprecated

    (Since version 2.11.0) Use TypeName instead

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 Universe to StringAdd[Universe] performed by method StringAdd in scala.Predef.
    Definition Classes
    StringAdd
  5. def ->[B](y: B): (Universe, B)

    Implicit information
    This member is added by an implicit conversion from Universe to ArrowAssoc[Universe] 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. object BooleanFlag extends Serializable

  9. object Expr extends Serializable

    Constructor/Extractor for Expr.

  10. def Modifiers(flags: FlagSet): Modifiers

    The factory for Modifiers instances.

    The factory for Modifiers instances.

    Definition Classes
    Trees
  11. def Modifiers(flags: FlagSet, privateWithin: Name): Modifiers

    The factory for Modifiers instances.

    The factory for Modifiers instances.

    Definition Classes
    Trees
  12. lazy val NoMods: Modifiers

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

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

    Definition Classes
    Trees
  13. object TypeTag extends Serializable

    Type tags corresponding to primitive types and constructor/extractor for WeakTypeTags.

  14. object WeakTypeTag extends Serializable

    Type tags corresponding to primitive types and constructor/extractor for WeakTypeTags.

  15. final def asInstanceOf[T0]: T0

    Definition Classes
    Any
  16. def clone(): AnyRef

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

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

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

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

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

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

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

    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( classOf[java.lang.Throwable] )
  24. 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 Universe to StringFormat[Universe] performed by method StringFormat in scala.Predef.
    Definition Classes
    StringFormat
    Annotations
    @inline()
  25. final def getClass(): Class[_]

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

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

    Definition Classes
    Any
  28. def itransform(transformer: Transformer, tree: Tree): 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
    Definition Classes
    Trees
  29. def itraverse(traverser: Traverser, tree: 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
    Definition Classes
    Trees
  30. implicit def liftConstant[T <: Constant]: Liftable[T]

    Definition Classes
    StandardLiftables
  31. implicit def liftExpr[T <: Expr[_]]: Liftable[T]

    Definition Classes
    StandardLiftables
  32. implicit def liftType[T <: Type]: Liftable[T]

    Definition Classes
    StandardLiftables
  33. implicit def liftTypeTag[T <: WeakTypeTag[_]]: Liftable[T]

    Definition Classes
    StandardLiftables
  34. def manifestToTypeTag[T](mirror: Any, manifest: Manifest[T]): api.Universe.TypeTag[T]

    Convert a scala.reflect.Manifest to a scala.reflect.api.TypeTags#TypeTag.

    Convert a scala.reflect.Manifest to a scala.reflect.api.TypeTags#TypeTag.

    Compiler usually generates these conversions automatically, when a manifest for a type T is in scope, and an implicit of type TypeTag[T] is requested, but this method can also be called manually. For example:

    manifestToTypeTag(scala.reflect.runtime.currentMirror, implicitly[Manifest[String]])
    Definition Classes
    TagInterop
  35. final def ne(arg0: AnyRef): Boolean

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

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

    Definition Classes
    AnyRef
  38. def reify[T](expr: T): Expr[T]

    Use refiy to produce the abstract syntax tree representing a given Scala expression.

    Use refiy to produce the abstract syntax tree representing a given Scala expression.

    For example:

    val five = reify{ 5 }    // Literal(Constant(5))
    reify{ 2 + 4 }           // Apply( Select( Literal(Constant(2)), newTermName("$plus")), List( Literal(Constant(4)) ) )
    reify{ five.splice + 4 } // Apply( Select( Literal(Constant(5)), newTermName("$plus")), List( Literal(Constant(4)) ) )

    The produced tree is path dependent on the Universe reify was called from.

    Use scala.reflect.api.Exprs#Expr.splice to embed an existing expression into a reify call. Use Expr to turn a Tree into an expression that can be spliced.

    Definition Classes
    Universe
  39. def render(what: Any, mkPrinter: (PrintWriter) ⇒ TreePrinter, printTypes: BooleanFlag = None, printIds: BooleanFlag = None, printKinds: BooleanFlag = None, printMirrors: BooleanFlag = None, printPositions: BooleanFlag = None): String

    Attributes
    protected
    Definition Classes
    Printers
  40. def show(any: Any, printTypes: BooleanFlag = None, printIds: BooleanFlag = None, printKinds: BooleanFlag = None, printMirrors: BooleanFlag = None, printPositions: BooleanFlag = None): String

    Renders a representation of a reflection artifact as desugared Scala code.

    Renders a representation of a reflection artifact as desugared Scala code.

    Definition Classes
    Printers
  41. def showRaw(flags: FlagSet): String

    Renders internal structure of a flag set.

    Renders internal structure of a flag set.

    Definition Classes
    Printers
  42. def showRaw(name: Name): String

    Renders internal structure of a name.

    Renders internal structure of a name.

    Definition Classes
    Printers
  43. def showRaw(any: Any, printTypes: BooleanFlag = None, printIds: BooleanFlag = None, printKinds: BooleanFlag = None, printMirrors: BooleanFlag = None, printPositions: BooleanFlag = None): String

    Renders internal structure of a reflection artifact as the visualization of a Scala syntax tree.

    Renders internal structure of a reflection artifact as the visualization of a Scala syntax tree.

    Definition Classes
    Printers
  44. implicit def stringToTermName(s: String): TermName

    An implicit conversion from String to TermName.

    An implicit conversion from String to TermName. Enables an alternative notation "map": TermName as opposed to newTermName("map").

    Definition Classes
    Names
  45. implicit def stringToTypeName(s: String): TypeName

    An implicit conversion from String to TypeName.

    An implicit conversion from String to TypeName. Enables an alternative notation "List": TypeName as opposed to newTypeName("List").

    Definition Classes
    Names
  46. final def synchronized[T0](arg0: ⇒ T0): T0

    Definition Classes
    AnyRef
  47. def toString(): String

    Definition Classes
    AnyRef → Any
  48. val treeCopy: TreeCopier

    The standard (lazy) tree copier.

    The standard (lazy) tree copier.

    Definition Classes
    Trees
  49. def treeToString(tree: Tree): String

    By default trees are printed with show

    By default trees are printed with show

    Attributes
    protected
    Definition Classes
    Printers
  50. def typeOf[T](implicit ttag: TypeTag[T]): Type

    Shortcut for implicitly[TypeTag[T]].tpe

    Shortcut for implicitly[TypeTag[T]].tpe

    Definition Classes
    TypeTags
  51. def typeTag[T](implicit ttag: TypeTag[T]): TypeTag[T]

    Shortcut for implicitly[TypeTag[T]]

    Shortcut for implicitly[TypeTag[T]]

    Definition Classes
    TypeTags
  52. def typeTagToManifest[T](mirror: Any, tag: api.Universe.TypeTag[T])(implicit arg0: ClassTag[T]): Manifest[T]

    Convert a scala.reflect.api.TypeTags#TypeTag to a scala.reflect.Manifest.

    Convert a scala.reflect.api.TypeTags#TypeTag to a scala.reflect.Manifest.

    Compiler usually generates these conversions automatically, when a type tag for a type T is in scope, and an implicit of type Manifest[T] is requested, but this method can also be called manually. For example:

    typeTagToManifest(scala.reflect.runtime.currentMirror, implicitly[TypeTag[String]])
    Definition Classes
    TagInterop
  53. final def wait(): Unit

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

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

    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  56. def weakTypeOf[T](implicit attag: WeakTypeTag[T]): Type

    Shortcut for implicitly[WeakTypeTag[T]].tpe

    Shortcut for implicitly[WeakTypeTag[T]].tpe

    Definition Classes
    TypeTags
  57. def weakTypeTag[T](implicit attag: WeakTypeTag[T]): WeakTypeTag[T]

    Shortcut for implicitly[WeakTypeTag[T]]

    Shortcut for implicitly[WeakTypeTag[T]]

    Definition Classes
    TypeTags
  58. def xtransform(transformer: Transformer, tree: Tree): 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
    Definition Classes
    Trees
  59. def xtraverse(traverser: Traverser, tree: 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
    Definition Classes
    Trees
  60. def [B](y: B): (Universe, B)

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

Inherited from api.Universe

Inherited from Quasiquotes

Inherited from Importers

Inherited from Printers

Inherited from Mirrors

Inherited from BuildUtils

Inherited from StandardLiftables

Inherited from StandardNames

Inherited from StandardDefinitions

Inherited from ImplicitTags

Inherited from TagInterop

Inherited from TypeTags

Inherited from Exprs

Inherited from Positions

Inherited from Annotations

Inherited from Constants

Inherited from Trees

Inherited from api.Names

Inherited from Scopes

Inherited from FlagSets

Inherited from Types

Inherited from Symbols

Inherited from AnyRef

Inherited from Any

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

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

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

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

Macro Specific Additions

Universe

API

Annotations

Constants

Definitions

Expressions

Extractors

Flags

Importers

Mirrors

Names

Positions

Printers

Scopes

Standard Names

Symbols

TypeTag and Manifest Interoperability

TreeBuilders

Trees

Types - Creation

Types - Operations

TypeTags

Types

Tree Copying

Factories

Tree Traversal and Transformation

Ungrouped