scala.tools.nsc.interactive.RefinedBuildManager

BuilderGlobal

class BuilderGlobal extends Global

Source
RefinedBuildManager.scala
Linear Supertypes
Global, Positions, DocComments, TreePrinters, FreeVars, Trees, PhaseAssembly, Plugins, CompilationUnits, ToolBoxes, ClassLoaders, SymbolTable, SymbolTable, StdAttachments, CapturedVariables, FrontEnds, TreeBuildUtil, Required, Importers, TypeDebugging, Positions, TreePrinters, Trees, AnnotationCheckers, AnnotationInfos, StdNames, Transforms, InfoTransformers, BaseTypeSeqs, Constants, Definitions, Scopes, ExistentialsAndSkolems, Kinds, Types, FreeVars, SymbolFlags, Symbols, SymbolCreations, Names, Collections, Universe, Importers, FrontEnds, ToolBoxes, TreeBuildUtil, ClassLoaders, StandardNames, TreePrinters, TypeTags, StandardDefinitions, StandardTypes, Exprs, Positions, AnnotationInfos, Trees, Names, Scopes, Constants, Types, FreeVars, Symbols, AnyRef, Any
Ordering
  1. Alphabetic
  2. By inheritance
Inherited
  1. BuilderGlobal
  2. Global
  3. Positions
  4. DocComments
  5. TreePrinters
  6. FreeVars
  7. Trees
  8. PhaseAssembly
  9. Plugins
  10. CompilationUnits
  11. ToolBoxes
  12. ClassLoaders
  13. SymbolTable
  14. SymbolTable
  15. StdAttachments
  16. CapturedVariables
  17. FrontEnds
  18. TreeBuildUtil
  19. Required
  20. Importers
  21. TypeDebugging
  22. Positions
  23. TreePrinters
  24. Trees
  25. AnnotationCheckers
  26. AnnotationInfos
  27. StdNames
  28. Transforms
  29. InfoTransformers
  30. BaseTypeSeqs
  31. Constants
  32. Definitions
  33. Scopes
  34. ExistentialsAndSkolems
  35. Kinds
  36. Types
  37. FreeVars
  38. SymbolFlags
  39. Symbols
  40. SymbolCreations
  41. Names
  42. Collections
  43. Universe
  44. Importers
  45. FrontEnds
  46. ToolBoxes
  47. TreeBuildUtil
  48. ClassLoaders
  49. StandardNames
  50. TreePrinters
  51. TypeTags
  52. StandardDefinitions
  53. StandardTypes
  54. Exprs
  55. Positions
  56. AnnotationInfos
  57. Trees
  58. Names
  59. Scopes
  60. Constants
  61. Types
  62. FreeVars
  63. Symbols
  64. AnyRef
  65. Any
Implicitly
  1. by any2stringfmt
  2. by any2stringadd
  3. by any2ArrowAssoc
  4. by any2Ensuring
  1. Hide All
  2. Show all
Learn more about member selection
Visibility
  1. Public
  2. All

Instance Constructors

  1. new BuilderGlobal(settings: Settings)

  2. new BuilderGlobal(settings: Settings, reporter: Reporter)

Type Members

  1. abstract class AbsSymbolImpl extends AbsSymbol

  2. abstract class AbsTypeImpl extends AbsType

  3. type AbstractFileType = AbstractFile

    Definition Classes
    GlobalRequired
  4. trait AbstractTypeRef extends TypeRef with NonClassTypeRef

  5. class AbstractTypeSymbol extends TypeSymbol

  6. trait AliasTypeRef extends TypeRef with NonClassTypeRef

  7. class AliasTypeSymbol extends TypeSymbol

  8. trait AlphaNumName extends Name

    A name that contains no operator chars nor dollar signs.

  9. trait Annotatable[Self] extends AnyRef

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

    A type carrying some annotations.

  11. abstract class AnnotationChecker extends AnyRef

    An additional checker for annotations on types.

  12. trait AnnotationFilter extends TypeMap

  13. sealed abstract class AnnotationInfo extends AnyRef

    Typed information about an annotation.

  14. case class AntiPolyType(pre: Type, targs: List[Type]) extends Type with Product with Serializable

    A class remembering a type instantiation for some a set of overloaded polymorphic symbols.

  15. class AppliedTypeVar extends TypeVar

    Precondition: zipped params/args nonEmpty.

  16. class ArgsTypeRef extends TypeRef with UniqueType

  17. case class ArrayAnnotArg(args: Array[ClassfileAnnotArg]) extends ClassfileAnnotArg with Product with Serializable

    Represents an array of classfile annotation arguments

  18. class AsSeenFromMap extends TypeMap with KeepOnlyTypeConstraints

    A map to compute the asSeenFrom method

  19. class BaseTypeSeq extends AnyRef

    Note: constructor is protected to force everyone to use the factory method newBaseTypeSeq instead.

  20. case class BoundedWildcardType(bounds: TypeBounds) extends Type with Product with Serializable

    BoundedWildcardTypes, used only during type inference, are created in two places that I can find:

  21. case class ChangeAfterPhase[+T](ph: Phase, lost: List[T], gained: List[T]) extends Product with Serializable

  22. class ChangeOwnerTraverser extends Traverser

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

    A class representing a class info

  24. class ClassSymbol extends TypeSymbol with ClassSymbolApi

    A class for class symbols

  25. trait ClassTypeRef extends TypeRef

  26. class ClassUnwrapper extends TypeUnwrapper

  27. abstract class ClassfileAnnotArg extends Product

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

  28. class CollectTypeCollector[T] extends TypeCollector[List[T]]

    A map to implement the collect method.

  29. abstract class CommonNames extends AnyRef

  30. class CommonOwnerMap extends TypeTraverserWithResult[Symbol]

    Attributes
    protected
  31. class CompactTreePrinter extends TreePrinter

    A tree printer which is stingier about vertical whitespace and unnecessary punctuation than the standard one.

  32. class CompilationUnit extends AnyRef

    One unit of compilation that has been submitted to the compiler.

  33. class CompleteAnnotationInfo extends AnnotationInfo

  34. abstract class CompoundType extends Type

    A common base class for intersection types and class types

  35. class ConditionalWarning extends AnyRef

    Collects for certain classes of warnings during this run.

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

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

    A class representing a constant type.

  38. class ContainsCollector extends TypeCollector[Boolean]

    A map to implement the contains method.

  39. class ContainsTypeCollector extends TypeCollector[Boolean]

    A map to implement the contains method.

  40. case class CyclicReference(sym: Symbol, info: Type) extends TypeError with Product with Serializable

    An exception for cyclic references of symbol definitions

  41. case class DeBruijnBinder(pnames: List[Name], ptypes: List[Type], restpe: Type) extends Type with Product with Serializable

    A binder defining data associated with De Bruijn indices.

  42. case class DeBruijnIndex(level: Int, idx: Int, args: List[Type]) extends Type with Product with Serializable

    A De Bruijn index referring to a previous type argument.

  43. class DefaultPosAssigner extends Traverser with PosAssigner

    Attributes
    protected
  44. abstract class DefinitionsClass extends AbsDefinitions with ValueClassDefinitions

  45. class DependencyGraph extends AnyRef

    Aux datastructure for solving the constraint system The depency graph container with helper methods for node and edge creation

  46. trait DistinguishingFlag extends SymbolFlagLogic

    A distinguishing flag is one which the mixing class must always have, and which no other symbol class is allowed to have.

  47. case class DocComment(raw: String, pos: Position) extends Product with Serializable

  48. case class DocDef(comment: DocComment, definition: Tree) extends Tree with Product with Serializable

    Documented definition, eliminated by analyzer

  49. abstract case class ErasedValueType(sym: Symbol) extends Type with Product with Serializable

  50. class ErrorScope extends Scope

    The error scope.

  51. class ExistentialExtrapolation extends TypeMap with VariantTypeMap

    Used by existentialAbstraction.

  52. case class ExistentialType(quantified: List[Symbol], underlying: Type) extends Type with RewrappingTypeProxy with Product with Serializable

    Definition Classes
    Types → Types
  53. class ExpansionLimitExceeded extends Exception

  54. class FilterTypeCollector extends TypeCollector[List[Type]]

    A map to implement the filter method.

  55. class FindTypeCollector extends TypeCollector[Option[Type]]

    A map to implement the filter method.

  56. trait FlagVerifier extends Symbol

    Not mixed in under normal conditions; a powerful debugging aid.

  57. class ForEachTypeTraverser extends TypeTraverser

  58. class ForeachPartialTreeTraverser extends Traverser

  59. trait FreeSymbol extends Symbol

  60. class FreeTerm extends TermSymbol with FreeSymbol

  61. class FreeType extends TypeSkolem with FreeSymbol

  62. abstract class FrontEndToReporterProxy extends AbstractReporter

  63. abstract class GlobalPhase extends Phase

  64. class HKTypeVar extends TypeVar

    Precondition: params.

  65. trait ImplClassSymbol extends ClassSymbol

  66. abstract class InfoTransformer extends AnyRef

  67. case class InjectDerivedValue(arg: Tree) extends Tree with SymTree with Product with Serializable

    Derived value class injection (equivalent to: new C(arg) after easure); only used during erasure The class C is stored as the symbol of the tree node.

  68. class InstantiateDependentMap extends TypeMap with KeepOnlyTypeConstraints

  69. case class InvalidCompanions(sym1: Symbol, sym2: Symbol) extends Throwable with Product with Serializable

  70. class JavaKeywords extends AnyRef

  71. class JavaMethodType extends MethodType

  72. trait KeepOnlyTypeConstraints extends TypeMap with AnnotationFilter

  73. abstract class Keywords extends CommonNames

    This should be the first trait in the linearization.

  74. case class KindErrors(arity: List[(Symbol, Symbol)], variance: List[(Symbol, Symbol)], strictness: List[(Symbol, Symbol)]) extends Product with Serializable

  75. final class LazyAnnotationInfo extends AnnotationInfo

    Symbol annotations parsed in Namer (typeCompleter of definitions) have to be lazy (#1782)

  76. abstract class LazyPolyType extends LazyType

  77. class LazyTreeCopier extends LazyTreeCopier with TreeCopier

    Definition Classes
    Trees → Trees
  78. abstract class LazyType extends Type

    A class representing an as-yet unevaluated type.

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

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

  80. class MalformedType extends TypeError

    A throwable signalling a malformed type

  81. class MappedBaseTypeSeq extends BaseTypeSeq

  82. class MethodSymbol extends TermSymbol with DistinguishingFlag with MethodSymbolApi

    A class for method symbols

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

    A class representing a method type with parameters.

  84. class MissingAliasControl extends Throwable with ControlThrowable

  85. class MissingTypeControl extends Throwable with ControlThrowable

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

  87. class ModuleClassSymbol extends ClassSymbol with DistinguishingFlag

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

  88. class ModuleSymbol extends TermSymbol with DistinguishingFlag with ModuleSymbolApi

    A class for module symbols

  89. class ModuleTypeRef extends NoArgsTypeRef with ClassTypeRef

  90. sealed abstract class Name extends AbsName with (Int) ⇒ Char

    The name class.

  91. case class NamedType(name: Name, tp: Type) extends Type with Product with Serializable

    A class representing types with a name.

  92. case class NestedAnnotArg(annInfo: AnnotationInfo) extends ClassfileAnnotArg with Product with Serializable

    Represents a nested classfile annotation

  93. class NoArgsTypeRef extends TypeRef with UniqueType

  94. class NoCommonType extends Throwable with ControlThrowable

  95. class NoSymbol extends Symbol

    An object representing a missing symbol

  96. trait NonClassTypeRef extends TypeRef

  97. case class NotNullType(underlying: Type) extends SubType with RewrappingTypeProxy with Product with Serializable

  98. case class NullaryMethodType(resultType: Type) extends Type with Product with Serializable

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

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

  100. class PackageClassInfoType extends ClassInfoType

  101. class PackageClassSymbol extends ModuleClassSymbol with DistinguishingFlag

  102. class PackageObjectClassSymbol extends ModuleClassSymbol

  103. class PackageSymbol extends ModuleSymbol with DistinguishingFlag with PackageSymbolApi

    Definition Classes
    Symbols → Symbols
  104. class PackageTypeRef extends ModuleTypeRef

  105. case class Parens(args: List[Tree]) extends Tree with Product with Serializable

    Only used during parsing

  106. type Period = Int

    A period is an ordinal number for a phase in a run.

    A period is an ordinal number for a phase in a run. Phases in later runs have higher periods than phases in earlier runs. Later phases have higher periods than earlier phases in the same run.

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

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

  108. trait PosAssigner extends Traverser

  109. type Position = Position

    Definition Classes
    Positions → Positions
  110. class PostfixSelect extends Select

  111. case class RecoverableCyclicReference(sym: Symbol) extends TypeError with Product with Serializable

    An exception for cyclic references from which we can recover

  112. case class RefinedType(parents: List[Type], decls: Scope) extends CompoundType with Product with Serializable

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

  113. final class RefinedType0 extends RefinedType

  114. class RefinementClassSymbol extends ClassSymbol

  115. class RefinementTypeRef extends NoArgsTypeRef with ClassTypeRef

  116. case class ReifyAttachment(original: Symbol) extends Product with Serializable

  117. class ReporterToFrontEndProxy extends FrontEnd

  118. trait RewrappingTypeProxy extends Type with SimpleTypeProxy

    A proxy for a type (identified by field underlying) that forwards most operations to it.

  119. class Run extends AnyRef

    A Run is a single execution of the compiler on a sets of units

  120. type RunId = Int

    An ordinal number for compiler runs.

    An ordinal number for compiler runs. First run has number 1.

    Definition Classes
    SymbolTable
  121. class SafeTreePrinter extends TreePrinter

    This must guarantee not to force any evaluation, so we can learn a little bit about trees in the midst of compilation without altering the natural course of events.

  122. case class ScalaSigBytes(bytes: Array[Byte]) extends ClassfileAnnotArg with Product with Serializable

    A specific annotation argument that encodes an array of bytes as an array of Long.

  123. class Scope extends Iterable[Symbol]

    Note: constructor is protected to force everyone to use the factory methods newScope or newNestedScope instead.

  124. class ScopeEntry extends AnyRef

  125. case class SelectFromArray(qualifier: Tree, name: Name, erasure: Type) extends Tree with TermTree with RefTree with Product with Serializable

    Array selection <qualifier> .

  126. trait SimpleTypeProxy extends Type

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

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

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

  128. abstract class SingletonType extends SubType with SimpleTypeProxy

    A base class for types that represent a single value (single-types and this-types).

  129. abstract class StandardImporter extends Importer

  130. class StrictTreeCopier extends StrictTreeCopier with TreeCopier

    Definition Classes
    Trees → Trees
  131. abstract class SubType extends Type

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

  132. class SubTypePair extends AnyRef

  133. abstract class SubstMap[T] extends TypeMap

    A base class to compute all substitutions

  134. class SubstSymMap extends SubstMap[Symbol]

    A map to implement the substSym method.

  135. class SubstThisAndSymMap extends SubstSymMap

  136. class SubstThisMap extends TypeMap

    A map to implement the substThis method.

  137. class SubstTypeMap extends SubstMap[Type]

    A map to implement the subst method.

  138. class SubstWildcardMap extends TypeMap

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

    Definition Classes
    Types → Types
  140. abstract class SymLoader extends LazyType

  141. abstract class Symbol extends AbsSymbolImpl with HasFlags with SymbolFlagLogic with SymbolCreator with Annotatable[Symbol]

    The class for all symbols

  142. trait SymbolCreator extends SymbolCreatorInterface

  143. trait SymbolCreatorInterface extends AnyRef

    Symbol creation interface, possibly better moved somewhere else.

  144. trait SymbolFlagLogic extends AnyRef

  145. abstract class SymbolNames extends AnyRef

  146. sealed abstract class TermName extends Name

    Definition Classes
    Names → Names
  147. abstract class TermNames extends Keywords

  148. class TermSymbol extends Symbol with TermSymbolApi

    A class for term symbols

  149. type ThisPlatform = Platform { val global: BuilderGlobal.this.type }

    Definition Classes
    Global
  150. class ThisSubstituter extends Transformer

    Substitute clazz.

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

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

  152. class ToolBox extends AbsToolBox

  153. class Transformer extends Transformer

    Definition Classes
    Trees → Trees
  154. trait TreeCopier extends TreeCopierOps

    Definition Classes
    Trees → Trees
  155. type TreeGen = TreeGen

    Generate ASTs

    Generate ASTs

    Definition Classes
    Global → TreeBuildUtil
  156. class TreeMatchTemplate extends AnyRef

  157. implicit class TreeOps extends AnyRef

  158. class TreePrinter extends TreePrinter

    Definition Classes
    TreePrintersTreePrinters → TreePrinters
  159. class TreeSubstituter extends Transformer

  160. class TreeSymSubstTraverser extends TypeMapTreeSubstituter

  161. class TreeSymSubstituter extends Transformer

    Substitute symbols in from with symbols in to.

  162. class TreeTypeSubstituter extends TypeMapTreeSubstituter

  163. abstract class Type extends AbsTypeImpl with Annotatable[Type]

    The base class for all types

  164. abstract case class TypeBounds(lo: Type, hi: Type) extends SubType with Product with Serializable

    A class for the bounds of abstract types and type parameters

  165. abstract class TypeCollector[T] extends TypeTraverser

  166. class TypeConstraint extends AnyRef

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

  167. class TypeError extends Throwable

    A throwable signalling a type error

  168. abstract class TypeMap extends (Type) ⇒ Type

    A prototype for mapping a function over all possible types

  169. class TypeMapTreeSubstituter extends Traverser

  170. sealed abstract class TypeName extends Name

    Definition Classes
    Names → Names
  171. abstract class TypeNames extends Keywords

  172. abstract case class TypeRef(pre: Type, sym: Symbol, args: List[Type]) extends Type with Product with Serializable

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

  173. class TypeSkolem extends TypeSymbol

    A class for type parameters viewed from inside their scopes

  174. abstract class TypeSymbol extends Symbol with TypeSymbolApi

    A class of type symbols.

  175. abstract class TypeTraverser extends TypeMap

  176. abstract class TypeTraverserWithResult[T] extends TypeTraverser

  177. case class TypeTreeWithDeferredRefCheck(check: () ⇒ TypeTree) extends Tree with TypTree with Product with Serializable

    emitted by typer, eliminated by refchecks

  178. class TypeUnwrapper extends (Type) ⇒ Type

  179. class TypeVar extends Type

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

  180. class UndoLog extends AnyRef

  181. final class UniqueConstantType extends ConstantType with UniqueType

  182. final class UniqueErasedValueType extends ErasedValueType with UniqueType

  183. final class UniqueSingleType extends SingleType with UniqueType

  184. final class UniqueSuperType extends SuperType with UniqueType

  185. final class UniqueThisType extends ThisType with UniqueType

  186. trait UniqueType extends Product

  187. final class UniqueTypeBounds extends TypeBounds with UniqueType

  188. trait UntouchableTypeVar extends TypeVar

  189. case class UseCase(comment: DocComment, body: String, pos: Position) extends Product with Serializable

  190. class ValidatingPosAssigner extends Traverser with PosAssigner

  191. trait ValueClassDefinitions extends AnyRef

  192. trait VariantTypeMap extends TypeMap

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

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

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

    Definition Classes
    Any
  8. def AllDistinguishingFlags: Long

    Flags which should always be present on a particular class of Symbol, and never be present on any others.

    Flags which should always be present on a particular class of Symbol, and never be present on any others.

    Definition Classes
    SymbolFlags
  9. object AnnotatedType extends AnnotatedTypeExtractor with Serializable

    Definition Classes
    Types → Types
  10. object AnnotationInfo extends AnnotationInfoExtractor

    Definition Classes
    AnnotationInfos → AnnotationInfos
  11. lazy val AnyRefTpe: Type

    Definition Classes
    Definitions → StandardTypes
  12. lazy val AnyTpe: Type

    Definition Classes
    Definitions → StandardTypes
  13. lazy val AnyValTpe: Type

    Definition Classes
    Definitions → StandardTypes
  14. def Apply(sym: Symbol, args: Tree*): Tree

    Definition Classes
    Trees → Trees
  15. object ApproximateDependentMap extends TypeMap

  16. object ArrayAnnotArg extends ArrayAnnotArgExtractor with Serializable

    Definition Classes
    AnnotationInfos → AnnotationInfos
  17. def Bind(sym: Symbol, body: Tree): Bind

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

    Block factory that flattens directly nested blocks.

    Block factory that flattens directly nested blocks.

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

    Definition Classes
    Constants
  20. lazy val BooleanTpe: Type

    Definition Classes
    Definitions → StandardTypes
  21. object BoundedWildcardType extends BoundedWildcardTypeExtractor with Serializable

    Definition Classes
    Types → Types
  22. final val ByteTag: Int(3)

    Definition Classes
    Constants
  23. lazy val ByteTpe: Type

    Definition Classes
    Definitions → StandardTypes
  24. def CaseDef(pat: Tree, body: Tree): CaseDef

    casedef shorthand

    casedef shorthand

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

    Definition Classes
    Constants
  26. lazy val CharTpe: Type

    Definition Classes
    Definitions → StandardTypes
  27. def ClassDef(sym: Symbol, constrMods: Modifiers, vparamss: List[List[ValDef]], argss: List[List[Tree]], body: List[Tree], superPos: Position): ClassDef

    Construct class definition with given class symbol, value parameters, supercall arguments and template body.

    Construct class definition with given class symbol, value parameters, supercall arguments and template body.

    sym

    the class symbol

    constrMods

    the modifiers for the class constructor, i.e. as in class C private (...)

    vparamss

    the value parameters -- if they have symbols they should be owned by sym

    argss

    the supercall arguments

    body

    the template statements without primary constructor and value parameter fields.

    Definition Classes
    Trees
  28. def ClassDef(sym: Symbol, impl: Template): ClassDef

    sym

    the class symbol

    returns

    the implementation template

    Definition Classes
    Trees → Trees
  29. object ClassInfoType extends ClassInfoTypeExtractor with Serializable

    Definition Classes
    Types → Types
  30. final val ClazzTag: Int(12)

    Definition Classes
    Constants
  31. object ConsoleWriter extends Writer

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

  32. object Constant extends ConstantExtractor with Serializable

    Definition Classes
    Constants → Constants
  33. object ConstantType extends ConstantTypeExtractor with Serializable

    Definition Classes
    Types → Types
  34. val CyclicInheritance: Throwable

    Definition Classes
    BaseTypeSeqs
  35. def DefDef(sym: Symbol, rhs: (List[List[Symbol]]) ⇒ Tree): DefDef

    Definition Classes
    Trees → Trees
  36. def DefDef(sym: Symbol, rhs: Tree): DefDef

    Definition Classes
    Trees → Trees
  37. def DefDef(sym: Symbol, mods: Modifiers, rhs: Tree): DefDef

    Definition Classes
    Trees → Trees
  38. def DefDef(sym: Symbol, vparamss: List[List[ValDef]], rhs: Tree): DefDef

    Definition Classes
    Trees → Trees
  39. def DefDef(sym: Symbol, mods: Modifiers, vparamss: List[List[ValDef]], rhs: Tree): DefDef

    Definition Classes
    Trees → Trees
  40. final val DoubleTag: Int(9)

    Definition Classes
    Constants
  41. lazy val DoubleTpe: Type

    Definition Classes
    Definitions → StandardTypes
  42. object EmptyScope extends Scope

    The empty scope (immutable).

  43. def EmptyTermName: TermName

    Definition Classes
    Names
  44. lazy val EmptyTreeTypeSubstituter: TreeTypeSubstituter

    Definition Classes
    Trees
  45. def EmptyTypeName: TypeName

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

    Definition Classes
    Constants
  47. object ErasedValueType extends Serializable

  48. object ErroneousCollector extends TypeCollector[Boolean]

    A map to implement the contains method.

  49. object ErrorType extends Type with Product with Serializable

    An object representing an erroneous type

  50. object ExistentialType extends ExistentialTypeExtractor with Serializable

    Definition Classes
    Types → Types
  51. final val FloatTag: Int(8)

    Definition Classes
    Constants
  52. lazy val FloatTpe: Type

    Definition Classes
    Definitions → StandardTypes
  53. object FreeTerm extends FreeTermExtractor

    Definition Classes
    FreeVars → FreeVars
  54. object FreeType extends FreeTypeExtractor

    Definition Classes
    FreeVars → FreeVars
  55. object GenPolyType extends AnyRef

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

  56. val GlbFailure: Throwable

    Definition Classes
    Types
  57. object HasTypeMember extends AnyRef

  58. object HasTypeParams extends AnyRef

  59. def Ident(sym: Symbol): Ident

    Definition Classes
    Trees → Trees
  60. def Ident(name: String): Ident

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

    Definition Classes
    Constants
  62. lazy val IntTpe: Type

    Definition Classes
    Definitions → StandardTypes
  63. object IsDependentCollector extends TypeCollector[Boolean]

  64. def JavaMethodType(params: List[Symbol], resultType: Type): JavaMethodType

    The canonical creator for implicit method types

    The canonical creator for implicit method types

    Definition Classes
    Types
  65. def LabelDef(sym: Symbol, params: List[Symbol], rhs: Tree): LabelDef

    Definition Classes
    Trees → Trees
  66. object LiteralAnnotArg extends LiteralAnnotArgExtractor with Serializable

    Definition Classes
    AnnotationInfos → AnnotationInfos
  67. final val LongTag: Int(7)

    Definition Classes
    Constants
  68. lazy val LongTpe: Type

    Definition Classes
    Definitions → StandardTypes
  69. final val LubGlbMargin: Int(0)

    Definition Classes
    Types
  70. val MaxPhases: Int

    Definition Classes
    Global
  71. object MethodType extends MethodTypeExtractor with Serializable

    Definition Classes
    Types → Types
  72. def Modifiers(mods: Set[Modifier], privateWithin: Name, annotations: List[Tree]): Modifiers

    Definition Classes
    Trees → Trees
  73. def Modifiers(flags: Long): Modifiers

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

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

    sym

    the class symbol

    impl

    the implementation template

    Definition Classes
    Trees → Trees
  76. object NestedAnnotArg extends NestedAnnotArgExtractor with Serializable

    Definition Classes
    AnnotationInfos → AnnotationInfos
  77. def New(sym: Symbol, args: Tree*): Tree

    Definition Classes
    Trees → Trees
  78. 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 → Trees
  79. 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 → Trees
  80. object NoCompilationUnit extends CompilationUnit

    An object representing a missing compilation unit.

  81. val NoKindErrors: KindErrors

    Definition Classes
    Kinds
  82. lazy val NoMods: Modifiers

    Definition Classes
    Trees → Trees
  83. final val NoPeriod: Int(0)

    Definition Classes
    SymbolTable
  84. val NoPosition: tools.nsc.util.NoPosition.type

    Definition Classes
    Positions → Positions
  85. object NoPrefix extends Type with Product with Serializable

    An object representing a non-existing prefix

  86. final val NoRunId: Int(0)

    Definition Classes
    SymbolTable
  87. lazy val NoSymbol: NoSymbol

    Definition Classes
    Symbols → Symbols
  88. final val NoTag: Int(0)

    Definition Classes
    Constants
  89. object NoType extends Type with Product with Serializable

    An object representing a non-existing type

  90. lazy val NothingTpe: Type

    Definition Classes
    Definitions → StandardTypes
  91. final val NullTag: Int(11)

    Definition Classes
    Constants
  92. lazy val NullTpe: Type

    Definition Classes
    Definitions → StandardTypes
  93. object NullaryMethodType extends NullaryMethodTypeExtractor with Serializable

    Definition Classes
    Types → Types
  94. lazy val ObjectTpe: Type

    Definition Classes
    Definitions → StandardTypes
  95. object PolyType extends PolyTypeExtractor with Serializable

    Definition Classes
    Types → Types
  96. object RefinedType extends RefinedTypeExtractor with Serializable

    Definition Classes
    Types → Types
  97. object Scope extends AnyRef

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

    Definition Classes
    Trees → Trees
  99. def Select(qualifier: Tree, name: String): Select

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

    Definition Classes
    Constants
  101. lazy val ShortTpe: Type

    Definition Classes
    Definitions → StandardTypes
  102. object SingleType extends SingleTypeExtractor with Serializable

    Definition Classes
    Types → Types
  103. final val StringTag: Int(10)

    Definition Classes
    Constants
  104. lazy val StringTpe: Type

    Definition Classes
    Definitions → StandardTypes
  105. object StripAnnotationsMap extends TypeMap

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

    Definition Classes
    Trees → Trees
  107. object SuperType extends SuperTypeExtractor with Serializable

    Definition Classes
    Types → Types
  108. def Template(parents: List[Tree], self: ValDef, constrMods: Modifiers, vparamss: List[List[ValDef]], argss: List[List[Tree]], body: List[Tree], superPos: Position): Template

    Generates a template with constructor corresponding to

    Generates a template with constructor corresponding to

    constrmods (vparams1_) ... (vparams_n) preSuper { presupers } extends superclass(args_1) ... (args_n) with mixins { self => body }

    This gets translated to

    extends superclass with mixins { self => presupers' // presupers without rhs vparamss // abstract fields corresponding to value parameters def <init>(vparamss) { presupers super.<init>(args) } body }

    Definition Classes
    Trees
  109. def This(sym: Symbol): Tree

    Definition Classes
    Trees → Trees
  110. object ThisType extends ThisTypeExtractor with Serializable

    Definition Classes
    Types → Types
  111. def Throw(tpe: Type, args: Tree*): Throw

    Definition Classes
    Trees → Trees
  112. def Try(body: Tree, cases: (Tree, Tree)*): Try

    Definition Classes
    Trees → Trees
  113. object TypeBounds extends TypeBoundsExtractor with Serializable

    Definition Classes
    Types → Types
  114. def TypeDef(sym: Symbol): TypeDef

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

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

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

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

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

    Definition Classes
    Trees → Trees
  116. object TypeRef extends TypeRefExtractor with Serializable

    Definition Classes
    Types → Types
  117. def TypeTree(tp: Type): TypeTree

    Definition Classes
    Trees
  118. object TypeVar extends AnyRef

  119. final val UnitTag: Int(1)

    Definition Classes
    Constants
  120. lazy val UnitTpe: Type

    Definition Classes
    Definitions → StandardTypes
  121. object UnmappableAnnotation extends CompleteAnnotationInfo

  122. object UnmappableTree extends Tree with TermTree with Product with Serializable

  123. def ValDef(sym: Symbol): ValDef

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

    Definition Classes
    Trees → Trees
  125. object WildcardType extends Type with Product with Serializable

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

  126. lazy val _classpath: JavaClassPath

  127. def abort(msg: String): Nothing

    Definition Classes
    GlobalSymbolTable
  128. def abstractTypesToBounds(tp: Type): Type

    Type with all top-level occurrences of abstract types replaced by their bounds

    Type with all top-level occurrences of abstract types replaced by their bounds

    Definition Classes
    Types
  129. def adaptAnnotations(tree: Tree, mode: Int, pt: Type): Tree

    Let registered annotation checkers adapt a tree to a given type (called by Typers.

    Let registered annotation checkers adapt a tree to a given type (called by Typers.adapt). Annotation checkers that cannot do the adaption should pass the tree through unchanged.

    Definition Classes
    AnnotationCheckers
  130. def adaptBoundsToAnnotations(bounds: List[TypeBounds], tparams: List[Symbol], targs: List[Type]): List[TypeBounds]

    Refine the bounds on type parameters to the given type arguments.

    Refine the bounds on type parameters to the given type arguments.

    Definition Classes
    AnnotationCheckers
  131. object adaptToNewRunMap extends TypeMap

  132. def addAnnotationChecker(checker: AnnotationChecker): Unit

    Register an annotation checker.

    Register an annotation checker. Typically these are added by compiler plugins.

    Definition Classes
    AnnotationCheckers
  133. def addAnnotations(tree: Tree, tpe: Type): Type

    Let all annotations checkers add extra annotations to this tree's type.

    Let all annotations checkers add extra annotations to this tree's type.

    Definition Classes
    AnnotationCheckers
  134. def addMember(thistp: Type, tp: Type, sym: Symbol): Unit

    Make symbol sym a member of scope tp.decls where thistp is the narrowed owner type of the scope.

    Make symbol sym a member of scope tp.decls where thistp is the narrowed owner type of the scope.

    Definition Classes
    Types
  135. def addToPhasesSet(sub: SubComponent, descr: String): Unit

    Attributes
    protected
    Definition Classes
    Global
  136. final def afterCurrentPhase[T](op: ⇒ T): T

    Definition Classes
    SymbolTable
    Annotations
    @inline()
  137. def afterEachPhase[T](op: ⇒ T): List[(Phase, T)]

    Returns List of (phase, value) pairs, including only those where the value compares unequal to the previous phase's value.

    Returns List of (phase, value) pairs, including only those where the value compares unequal to the previous phase's value.

    Definition Classes
    Global
  138. final def afterErasure[T](op: ⇒ T): T

    Definition Classes
    Global
    Annotations
    @inline()
  139. final def afterExplicitOuter[T](op: ⇒ T): T

    Definition Classes
    Global
    Annotations
    @inline()
  140. final def afterFlatten[T](op: ⇒ T): T

    Definition Classes
    Global
    Annotations
    @inline()
  141. final def afterIcode[T](op: ⇒ T): T

    Definition Classes
    Global
    Annotations
    @inline()
  142. final def afterMixin[T](op: ⇒ T): T

    Definition Classes
    Global
    Annotations
    @inline()
  143. final def afterPhase[T](ph: Phase)(op: ⇒ T): T

    Definition Classes
    SymbolTable
    Annotations
    @inline()
  144. final def afterPickler[T](op: ⇒ T): T

    Definition Classes
    Global
    Annotations
    @inline()
  145. final def afterRefchecks[T](op: ⇒ T): T

    Definition Classes
    Global
    Annotations
    @inline()
  146. final def afterSpecialize[T](op: ⇒ T): T

    Definition Classes
    Global
    Annotations
    @inline()
  147. final def afterTyper[T](op: ⇒ T): T

    Definition Classes
    Global
    Annotations
    @inline()
  148. final def afterUncurry[T](op: ⇒ T): T

    Definition Classes
    Global
    Annotations
    @inline()
  149. object analysis extends TypeFlowAnalysis

    ICode analysis for optimization

  150. lazy val analyzer: Analyzer { val global: BuilderGlobal.this.type }

    Definition Classes
    Global
  151. def annotatedType(annots: List[AnnotationInfo], underlying: Type, selfsym: Symbol = NoSymbol): Type

    Creator for AnnotatedTypes.

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

    Definition Classes
    Types
  152. def annotationsConform(tp1: Type, tp2: Type): Boolean

    Check that the annotations on two types conform.

    Check that the annotations on two types conform. To do so, consult all registered annotation checkers.

    Definition Classes
    AnnotationCheckers
  153. def annotationsGlb(tpe: Type, ts: List[Type]): Type

    Refine the computed greatest lower bound of a list of types.

    Refine the computed greatest lower bound of a list of types. All this should do is add annotations.

    Definition Classes
    AnnotationCheckers
  154. def annotationsLub(tpe: Type, ts: List[Type]): Type

    Refine the computed least upper bound of a list of types.

    Refine the computed least upper bound of a list of types. All this should do is add annotations.

    Definition Classes
    AnnotationCheckers
  155. def appliedType(tyconSym: Symbol, args: Type*): Type

    Very convenient.

    Very convenient.

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

    A creator for type applications

    A creator for type applications

    Definition Classes
    Types → Types
  157. def appliedTypeAsUpperBounds(tycon: Type, args: List[Type]): Type

    A creator for existential types where the type arguments, rather than being applied directly, are interpreted as the upper bounds of unknown types.

    A creator for existential types where the type arguments, rather than being applied directly, are interpreted as the upper bounds of unknown types. For instance if the type argument list given is List(AnyRefClass), the resulting type would be e.g. Set[_ <: AnyRef] rather than Set[AnyRef] .

    Definition Classes
    Types
  158. def arrayToRepeated(tp: Type): Type

    Convert array parameters denoting a repeated parameter of a Java method to JavaRepeatedParamClass types.

    Convert array parameters denoting a repeated parameter of a Java method to JavaRepeatedParamClass types.

    Definition Classes
    SymbolTable
  159. def asCompactString(t: Tree): String

    Definition Classes
    TreePrinters
  160. final def asInstanceOf[T0]: T0

    Definition Classes
    Any
  161. def asString(t: Tree): String

    Definition Classes
    TreePrinters
  162. final def assert(assertion: Boolean): Unit

    Definition Classes
    Global
    Annotations
    @inline()
  163. final def assert(assertion: Boolean, message: ⇒ Any): Unit

    Definition Classes
    Global
    Annotations
    @inline()
  164. final def atPhase[T](ph: Phase)(op: ⇒ T): T

    Perform given operation at given phase.

    Perform given operation at given phase.

    Definition Classes
    SymbolTable
    Annotations
    @inline()
  165. final def atPhaseNotLaterThan[T](target: Phase)(op: ⇒ T): T

    Definition Classes
    SymbolTable
    Annotations
    @inline()
  166. final def atPhaseStack: List[Phase]

    Definition Classes
    SymbolTable
  167. def atPhaseStackMessage: String

    Definition Classes
    SymbolTable
  168. def atPos[T <: Tree](pos: Position)(tree: T): T

    Definition Classes
    Positions → Positions
  169. def backquotedPath(t: Tree): String

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

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

    Definition Classes
    TreePrinters
  170. def baseTypeOfNonClassTypeRef(tpe: NonClassTypeRef, clazz: Symbol): Type

    Attributes
    protected
    Definition Classes
    Types
  171. def baseTypeSingletonSeq(tp: Type): BaseTypeSeq

    Create a base type sequence consisting of a single type

    Create a base type sequence consisting of a single type

    Definition Classes
    BaseTypeSeqs
  172. final def beforeErasure[T](op: ⇒ T): T

    Definition Classes
    Global
    Annotations
    @inline()
  173. final def beforeExplicitOuter[T](op: ⇒ T): T

    Definition Classes
    Global
    Annotations
    @inline()
  174. final def beforeFlatten[T](op: ⇒ T): T

    Definition Classes
    Global
    Annotations
    @inline()
  175. final def beforeIcode[T](op: ⇒ T): T

    Definition Classes
    Global
    Annotations
    @inline()
  176. final def beforeMixin[T](op: ⇒ T): T

    Definition Classes
    Global
    Annotations
    @inline()
  177. final def beforePhase[T](ph: Phase)(op: ⇒ T): T

    Since when it is to be "at" a phase is inherently ambiguous, a couple unambiguously named methods.

    Since when it is to be "at" a phase is inherently ambiguous, a couple unambiguously named methods.

    Definition Classes
    SymbolTable
    Annotations
    @inline()
  178. final def beforePickler[T](op: ⇒ T): T

    Definition Classes
    Global
    Annotations
    @inline()
  179. final def beforePrevPhase[T](op: ⇒ T): T

    Definition Classes
    SymbolTable
    Annotations
    @inline()
  180. final def beforeRefchecks[T](op: ⇒ T): T

    Definition Classes
    Global
    Annotations
    @inline()
  181. final def beforeSpecialize[T](op: ⇒ T): T

    Definition Classes
    Global
    Annotations
    @inline()
  182. final def beforeTyper[T](op: ⇒ T): T

    Definition Classes
    Global
    Annotations
    @inline()
  183. final def beforeUncurry[T](op: ⇒ T): T

    Definition Classes
    Global
    Annotations
    @inline()
  184. def beginsWithTypeVarOrIsRefined(tp: Type): Boolean

    Does this type have a prefix that begins with a type variable, or is it a refinement type? For type prefixes that fulfil this condition, type selections with the same name of equal (wrt) =:= prefixes are considered equal wrt =:=

    Does this type have a prefix that begins with a type variable, or is it a refinement type? For type prefixes that fulfil this condition, type selections with the same name of equal (wrt) =:= prefixes are considered equal wrt =:=

    Definition Classes
    Types
  185. object binarynme extends AnyRef

    Java binary names, like scala/runtime/Nothing$.

  186. def buildCompilerFromPhasesSet(): List[SubComponent]

    Definition Classes
    PhaseAssembly
  187. def canAdaptAnnotations(tree: Tree, mode: Int, pt: Type): Boolean

    Find out whether any annotation checker can adapt a tree to a given type.

    Find out whether any annotation checker can adapt a tree to a given type. Called by Typers.adapt.

    Definition Classes
    AnnotationCheckers
  188. def captureVariable(vble: Symbol): Unit

    Mark a variable as captured; i.

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

    Definition Classes
    CapturedVariables
  189. def capturedVariableType(vble: Symbol, tpe: Type = NoType, erasedTypes: Boolean = false): Type

    Convert type of a captured variable to *Ref type.

    Convert type of a captured variable to *Ref type.

    Definition Classes
    CapturedVariables
  190. def capturedVariableType(vble: Symbol): Type

    Convert type of a captured variable to *Ref type.

    Convert type of a captured variable to *Ref type.

    Definition Classes
    CapturedVariables
  191. def changesAfterEachPhase[T](op: ⇒ List[T]): List[ChangeAfterPhase[T]]

    Returns List of ChangeAfterPhase objects, encapsulating those phase transitions where the result of the operation gave a different list than it had when run during the previous phase.

    Returns List of ChangeAfterPhase objects, encapsulating those phase transitions where the result of the operation gave a different list than it had when run during the previous phase.

    Definition Classes
    Global
  192. def checkKindBounds0(tparams: List[Symbol], targs: List[Type], pre: Type, owner: Symbol, explainErrors: Boolean): List[(Type, Symbol, KindErrors)]

    Check well-kindedness of type application (assumes arities are already checked) -- @M

    Check well-kindedness of type application (assumes arities are already checked) -- @M

    This check is also performed when abstract type members become concrete (aka a "type alias") -- then tparams.length==1 (checked one type member at a time -- in that case, prefix is the name of the type alias)

    Type application is just like value application: it's "contravariant" in the sense that the type parameters of the supplied type arguments must conform to the type parameters of the required type parameters:

    • their bounds must be less strict
    • variances must match (here, variances are absolute, the variance of a type parameter does not influence the variance of its higher-order parameters)
    • @M TODO: are these conditions correct,sufficient&necessary?

    e.g. class Iterable[t, m[+x <: t]] --> the application Iterable[Int, List] is okay, since List's type parameter is also covariant and its bounds are weaker than <: Int

    Definition Classes
    Kinds
  193. var chrs: Array[Char]

    Memory to store all names sequentially.

    Memory to store all names sequentially.

    Definition Classes
    Names
  194. def classPath: ClassPath[BinaryRepr]

    Definition Classes
    BuilderGlobalGlobal
  195. lazy val classfileAnnotArgTag: ArrayTag[ClassfileAnnotArg]

    Definition Classes
    AnnotationInfos → AnnotationInfos
  196. object cleanup extends CleanUp

  197. def clearOnNextRun(sym: Symbol): Boolean

    A hook that lets subclasses of Global define whether a package or class should be kept loaded for the next compiler run.

    A hook that lets subclasses of Global define whether a package or class should be kept loaded for the next compiler run. If the parameter sym is a class or object, and clearOnNextRun(sym) returns true, then the symbol is unloaded and reset to its state before the last compiler run. If the parameter sym is a package, and clearOnNextRun(sym) returns true, the package is recursively searched for classes to drop.

    Example: Let's say I want a compiler that drops all classes corresponding to the current project between runs. Then keepForNextRun of a toplevel class or object should return true if the class or object does not form part of the current project, false otherwise. For a package, clearOnNextRun should return true if no class in that package forms part of the current project, false otherwise.

    sym

    A class symbol, object symbol, package, or package class.

    Definition Classes
    Global
  198. def clone(): AnyRef

    Attributes
    protected[lang]
    Definition Classes
    AnyRef
    Annotations
    @throws()
  199. def cloneSymbols(syms: List[Symbol]): List[Symbol]

    Convenience functions which derive symbols by cloning.

    Convenience functions which derive symbols by cloning.

    Definition Classes
    Symbols
  200. def cloneSymbolsAndModify(syms: List[Symbol], infoFn: (Type) ⇒ Type): List[Symbol]

    Clone symbols and apply the given function to each new symbol's info.

    Clone symbols and apply the given function to each new symbol's info.

    syms

    the prototypical symbols

    infoFn

    the function to apply to the infos

    returns

    the newly created, info-adjusted symbols

    Definition Classes
    Symbols
  201. def cloneSymbolsAtOwner(syms: List[Symbol], owner: Symbol): List[Symbol]

    Definition Classes
    Symbols
  202. def cloneSymbolsAtOwnerAndModify(syms: List[Symbol], owner: Symbol, infoFn: (Type) ⇒ Type): List[Symbol]

    Definition Classes
    Symbols
  203. object closureElimination extends ClosureElimination

  204. final def collectMap2[A, B, C](xs1: List[A], xs2: List[B])(p: (A, B) ⇒ Boolean): Map[A, B]

    Definition Classes
    Collections
  205. def commonOwnerMap: CommonOwnerMap

    Attributes
    protected
    Definition Classes
    Types
  206. final def compareLengths(xs1: List[_], xs2: List[_]): Int

    Definition Classes
    Types
    Annotations
    @tailrec()
  207. def compoundBaseTypeSeq(tp: Type): BaseTypeSeq

    Create the base type sequence of a compound type wuth given tp.

    Create the base type sequence of a compound type wuth given tp.parents

    Definition Classes
    BaseTypeSeqs
  208. def computeInternalPhases(): Unit

    Add the internal compiler phases to the phases set.

    Add the internal compiler phases to the phases set. This implementation creates a description map at the same time.

    Definition Classes
    BuilderGlobalGlobal
  209. def computePhaseDescriptors: List[SubComponent]

    Attributes
    protected
    Definition Classes
    Global
  210. def computePlatformPhases(): Unit

    Attributes
    protected
    Definition Classes
    Global
  211. def computePluginPhases(): Unit

    Extract all phases supplied by plugins and add them to the phasesSet.

    Extract all phases supplied by plugins and add them to the phasesSet.

    Attributes
    protected
    Definition Classes
    Plugins
    See also

    phasesSet

  212. def connectModuleToClass(m: ModuleSymbol, moduleClass: ClassSymbol): ModuleSymbol

    Definition Classes
    Symbols
  213. object constfold extends ConstantFolder

    Fold constants

  214. object constructors extends Constructors

  215. def containsExistential(tpe: Type): Boolean

    Definition Classes
    Types
  216. def cookedDocComment(sym: Symbol, docStr: String = ""): String

    The raw doc comment of symbol sym, minus usecase and define sections, augmented by missing sections of an inherited doc comment.

    The raw doc comment of symbol sym, minus usecase and define sections, augmented by missing sections of an inherited doc comment. If a symbol does not have a doc comment but some overridden version of it does, the doc comment of the overridden version is copied instead.

    Definition Classes
    DocComments
  217. var cookedDocComments: Map[Symbol, String]

    Definition Classes
    DocComments
  218. def copyClassDef(tree: Tree)(mods: Modifiers, name: Name, tparams: List[TypeDef], impl: Template): ClassDef

    Definition Classes
    Trees
  219. def copyDefDef(tree: Tree)(mods: Modifiers, name: Name, tparams: List[TypeDef], vparamss: List[List[ValDef]], tpt: Tree, rhs: Tree): DefDef

    Definition Classes
    Trees
  220. def copyMethodType(tp: Type, params: List[Symbol], restpe: Type): Type

    Create a new MethodType of the same class as tp, i.

    Create a new MethodType of the same class as tp, i.e. keep JavaMethodType

    Definition Classes
    Types
  221. object copyPropagation extends CopyPropagation

    Copy propagation for optimization

  222. def copyRefinedType(original: RefinedType, parents: List[Type], decls: Scope): Type

    Definition Classes
    Types
  223. def copyTypeRef(tp: Type, pre: Type, sym: Symbol, args: List[Type]): Type

    Definition Classes
    Types
  224. def copyValDef(tree: Tree)(mods: Modifiers, name: Name, tpt: Tree, rhs: Tree): ValDef

    Definition Classes
    Trees
  225. final def corresponds3[A, B, C](xs1: List[A], xs2: List[B], xs3: List[C])(f: (A, B, C) ⇒ Boolean): Boolean

    True if all three arguments have the same number of elements and the function is true for all the triples.

    True if all three arguments have the same number of elements and the function is true for all the triples.

    Definition Classes
    Collections
    Annotations
    @tailrec()
  226. def createFromClonedSymbols[T](syms: List[Symbol], tpe: Type)(creator: (List[Symbol], Type) ⇒ T): T

    Functions which perform the standard clone/substituting on the given symbols and type, then call the creator function with the new symbols and type as arguments.

    Functions which perform the standard clone/substituting on the given symbols and type, then call the creator function with the new symbols and type as arguments.

    Definition Classes
    Symbols
  227. def createFromClonedSymbolsAtOwner[T](syms: List[Symbol], owner: Symbol, tpe: Type)(creator: (List[Symbol], Type) ⇒ T): T

    Definition Classes
    Symbols
  228. def createJavadoc: Boolean

    Definition Classes
    Global
  229. final def currentPeriod: Period

    The current period.

    The current period.

    Definition Classes
    SymbolTable
  230. def currentRun: Run

    The currently active run

    The currently active run

    Definition Classes
    Global
  231. def currentRunId: Int

    The id of the currently active run

    The id of the currently active run

    Definition Classes
    GlobalSymbolTable
  232. var currentSettings: Settings

    Definition Classes
    Global
  233. def currentSource: SourceFile

    Definition Classes
    Global
  234. def currentUnit: CompilationUnit

    Definition Classes
    Global
  235. object deAlias extends TypeMap

    Remove any occurrences of type aliases from this type

  236. object deadCode extends DeadCodeElimination

  237. def debugString(tp: Type): String

    Definition Classes
    TypeDebugging
  238. final def debuglog(msg: ⇒ String): Unit

    Override with final implementation for inlining.

    Override with final implementation for inlining.

    Definition Classes
    GlobalSymbolTable
    Annotations
    @inline()
  239. final def debugwarn(msg: ⇒ String): Unit

    Definition Classes
    GlobalSymbolTable
    Annotations
    @inline()
  240. def decodedSymName(tree: Tree, name: Name): String

    Definition Classes
    TreePrinters
  241. def defineBaseClassesOfCompoundType(tpe: CompoundType): Unit

    Attributes
    protected
    Definition Classes
    Types
  242. def defineBaseTypeSeqOfCompoundType(tpe: CompoundType): Unit

    Attributes
    protected
    Definition Classes
    Types
  243. def defineBaseTypeSeqOfTypeRef(tpe: TypeRef): Unit

    Attributes
    protected
    Definition Classes
    Types
  244. def defineParentsOfTypeRef(tpe: TypeRef): Unit

    Attributes
    protected
    Definition Classes
    Types
  245. def defineUnderlyingOfSingleType(tpe: SingleType): Unit

    Attributes
    protected
    Definition Classes
    Types
  246. object definitions extends DefinitionsClass

    Definition Classes
    Definitions → StandardDefinitions
  247. object dependencyAnalysis extends SubComponent with DependencyAnalysis

  248. def deriveCaseDef(cdef: Tree)(applyToBody: (Tree) ⇒ Tree): CaseDef

    Definition Classes
    Trees
  249. def deriveClassDef(cdef: Tree)(applyToImpl: (Template) ⇒ Template): ClassDef

    Definition Classes
    Trees
  250. def deriveDefDef(ddef: Tree)(applyToRhs: (Tree) ⇒ Tree): DefDef

    Definition Classes
    Trees
  251. def deriveFreshSkolems(tparams: List[Symbol]): List[Symbol]

    Map a list of type parameter symbols to skolemized symbols, which can be deskolemized to the original type parameter.

    Map a list of type parameter symbols to skolemized symbols, which can be deskolemized to the original type parameter. (A skolem is a representation of a bound variable when viewed inside its scope.) !!!Adriaan: this does not work for hk types.

    Definition Classes
    ExistentialsAndSkolems
  252. def deriveLabelDef(ldef: Tree)(applyToRhs: (Tree) ⇒ Tree): LabelDef

    Definition Classes
    Trees
  253. def deriveModuleDef(mdef: Tree)(applyToImpl: (Template) ⇒ Template): ModuleDef

    Definition Classes
    Trees
  254. def deriveSymbols(syms: List[Symbol], symFn: (Symbol) ⇒ Symbol): List[Symbol]

    Derives a new list of symbols from the given list by mapping the given list across the given function.

    Derives a new list of symbols from the given list by mapping the given list across the given function. Then fixes the info of all the new symbols by substituting the new symbols for the original symbols.

    syms

    the prototypical symbols

    symFn

    the function to create new symbols

    returns

    the new list of info-adjusted symbols

    Definition Classes
    Symbols
  255. def deriveTemplate(templ: Tree)(applyToBody: (List[Tree]) ⇒ List[Tree]): Template

    Definition Classes
    Trees
  256. def deriveType(syms: List[Symbol], symFn: (Symbol) ⇒ Symbol)(tpe: Type): Type

    Derives a new Type by first deriving new symbols as in deriveSymbols, then performing the same oldSyms => newSyms substitution on tpe as is performed on the symbol infos in deriveSymbols.

    Derives a new Type by first deriving new symbols as in deriveSymbols, then performing the same oldSyms => newSyms substitution on tpe as is performed on the symbol infos in deriveSymbols.

    syms

    the prototypical symbols

    symFn

    the function to create new symbols

    tpe

    the prototypical type

    returns

    the new symbol-subsituted type

    Definition Classes
    Symbols
  257. def deriveTypeWithWildcards(syms: List[Symbol])(tpe: Type): Type

    Derives a new Type by instantiating the given list of symbols as WildcardTypes.

    Derives a new Type by instantiating the given list of symbols as WildcardTypes.

    syms

    the symbols to replace

    returns

    the new type with WildcardType replacing those syms

    Definition Classes
    Symbols
  258. def deriveValDef(vdef: Tree)(applyToRhs: (Tree) ⇒ Tree): ValDef

    Definition Classes
    Trees
  259. def describeAfterEachPhase[T](op: ⇒ T): List[String]

    Definition Classes
    Global
  260. def describeAfterEveryPhase[T](op: ⇒ T): String

    Definition Classes
    Global
  261. def deskolemizeTypeParams(tparams: List[Symbol])(tp: Type): Type

    Convert to corresponding type parameters all skolems of method parameters which appear in tparams.

    Convert to corresponding type parameters all skolems of method parameters which appear in tparams.

    Definition Classes
    ExistentialsAndSkolems
  262. def differentOrNone(tp1: Type, tp2: Type): Type

    Definition Classes
    Types
  263. final def distinctBy[A, B](xs: List[A])(f: (A) ⇒ B): List[A]

    Definition Classes
    Collections
  264. def docComment(sym: Symbol, docStr: String, pos: Position = NoPosition): Any

    Associate comment with symbol sym at position pos.

    Associate comment with symbol sym at position pos.

    Definition Classes
    DocComments
  265. def docCommentPos(sym: Symbol): Position

    The position of the raw doc comment of symbol sym, or NoPosition if missing If a symbol does not have a doc comment but some overridden version of it does, the position of the doc comment of the overridden version is returned instead.

    The position of the raw doc comment of symbol sym, or NoPosition if missing If a symbol does not have a doc comment but some overridden version of it does, the position of the doc comment of the overridden version is returned instead.

    Definition Classes
    DocComments
  266. val docComments: HashMap[Symbol, DocComment]

    The raw doc comment map

    The raw doc comment map

    Definition Classes
    DocComments
  267. object dropAllRefinements extends TypeMap

    Substitutes the empty scope for any non-empty decls in the type.

  268. object dropRepeatedParamType extends TypeMap

  269. object dropSingletonType extends TypeMap

    Remove any occurrence of type <singleton> from this type and its parents

  270. def duplicateTree(tree: Tree): Tree

    Attributes
    protected[scala]
    Definition Classes
    Trees → Trees
  271. def echoPhaseSummary(ph: Phase): Unit

    Definition Classes
    Global
  272. def elimAnonymousClass(t: Type): Type

    Definition Classes
    Types
  273. def elimRefinement(t: Type): Type

    Definition Classes
    Types
  274. val emptySymbolArray: Array[Symbol]

    Definition Classes
    Symbols
  275. object emptyValDef extends ValDef

    Definition Classes
    Trees → Trees
  276. val enableTypeVarExperimentals: Boolean

    Attributes
    protected
    Definition Classes
    GlobalTypes
  277. def encode(str: String): TermName

    Definition Classes
    StdNames
  278. def ensureNonOverlapping(tree: Tree, others: List[Tree]): Unit

    Ensure that given tree has no positions that overlap with any of the positions of others.

    Ensure that given tree has no positions that overlap with any of the positions of others. This is done by shortening the range or assigning TransparentPositions to some of the nodes in tree.

    Definition Classes
    Positions → Positions
  279. def ensuring(cond: (BuilderGlobal) ⇒ Boolean, msg: ⇒ Any): BuilderGlobal

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

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

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

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

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

    Definition Classes
    AnyRef → Any
  285. object erasure extends Erasure

    Definition Classes
    GlobalTransforms
  286. def error(msg: String): Unit

    Definition Classes
    Global
  287. val etaExpandKeepsStar: Boolean

    Attributes
    protected
    Definition Classes
    GlobalTypes
  288. 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 wrt 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 wrt 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 → Types
  289. def existentialsInType(tpe: Type): List[Symbol]

    Definition Classes
    Types
  290. final def exists2[A, B](xs1: List[A], xs2: List[B])(f: (A, B) ⇒ Boolean): Boolean

    Definition Classes
    Collections
  291. def expandInheritdoc(parent: String, child: String, sym: Symbol): String

    Expand inheritdoc tags

    Expand inheritdoc tags

    • for the main comment we transform the inheritdoc into the super variable, and the variable expansion can expand it further
    • for the param, tparam and throws sections we must replace comments on the spot

    This is done separately, for two reasons: 1. It takes longer to run compared to merge 2. The inheritdoc annotation should not be used very often, as building the comment from pieces severely impacts performance

    parent

    The source (or parent) comment

    child

    The child (overriding member or usecase) comment

    sym

    The child symbol

    returns

    The child comment with the inheritdoc sections expanded

    Definition Classes
    DocComments
  292. def expandVariables(initialStr: String, sym: Symbol, site: Symbol): String

    Expand variable occurrences in string str, until a fix point is reached or a expandLimit is exceeded.

    Expand variable occurrences in string str, until a fix point is reached or a expandLimit is exceeded.

    sym

    The symbol for which doc comments are generated

    site

    The class for which doc comments are generated

    returns

    Expanded string

    Attributes
    protected
    Definition Classes
    DocComments
  293. def expandWiki(str: String): String

    Returns just the wiki expansion (this would correspond to a comment in the input format of the JavaDoc tool, modulo differences in tags.

    Returns just the wiki expansion (this would correspond to a comment in the input format of the JavaDoc tool, modulo differences in tags.)

    Definition Classes
    DocComments
  294. def expandedDocComment(sym: Symbol): String

    The cooked doc comment of symbol sym after variable expansion, or "" if missing.

    The cooked doc comment of symbol sym after variable expansion, or "" if missing.

    sym

    The symbol for which doc comment is returned (site is always the containing class)

    Definition Classes
    DocComments
  295. def expandedDocComment(sym: Symbol, site: Symbol, docStr: String = ""): String

    The cooked doc comment of symbol sym after variable expansion, or "" if missing.

    The cooked doc comment of symbol sym after variable expansion, or "" if missing.

    sym

    The symbol for which doc comment is returned

    site

    The class for which doc comments are generated

    Definition Classes
    DocComments
    Exceptions thrown
    ExpansionLimitExceeded

    when more than 10 successive expansions of the same string are done, which is interpreted as a recursive variable definition.

  296. def explain[T](op: String, p: (Type, T) ⇒ Boolean, tp1: Type, arg2: T): Boolean

    Perform operation p on arguments tp1, arg2 and print trace of computation.

    Perform operation p on arguments tp1, arg2 and print trace of computation.

    Attributes
    protected
    Definition Classes
    Types
  297. def explainTypes(op: (Type, Type) ⇒ Any, found: Type, required: Type): Unit

    If option explaintypes is set, print a subtype trace for op(found, required).

    If option explaintypes is set, print a subtype trace for op(found, required).

    Definition Classes
    Types
  298. def explainTypes(found: Type, required: Type): Unit

    If option explaintypes is set, print a subtype trace for found <:< required.

    If option explaintypes is set, print a subtype trace for found <:< required.

    Definition Classes
    Types
  299. object explicitOuter extends ExplicitOuter

  300. object extensionMethods extends ExtensionMethods

  301. def finalize(): Unit

    Attributes
    protected[lang]
    Definition Classes
    AnyRef
    Annotations
    @throws()
  302. final def findOrElse[A](xs: TraversableOnce[A])(p: (A) ⇒ Boolean)(orElse: ⇒ A): A

    Definition Classes
    Collections
  303. def findRecursiveBounds(ts: List[Type]): List[(Symbol, Symbol)]

    From a list of types, find any which take type parameters where the type parameter bounds contain references to other any types in the list (including itself.

    From a list of types, find any which take type parameters where the type parameter bounds contain references to other any types in the list (including itself.)

    returns

    List of symbol pairs holding the recursive type parameter and the parameter which references it.

    Definition Classes
    Types
  304. final def flatCollect[A, B](elems: List[A])(pf: PartialFunction[A, Traversable[B]]): List[B]

    Definition Classes
    Collections
  305. final def flatMap2[A, B, C](xs1: List[A], xs2: List[B])(f: (A, B) ⇒ List[C]): List[C]

    Definition Classes
    Collections
  306. object flatten extends Flatten

  307. final def flattensToEmpty(xss: Seq[Seq[_]]): Boolean

    Definition Classes
    Collections
    Annotations
    @tailrec()
  308. def forInteractive: Boolean

    Definition Classes
    GlobalRequired
  309. def forJVM: Boolean

    Definition Classes
    Global
  310. def forMSIL: Boolean

    Are we compiling for .

    Are we compiling for .NET?

    Definition Classes
    GlobalSymbolTable
  311. def forScaladoc: Boolean

    Definition Classes
    GlobalRequired
  312. final def forall2[A, B](xs1: List[A], xs2: List[B])(f: (A, B) ⇒ Boolean): Boolean

    Definition Classes
    Collections
  313. final def forall3[A, B, C](xs1: List[A], xs2: List[B], xs3: List[C])(f: (A, B, C) ⇒ Boolean): Boolean

    Definition Classes
    Collections
  314. final def foreach2[A, B](xs1: List[A], xs2: List[B])(f: (A, B) ⇒ Unit): Unit

    Definition Classes
    Collections
  315. final def foreach3[A, B, C](xs1: List[A], xs2: List[B], xs3: List[C])(f: (A, B, C) ⇒ Unit): Unit

    Definition Classes
    Collections
  316. final def foreachWithIndex[A, B](xs: List[A])(f: (A, Int) ⇒ Unit): Unit

    Definition Classes
    Collections
  317. def formatted(fmtstr: String): String

    Implicit information
    This member is added by an implicit conversion from BuilderGlobal to StringFormat performed by method any2stringfmt in scala.Predef.
    Definition Classes
    StringFormat
    Annotations
    @inline()
  318. def freeTerms(tree: Tree): List[FreeTerm]

    Definition Classes
    FreeVars → FreeVars
  319. def freeTypes(tree: Tree): List[FreeType]

    Definition Classes
    FreeVars → FreeVars
  320. def freshExistentialName(suffix: String): TypeName

    Attributes
    protected
    Definition Classes
    Symbols
  321. def fromDeBruijn(owner: Symbol): TypeMap

    Definition Classes
    Types
  322. object fulltpnme extends TypeNames

    For fully qualified type names.

  323. object gen extends TreeGen

    Definition Classes
    GlobalTreeBuildUtil → TreeBuildUtil
  324. object genJVM extends GenJVM

  325. def genPolyType(params: List[Symbol], tpe: Type): Type

    Definition Classes
    Types
  326. object genicode extends GenICode

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

    Definition Classes
    AnyRef → Any
  328. def getFile(clazz: Symbol, suffix: String): File

    Returns the file with the given suffix for the given class.

    Returns the file with the given suffix for the given class. Used for icode writing.

    Definition Classes
    Global
  329. def getFile(source: AbstractFile, segments: Array[String], suffix: String): File

    Definition Classes
    Global
  330. def getSourceFile(name: String): SourceFile

    Definition Classes
    Global
  331. def getSourceFile(f: AbstractFile): BatchSourceFile

    Definition Classes
    Global
  332. def glb(ts: List[Type]): Type

    The greatest lower bound wrt <:< of a list of types

    The greatest lower bound wrt <:< of a list of types

    Definition Classes
    Types → Types
  333. def glbNorm(ts: List[Type], depth: Int): Type

    The greatest lower bound wrt <:< of a list of types, which have been normalized wrt elimSuper

    The greatest lower bound wrt <:< of a list of types, which have been normalized wrt elimSuper

    Attributes
    protected
    Definition Classes
    Types
  334. def globalError(msg: String): Unit

    Definition Classes
    Global
  335. var globalPhase: Phase

    Definition Classes
    Global
  336. final def hasLength(xs: List[_], len: Int): Boolean

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

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

    Definition Classes
    Types
  337. def hashCode(): Int

    Definition Classes
    AnyRef → Any
  338. object icodeChecker extends ICodeChecker

  339. object icodeCheckers extends ICodeCheckers

    Icode verification

  340. object icodes extends ICodes

    ICode generator

  341. var ids: Int

    Attributes
    protected
    Definition Classes
    Symbols
  342. final def ifDebug(body: ⇒ Unit): Unit

    Definition Classes
    Global
    Annotations
    @inline()
  343. def inReflexiveMirror: Boolean

    Is this symbol table part of reflexive mirror? In this case operations need to be made thread safe.

    Is this symbol table part of reflexive mirror? In this case operations need to be made thread safe.

    Definition Classes
    SymbolTable
  344. var infoTransformers: InfoTransformer

    The set of all installed infotransformers.

    The set of all installed infotransformers.

    Definition Classes
    SymbolTable
  345. def inform[T](msg: String, value: T): T

    Definition Classes
    Global
  346. def inform(msg: String): Unit

    Definition Classes
    Global
  347. def informComplete(msg: String): Unit

    Definition Classes
    Global
  348. def informProgress(msg: String): Unit

    Definition Classes
    Global
  349. def informTime(msg: String, start: Long): Unit

    Definition Classes
    Global
  350. object inlineExceptionHandlers extends InlineExceptionHandlers

  351. object inliner extends Inliners

  352. def instTypeVar(tp: Type): Type

    Definition Classes
    Types
  353. def instantiatedBounds(pre: Type, owner: Symbol, tparams: List[Symbol], targs: List[Type]): List[TypeBounds]

    Definition Classes
    Types
  354. 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 → Types
  355. 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 → Types
  356. val intersectionWitness: WeakHashMap[List[Type], WeakReference[Type]]

    A map from lists to compound types that have the given list as parents.

    A map from lists to compound types that have the given list as parents. This is used to avoid duplication in the computation of base type sequences and baseClasses. It makes use of the fact that these two operations depend only on the parents, not on the refinement.

    Definition Classes
    Types
  357. final def isAtPhaseAfter(p: Phase): Boolean

    Are we later than given phase in compilation?

    Are we later than given phase in compilation?

    Definition Classes
    SymbolTable
  358. def isBoundedGeneric(tp: Type): Boolean

    Definition Classes
    Types
  359. def isConstantType(tp: Type): Boolean

    Definition Classes
    Types
  360. def isDifferentType(tp1: Type, tp2: Type): Boolean

    Definition Classes
    Types
  361. def isDifferentTypeConstructor(tp1: Type, tp2: Type): Boolean

    Definition Classes
    Types
  362. def isErrorOrWildcard(tp: Type): Boolean

    Definition Classes
    Types
  363. def isHKSubType0(tp1: Type, tp2: Type, depth: Int): Boolean

    Definition Classes
    Types
  364. final def isInstanceOf[T0]: Boolean

    Definition Classes
    Any
  365. def isNumericSubType(tp1: Type, tp2: Type): Boolean

    The isNumericValueType tests appear redundant, but without them test/continuations-neg/function3.

    The isNumericValueType tests appear redundant, but without them test/continuations-neg/function3.scala goes into an infinite loop. (Even if the calls are to typeSymbolDirect.)

    Definition Classes
    Types
  366. def isPopulated(tp1: Type, tp2: Type): Boolean

    Is intersection of given types populated? That is, for all types tp1, tp2 in intersection for all common base classes bc of tp1 and tp2 let bt1, bt2 be the base types of tp1, tp2 relative to class bc Then: bt1 and bt2 have the same prefix, and any corresponding non-variant type arguments of bt1 and bt2 are the same

    Is intersection of given types populated? That is, for all types tp1, tp2 in intersection for all common base classes bc of tp1 and tp2 let bt1, bt2 be the base types of tp1, tp2 relative to class bc Then: bt1 and bt2 have the same prefix, and any corresponding non-variant type arguments of bt1 and bt2 are the same

    Definition Classes
    Types
  367. def isRaw(sym: Symbol, args: List[Type]): Boolean

    Definition Classes
    Types
  368. def isRawType(tp: Type): Boolean

    Is type tp a raw type?

    Is type tp a raw type?

    Definition Classes
    Types
  369. def isReferenceToAnyVal(t: Tree): Boolean

    Definition Classes
    Trees
  370. def isReferenceToPredef(t: Tree): Boolean

    Is the tree Predef, scala.

    Is the tree Predef, scala.Predef, or _root_.scala.Predef?

    Definition Classes
    Trees
  371. def isReferenceToScalaMember(t: Tree, Id: Name): Boolean

    Definition Classes
    Trees
  372. def isSameType(tp1: Type, tp2: Type): Boolean

    Do tp1 and tp2 denote equivalent types?

    Do tp1 and tp2 denote equivalent types?

    Definition Classes
    Types
  373. def isSameType2(tp1: Type, tp2: Type): Boolean

    Definition Classes
    Types
  374. def isSameTypes(tps1: List[Type], tps2: List[Type]): Boolean

    Are tps1 and tps2 lists of pairwise equivalent types?

    Are tps1 and tps2 lists of pairwise equivalent types?

    Definition Classes
    Types
  375. def isScriptRun: Boolean

    Definition Classes
    Global
  376. def isSingleType(tp: Type): Boolean

    Definition Classes
    Types
  377. def isSubArg(t1: Type, t2: Type, variance: Int): Boolean

    Definition Classes
    Types
  378. def isSubArgs(tps1: List[Type], tps2: List[Type], tparams: List[Symbol]): Boolean

    Definition Classes
    Types
  379. def isSubType(tp1: Type, tp2: Type, depth: Int): Boolean

    Definition Classes
    Types
  380. def isSubType(tp1: Type, tp2: Type): Boolean

    Definition Classes
    Types
  381. def isSubTypes(tps1: List[Type], tps2: List[Type]): Boolean

    Are tps1 and tps2 lists of equal length such that all elements of tps1 conform to corresponding elements of tps2?

    Are tps1 and tps2 lists of equal length such that all elements of tps1 conform to corresponding elements of tps2?

    Definition Classes
    Types
  382. def isUnboundedGeneric(tp: Type): Boolean

    Definition Classes
    Types
  383. final def isValid(period: Period): Boolean

    Definition Classes
    SymbolTable
  384. final def isValidForBaseClasses(period: Period): Boolean

    Definition Classes
    SymbolTable
  385. def isWeakSubType(tp1: Type, tp2: Type): Boolean

    Definition Classes
    Types
  386. def isWithinBounds(pre: Type, owner: Symbol, tparams: List[Symbol], targs: List[Type]): Boolean

    Do type arguments targs conform to formal parameters tparams?

    Do type arguments targs conform to formal parameters tparams?

    Definition Classes
    Types
  387. val javanme: JavaKeywords

    Definition Classes
    StdNames
  388. def kindsConform(tparams: List[Symbol], targs: List[Type], pre: Type, owner: Symbol): Boolean

    Definition Classes
    Kinds
  389. object lambdaLift extends LambdaLift

  390. object lazyVals extends LazyVals

  391. def loadPlugins(): List[Plugin]

    Load all available plugins.

    Load all available plugins. Skips plugins that either have the same name as another one, or which define a phase name that another one does.

    Attributes
    protected
    Definition Classes
    Plugins
  392. def loadRoughPluginsList(): List[Plugin]

    Load a rough list of the plugins.

    Load a rough list of the plugins. For speed, it does not instantiate a compiler run. Therefore it cannot test for same-named phases or other problems that are filtered from the final list of plugins.

    Attributes
    protected
    Definition Classes
    Plugins
  393. lazy val loaders: SymbolLoaders { val global: BuilderGlobal.this.type }

    Definition Classes
    Global
  394. final def log(msg: ⇒ AnyRef): Unit

    Definition Classes
    GlobalSymbolTable
    Annotations
    @inline()
  395. def logAfterEveryPhase[T](msg: String)(op: ⇒ T): Unit

    Definition Classes
    Global
  396. def logError(msg: String, t: Throwable): Unit

    Definition Classes
    Global
  397. def logFreeVars(position: Position, reified: Tree): Unit

    Definition Classes
    FreeVars
  398. def logThrowable(t: Throwable): Unit

    Definition Classes
    Global
  399. def lookupVariable(vble: String, site: Symbol): Option[String]

    Lookup definition of variable.

    Lookup definition of variable.

    vble

    The variable for which a definition is searched

    site

    The class for which doc comments are generated

    Definition Classes
    DocComments
  400. implicit def lowPriorityNameOrdering[T <: Name]: Ordering[T]

    Definition Classes
    SymbolTable
  401. implicit def lowerTermNames(n: TermName): String

    Definition Classes
    StdNames
  402. def lub(ts: List[Type]): Type

    Definition Classes
    Types → Types
  403. def lubDepth(ts: List[Type]): Int

    The maximum allowable depth of lubs or glbs over types ts.

    The maximum allowable depth of lubs or glbs over types ts. This is the maximum depth of all types in the base type sequences of each of the types ts, plus LubGlbMargin.

    Definition Classes
    Types
  404. def makeNoSymbol: NoSymbol

    Attributes
    protected
    Definition Classes
    Symbols
  405. final def map2[A, B, C](xs1: List[A], xs2: List[B])(f: (A, B) ⇒ C): List[C]

    Definition Classes
    Collections
  406. def map2Conserve[A <: AnyRef, B](xs: List[A], ys: List[B])(f: (A, B) ⇒ A): List[A]

    like map2, but returns list xs itself - instead of a copy - if function f maps all elements to themselves.

    like map2, but returns list xs itself - instead of a copy - if function f maps all elements to themselves.

    Definition Classes
    Types
  407. final def map3[A, B, C, D](xs1: List[A], xs2: List[B], xs3: List[C])(f: (A, B, C) ⇒ D): List[D]

    Definition Classes
    Collections
  408. final def mapFrom[A, A1 >: A, B](xs: List[A])(f: (A) ⇒ B): Map[A1, B]

    Definition Classes
    Collections
  409. def mapParamss[T](sym: Symbol)(f: (Symbol) ⇒ T): List[List[T]]

    A deep map on a symbol's paramss.

    A deep map on a symbol's paramss.

    Definition Classes
    Symbols
  410. final def mapWithIndex[A, B](xs: List[A])(f: (A, Int) ⇒ B): List[B]

    Definition Classes
    Collections
  411. final def matchesType(tp1: Type, tp2: Type, alwaysMatchSimple: Boolean): Boolean

    A function implementing tp1 matches tp2.

    A function implementing tp1 matches tp2.

    Definition Classes
    Types
  412. final val maxTostringRecursions: Int(50)

    The maximum number of recursions allowed in toString

    The maximum number of recursions allowed in toString

    Definition Classes
    Types
  413. def merge(src: String, dst: String, sym: Symbol, copyFirstPara: Boolean = false): String

    Merge elements of doccomment src into doc comment dst for symbol sym.

    Merge elements of doccomment src into doc comment dst for symbol sym. In detail:

    1. If copyFirstPara is true, copy first paragraph 2. For all parameters of sym if there is no @param section in dst for that parameter name, but there is one on src, copy that section. 3. If there is no @return section in dst but there is one in src, copy it.
    Definition Classes
    DocComments
  414. def mergePrefixAndArgs(tps: List[Type], variance: Int, depth: Int): Option[Type]

    Compute lub (if variance == 1) or glb (if variance == -1) of given list of types tps.

    Compute lub (if variance == 1) or glb (if variance == -1) of given list of types tps. All types in tps are typerefs or singletypes with the same symbol. Return Some(x) if the computation succeeds with result x. Return None if the computation fails.

    Definition Classes
    Types
  415. final def mexists[A](xss: List[List[A]])(p: (A) ⇒ Boolean): Boolean

    All these mm methods are "deep map" style methods for mapping etc.

    All these mm methods are "deep map" style methods for mapping etc. on a list of lists while avoiding unnecessary intermediate structures like those created via flatten.

    Definition Classes
    Collections
  416. final def mfilter[A](xss: List[List[A]])(p: (A) ⇒ Boolean): List[A]

    Definition Classes
    Collections
  417. final def mfind[A](xss: List[List[A]])(p: (A) ⇒ Boolean): Option[A]

    Definition Classes
    Collections
  418. final def mforall[A](xss: List[List[A]])(p: (A) ⇒ Boolean): Boolean

    Definition Classes
    Collections
  419. final def mforeach[A](xss: List[List[A]])(f: (A) ⇒ Unit): Unit

    Definition Classes
    Collections
  420. val missingAliasException: MissingAliasControl

    Definition Classes
    Types
  421. def missingHook(owner: Symbol, name: Name): Symbol

    A last effort if symbol in a select <owner>.

    A last effort if symbol in a select <owner>.<name> is not found. This is overridden by the reflection compiler to make up a package when it makes sense (i.e. <owner> is a package and <name> is a term name).

    Definition Classes
    SymbolTable
  422. object mixer extends Mixin

  423. def mkAttributedQualifier(tpe: Type, termSym: Symbol): Tree

    Definition Classes
    Global
  424. def mkConsoleFrontEnd(minSeverity: Int = 1): FrontEnd

    Definition Classes
    FrontEnds
  425. def mkImporter(from0: Universe): Importer { val from: from0.type }

    Definition Classes
    Importers
  426. def mkSilentFrontEnd(): FrontEnd

    Definition Classes
    FrontEnds
  427. def mkToolBox(frontEnd: FrontEnd = mkSilentFrontEnd(), options: String = ""): ToolBox

    Definition Classes
    ToolBoxes
  428. final def mmap[A, B](xss: List[List[A]])(f: (A) ⇒ B): List[List[B]]

    Definition Classes
    Collections
  429. def modifiersFromInternalFlags(flags: Long, privateWithin: Name, annotations: List[Tree]): Modifiers

    Definition Classes
    TreeBuildUtil → TreeBuildUtil
  430. def nameChars: Array[Char]

    Definition Classes
    Names
  431. final val nameDebug: Boolean(false)

    Definition Classes
    Names
  432. final def ne(arg0: AnyRef): Boolean

    Definition Classes
    AnyRef
  433. def needsOuterTest(patType: Type, selType: Type, currentOwner: Symbol): Boolean

    Does a pattern of type patType need an outer test when executed against selector type selType in context defined by currentOwner?

    Does a pattern of type patType need an outer test when executed against selector type selType in context defined by currentOwner?

    Definition Classes
    Types
  434. def newBaseTypeSeq(parents: List[Type], elems: Array[Type]): BaseTypeSeq

    Attributes
    protected
    Definition Classes
    BaseTypeSeqs
  435. def newCompactTreePrinter(): CompactTreePrinter

    Definition Classes
    TreePrinters
  436. def newCompactTreePrinter(stream: OutputStream): CompactTreePrinter

    Definition Classes
    TreePrinters
  437. def newCompactTreePrinter(writer: PrintWriter): CompactTreePrinter

    Definition Classes
    TreePrinters
  438. def newCompilationUnit(code: String): CompilationUnit

    Definition Classes
    Global
  439. def newExistentialType(quantified: List[Symbol], underlying: Type): Type

    A creator for existential types which flattens nested existentials.

    A creator for existential types which flattens nested existentials.

    Definition Classes
    Types
  440. def newFreeExistential(name: String, info: Type, value: ⇒ Any, flags: Long = 0L, origin: String = null): FreeType

    Definition Classes
    TreeBuildUtil → TreeBuildUtil
  441. def newFreeTerm(name: String, info: Type, value: ⇒ Any, flags: Long = 0L, origin: String = null): FreeTerm

    Definition Classes
    TreeBuildUtil → TreeBuildUtil
  442. def newFreeTermSymbol(name: TermName, info: Type, value: ⇒ Any, flags: Long = 0L, origin: String): FreeTerm

    Create a new free term.

    Create a new free term. Its owner is NoSymbol.

    Definition Classes
    Symbols
  443. def newFreeType(name: String, info: Type, value: ⇒ Any, flags: Long = 0L, origin: String = null): FreeType

    Definition Classes
    TreeBuildUtil → TreeBuildUtil
  444. def newFreeTypeSymbol(name: TypeName, info: Type, value: ⇒ Any, flags: Long = 0L, origin: String): FreeType

    Create a new free type.

    Create a new free type. Its owner is NoSymbol.

    Definition Classes
    Symbols
  445. def newLazyTreeCopier: TreeCopier

    Definition Classes
    Trees → Trees
  446. def newNestedScope(outer: Scope): Scope

    Create a new scope nested in another one with which it shares its elements

    Create a new scope nested in another one with which it shares its elements

    Definition Classes
    Scopes → Scopes
  447. def newPackageScope(pkgClass: Symbol): Scope

    Create new scope for the members of package pkg

    Create new scope for the members of package pkg

    Definition Classes
    Scopes
  448. def newRun(): Run

  449. def newScope: Scope

    Create a new scope

    Create a new scope

    Definition Classes
    Scopes → Scopes
  450. def newScopeWith(elems: Symbol*): Scope

    Create a new scope with given initial elements

    Create a new scope with given initial elements

    Definition Classes
    Scopes → Scopes
  451. def newSourceFile(code: String): BatchSourceFile

    Definition Classes
    Global
  452. def newStandardTreePrinter(): TreePrinter

    Definition Classes
    TreePrinters
  453. def newStandardTreePrinter(stream: OutputStream): TreePrinter

    Definition Classes
    TreePrinters
  454. def newStandardTreePrinter(writer: PrintWriter): TreePrinter

    Definition Classes
    TreePrinters
  455. def newStrictTreeCopier: TreeCopier

    Definition Classes
    Trees → Trees
  456. def newTermName(bs: Array[Byte], offset: Int, len: Int): TermName

    Create a term name from the UTF8 encoded bytes in bs[offset.

    Create a term name from the UTF8 encoded bytes in bs[offset..offset+len-1].

    Definition Classes
    Names
  457. def newTermName(s: String): TermName

    Create a term name from string.

    Create a term name from string.

    Definition Classes
    Names → Names
  458. def newTermName(cs: Array[Char], offset: Int, len: Int, cachedString: String): TermName

    Create a term name from the characters in cs[offset.

    Create a term name from the characters in cs[offset..offset+len-1]. TODO - have a mode where name validation is performed at creation time (e.g. if a name has the string "$class" in it, then fail if that string is not at the very end.)

    Attributes
    protected
    Definition Classes
    Names
  459. def newTermName(cs: Array[Char]): TermName

    Definition Classes
    Names
  460. def newTermName(cs: Array[Char], offset: Int, len: Int): TermName

    Create a term name from the characters in cs[offset.

    Create a term name from the characters in cs[offset..offset+len-1].

    Definition Classes
    Names
  461. def newTermNameCached(s: String): TermName

    Definition Classes
    Names
  462. def newTreePrinter(): TreePrinter

    Definition Classes
    TreePrintersTreePrinters
  463. def newTreePrinter(stream: OutputStream): TreePrinter

    Definition Classes
    TreePrintersTreePrinters
  464. def newTreePrinter(writer: PrintWriter): TreePrinter

    Definition Classes
    TreePrintersTreePrinters → TreePrinters
  465. def newTypeName(bs: Array[Byte], offset: Int, len: Int): TypeName

    Create a type name from the UTF8 encoded bytes in bs[offset.

    Create a type name from the UTF8 encoded bytes in bs[offset..offset+len-1].

    Definition Classes
    Names
  466. def newTypeName(cs: Array[Char], offset: Int, len: Int): TypeName

    Create a type name from the characters in cs[offset.

    Create a type name from the characters in cs[offset..offset+len-1].

    Definition Classes
    Names
  467. def newTypeName(s: String): TypeName

    Create a type name from string.

    Create a type name from string.

    Definition Classes
    Names → Names
  468. def newTypeName(cs: Array[Char], offset: Int, len: Int, cachedString: String): TypeName

    Attributes
    protected
    Definition Classes
    Names
  469. def newTypeName(cs: Array[Char]): TypeName

    Definition Classes
    Names
  470. def newTypeNameCached(s: String): TypeName

    Definition Classes
    Names
  471. def newUndoLog: UndoLog

    Attributes
    protected
    Definition Classes
    Types
  472. def newUnitParser(code: String): UnitParser

    Definition Classes
    Global
  473. def newUnitScanner(code: String): UnitScanner

    Definition Classes
    Global
  474. def nextId(): Int

    Attributes
    protected
    Definition Classes
    Symbols
  475. object nme extends TermNames with AbsTermNames

  476. object nodePrinters extends NodePrinters

    Print tree in detailed form

  477. val nodeToString: (Tree) ⇒ String

    Definition Classes
    Global
  478. def normalizePlus(tp: Type): Type

    Definition Classes
    Types
  479. final def notify(): Unit

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

    Definition Classes
    AnyRef
  481. def numericGlb(ts: List[Type]): Type

    Definition Classes
    Types
  482. def numericLub(ts: List[Type]): Type

    Definition Classes
    Types
  483. def objToAny(tp: Type): Type

    Definition Classes
    Types
  484. def openPackageModule(pkgClass: Symbol): Unit

    if there's a package member object in pkgClass, enter its members into it.

    if there's a package member object in pkgClass, enter its members into it.

    Definition Classes
    SymbolTable
  485. def openPackageModule(container: Symbol, dest: Symbol): Unit

    Definition Classes
    SymbolTable
  486. object opt extends AestheticSettings

  487. val originalOwner: HashMap[Symbol, Symbol]

    The original owner of a class.

    The original owner of a class. Used by the backend to generate EnclosingMethod attributes.

    Definition Classes
    Symbols
  488. object overridingPairs extends OverridingPairs

    Computing pairs of overriding/overridden symbols

  489. def paramString(tp: Type): String

    Definition Classes
    TypeDebugging
  490. object perRunCaches extends AnyRef

  491. final def period(rid: RunId, pid: Int): Period

    Definition Classes
    SymbolTable
  492. var phStack: List[Phase]

    Definition Classes
    SymbolTable
  493. final def phase: Phase

    Definition Classes
    SymbolTable
  494. def phaseDescriptions: String

    A description of the phases that will run

    A description of the phases that will run

    Definition Classes
    Global
  495. lazy val phaseDescriptors: List[SubComponent]

    Definition Classes
    Global
  496. def phaseFlagDescriptions: String

    Summary of the per-phase values of nextFlags and newFlags, shown with -Xshow-phases if -Ydebug also given.

    Summary of the per-phase values of nextFlags and newFlags, shown with -Xshow-phases if -Ydebug also given.

    Definition Classes
    Global
  497. final def phaseId(period: Period): Int

    The phase identifier of the given period.

    The phase identifier of the given period.

    Definition Classes
    SymbolTable
  498. lazy val phaseNames: List[String]

    The names of the phases.

    The names of the phases.

    Definition Classes
    Global
  499. final def phaseOf(period: Period): Phase

    The phase associated with given period.

    The phase associated with given period.

    Definition Classes
    SymbolTable
  500. val phaseWithId: Array[Phase]

    The phase which has given index as identifier.

    The phase which has given index as identifier.

    Definition Classes
    GlobalSymbolTable
  501. final def phase_=(p: Phase): Unit

    Definition Classes
    SymbolTable
  502. lazy val phasesDescMap: Map[SubComponent, String]

    Attributes
    protected
    Definition Classes
    Global
  503. lazy val phasesSet: HashSet[SubComponent]

    Attributes
    protected
    Definition Classes
    Global
  504. object pickler extends Pickler

  505. def picklerPhase: Phase

    Definition Classes
    GlobalRequired
  506. lazy val platform: ThisPlatform

    Definition Classes
    Global
  507. def pluginDescriptions: String

    A description of all the plugins that are loaded

    A description of all the plugins that are loaded

    Definition Classes
    Plugins
  508. def pluginOptionsHelp: String

    Summary of the options for all loaded plugins

    Summary of the options for all loaded plugins

    Definition Classes
    Plugins
  509. lazy val plugins: List[Plugin]

    Definition Classes
    Plugins
  510. final def popPhase(ph: Phase): Unit

    Definition Classes
    SymbolTable
  511. lazy val posAssigner: PosAssigner

    Attributes
    protected[this]
    Definition Classes
    PositionsPositions
  512. object postErasure extends SubComponent with PostErasure

  513. def printAfterEachPhase[T](op: ⇒ T): Unit

    Definition Classes
    Global
  514. def printAllUnits(): Unit

    Definition Classes
    Global
  515. var printInfers: Boolean

    Definition Classes
    Global
  516. var printTypings: Boolean

    Switch to turn on detailed type logs

    Switch to turn on detailed type logs

    Definition Classes
    Global
  517. implicit def promoteTermNamesAsNecessary(name: Name): TermName

    Definition Classes
    Names
  518. final def pushPhase(ph: Phase): Phase

    Definition Classes
    SymbolTable
  519. def quotedName(name: String): String

    Definition Classes
    TreePrinters
  520. def quotedName(name: Name): String

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

    Adds backticks if the name is a scala keyword.

    Adds backticks if the name is a scala keyword.

    Definition Classes
    TreePrinters
  522. def rangePos(source: SourceFile, start: Int, point: Int, end: Int): OffsetPosition

    Definition Classes
    Positions
  523. def rawDocComment(sym: Symbol): String

    The raw doc comment of symbol sym, as it appears in the source text, "" if missing.

    The raw doc comment of symbol sym, as it appears in the source text, "" if missing.

    Definition Classes
    DocComments
  524. def rawToExistential: TypeMap

    The raw to existential map converts a raw type to an existential type.

    The raw to existential map converts a raw type to an existential type. It is necessary because we might have read a raw type of a parameterized Java class from a class file. At the time we read the type the corresponding class file might still not be read, so we do not know what the type parameters of the type are. Therefore the conversion of raw types to existential types might not have taken place in ClassFileparser.sigToType (where it is usually done).

    Definition Classes
    Types
  525. object refChecks extends RefChecks

    Definition Classes
    GlobalTransforms
  526. def referenceCapturedVariable(vble: Symbol): Tree

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

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

    Definition Classes
    CapturedVariables
  527. 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.

    parents

    ...

    owner

    ...

    returns

    ...

    Definition Classes
    Types → Types
  528. 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 → Types
  529. def registerContext(c: Context): Unit

    Register new context; called for every created context

    Register new context; called for every created context

    Definition Classes
    Global
  530. def registerTopLevelSym(sym: Symbol): Unit

    Register top level class (called on entering the class)

    Register top level class (called on entering the class)

    Definition Classes
    Global
  531. def reify[T](expr: T): Expr[T]

    Definition Classes
    Universe
    Annotations
    @macroImpl()
  532. def removeAllAnnotationCheckers(): Unit

    Remove all annotation checkers

    Remove all annotation checkers

    Definition Classes
    AnnotationCheckers
  533. def repackExistential(tp: Type): Type

    Repack existential types, otherwise they sometimes get unpacked in the wrong location (type inference comes up with an unexpected skolem)

    Repack existential types, otherwise they sometimes get unpacked in the wrong location (type inference comes up with an unexpected skolem)

    Definition Classes
    Types
  534. final def require(requirement: Boolean): Unit

    Definition Classes
    Global
    Annotations
    @inline()
  535. final def require(requirement: Boolean, message: ⇒ Any): Unit

    Definition Classes
    Global
    Annotations
    @inline()
  536. def resetAllAttrs[A <: Tree](x: A, leaveAlone: (Tree) ⇒ Boolean): A

    resets symbol and tpe fields in a tree, @see ResetAttrs

    resets symbol and tpe fields in a tree, @see ResetAttrs

    Definition Classes
    Trees
  537. def resetLocalAttrs[A <: Tree](x: A, leaveAlone: (Tree) ⇒ Boolean): A

    Definition Classes
    Trees
  538. def resetLocalAttrsKeepLabels[A <: Tree](x: A, leaveAlone: (Tree) ⇒ Boolean): A

    Definition Classes
    Trees
  539. object resetPos extends Traverser

  540. def rootLoader: LazyType

    Definition Classes
    GlobalSymbolTable
  541. lazy val roughPluginsList: List[Plugin]

    Attributes
    protected
    Definition Classes
    Plugins
  542. final def runId(period: Period): RunId

    The run identifier of the given period.

    The run identifier of the given period.

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

    True if two lists have the same length.

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

    Definition Classes
    Types
  544. object sampleTransform extends SampleTransform

  545. object scalaPrimitives extends ScalaPrimitives

    Scala primitives, used in genicode

  546. def scopeTransform(owner: Symbol)(op: ⇒ Scope): Scope

    Transform scope of members of owner using operation op This is overridden by the reflective compiler to avoid creating new scopes for packages

    Transform scope of members of owner using operation op This is overridden by the reflective compiler to avoid creating new scopes for packages

    Definition Classes
    Scopes
  547. def selectOverloadedMethod(owner: Symbol, name: String, index: Int): Symbol

    Definition Classes
    TreeBuildUtil → TreeBuildUtil
  548. def selectOverloadedMethodIfDefined(owner: Symbol, name: String, index: Int): Symbol

    Definition Classes
    TreeBuildUtil → TreeBuildUtil
  549. def selectTerm(owner: Symbol, name: String): Symbol

    Definition Classes
    TreeBuildUtil → TreeBuildUtil
  550. def selectTermIfDefined(owner: Symbol, name: String): Symbol

    Definition Classes
    TreeBuildUtil → TreeBuildUtil
  551. def selectType(owner: Symbol, name: String): Symbol

    Definition Classes
    TreeBuildUtil → TreeBuildUtil
  552. def selectTypeIfDefined(owner: Symbol, name: String): Symbol

    Definition Classes
    TreeBuildUtil → TreeBuildUtil
  553. val self: Any

    Implicit information
    This member is added by an implicit conversion from BuilderGlobal to StringFormat performed by method any2stringfmt in scala.Predef.
    Definition Classes
    StringFormat
  554. val self: Any

    Implicit information
    This member is added by an implicit conversion from BuilderGlobal to StringAdd performed by method any2stringadd in scala.Predef.
    Definition Classes
    StringAdd
  555. val shorthands: Set[String]

    Definition Classes
    Types
  556. def shouldLogAtThisPhase: Boolean

    Definition Classes
    Global
  557. def show(tree: Tree, mkPrinter: (PrintWriter) ⇒ TreePrinter): String

    Definition Classes
    TreePrinters
  558. def showDef(fullName: Name, declsOnly: Boolean, ph: Phase): Unit

    We resolve the class/object ambiguity by passing a type/term name.

    We resolve the class/object ambiguity by passing a type/term name.

    Definition Classes
    Global
  559. final val showOuterTests: Boolean(false)

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

    Definition Classes
    TreePrinters
  561. def signalDone(context: Context, old: Tree, result: Tree): Unit

    Called every time an AST node is successfully typechecked in typerPhase.

    Called every time an AST node is successfully typechecked in typerPhase.

    Definition Classes
    Global
  562. def signalParseProgress(pos: Position): Unit

    Called from parser, which signals hereby that a method definition has been parsed.

    Called from parser, which signals hereby that a method definition has been parsed.

    Definition Classes
    Global
  563. def singleType(pre: Type, sym: Symbol): Type

    The canonical creator for single-types

    The canonical creator for single-types

    Definition Classes
    Types → Types
  564. def singletonBounds(hi: Type): TypeBounds

    Definition Classes
    Types
  565. var skolemizationLevel: Int

    The current skolemization level, needed for the algorithms in isSameType, isSubType that do constraint solving under a prefix.

    The current skolemization level, needed for the algorithms in isSameType, isSubType that do constraint solving under a prefix.

    Definition Classes
    Types
  566. lazy val sn: SymbolNames

    Definition Classes
    StdNames
  567. def solve(tvars: List[TypeVar], tparams: List[Symbol], variances: List[Int], upper: Boolean, depth: Int): Boolean

    Definition Classes
    Types
  568. def solve(tvars: List[TypeVar], tparams: List[Symbol], variances: List[Int], upper: Boolean): Boolean

    Solve constraint collected in types tvars.

    Solve constraint collected in types tvars.

    tvars

    All type variables to be instantiated.

    tparams

    The type parameters corresponding to tvars

    variances

    The variances of type parameters; need to reverse solution direction for all contravariant variables.

    upper

    When true search for max solution else min.

    Definition Classes
    Types
  569. def spanningTypes(ts: List[Type]): List[Type]

    A minimal type list which has a given list of types as its base type sequence

    A minimal type list which has a given list of types as its base type sequence

    Definition Classes
    Types
  570. object specializeTypes extends SpecializeTypes

  571. def specializesSym(tp: Type, sym: Symbol): Boolean

    Does type tp implement symbol sym with same or stronger type? Exact only if sym is a member of some refinement type, otherwise we might return false negatives.

    Does type tp implement symbol sym with same or stronger type? Exact only if sym is a member of some refinement type, otherwise we might return false negatives.

    Definition Classes
    Types
  572. final def startRun(period: Period): Period

    The period at the start of run that includes period.

    The period at the start of run that includes period.

    Definition Classes
    SymbolTable
  573. def staticClass(fullname: String): Symbol

    Definition Classes
    ClassLoaders
  574. def staticClassIfDefined(fullName: String): Symbol

    Definition Classes
    TreeBuildUtil → TreeBuildUtil
  575. def staticModule(fullname: String): Symbol

    Definition Classes
    ClassLoaders
  576. def staticModuleIfDefined(fullName: String): Symbol

    Definition Classes
    TreeBuildUtil → TreeBuildUtil
  577. object statistics extends StatisticsInfo

    Some statistics (normally disabled) set with -Ystatistics

  578. def substituteFreeTypes(tpe0: Type, subs: Map[FreeType, Type]): Type

    Definition Classes
    FreeVars → FreeVars
  579. def substituteFreeTypes(tree0: Tree, subs: Map[FreeType, Type]): Tree

    Definition Classes
    FreeVars → FreeVars
  580. object superAccessors extends SuperAccessors

  581. def superComment(sym: Symbol): Option[String]

    The cooked doc comment of an overridden symbol

    The cooked doc comment of an overridden symbol

    Attributes
    protected
    Definition Classes
    DocComments
  582. def supplementErrorMessage(errorMessage: String): String

    Don't want to introduce new errors trying to report errors, so swallow exceptions.

    Don't want to introduce new errors trying to report errors, so swallow exceptions.

    Definition Classes
    GlobalSymbolTable
  583. def suspendTypeVarsInType(tp: Type): List[TypeVar]

    Make each type var in this type use its original type for comparisons instead of collecting constraints.

    Make each type var in this type use its original type for comparisons instead of collecting constraints.

    Definition Classes
    Types
  584. def symName(tree: Tree, name: Name): String

    Definition Classes
    TreePrinters
  585. def symbolCount: Int

    Definition Classes
    Symbols
  586. final def synchronized[T0](arg0: ⇒ T0): T0

    Definition Classes
    AnyRef
  587. object syntaxAnalyzer extends SyntaxAnalyzer

  588. object tailCalls extends TailCalls

  589. object terminal extends SubComponent

  590. def thisModuleType(fullname: String): Type

    Definition Classes
    TreeBuildUtil → TreeBuildUtil
  591. def throwableAsString(t: Throwable): String

    Definition Classes
    Global
  592. object toDeBruijn extends TypeMap

  593. def toJavaDoc(s: String): String

    Returns the javadoc format of doc comment string s, including wiki expansion

    Returns the javadoc format of doc comment string s, including wiki expansion

    Definition Classes
    DocComments
  594. def toString(): String

    Definition Classes
    AnyRef → Any
  595. object tpnme extends TypeNames with AbsTypeNames

  596. final val traceSymbolActivity: Boolean

    Dump each symbol to stdout after shutdown.

    Dump each symbol to stdout after shutdown.

    Definition Classes
    SymbolTable
  597. object traceSymbols extends TraceSymbolActivity

  598. def transformedType(tpe: Type): _56.global.Type forSome { val _56: scala.reflect.internal.transform.Erasure{val global: BuilderGlobal.this.type} }

    Definition Classes
    Transforms
  599. def transformedType(sym: Symbol): _57.global.Type forSome { val _57: scala.reflect.internal.transform.Erasure{val global: BuilderGlobal.this.type} }

    Definition Classes
    Transforms
  600. val treeBrowser: SwingBrowser

    Definition Classes
    Global
  601. object treeBrowsers extends TreeBrowsers

    Representing ASTs as graphs

  602. object treeChecker extends TreeCheckers

    Tree checker

  603. val treeCopy: TreeCopier

    Definition Classes
    Trees
  604. object treeInfo extends TreeInfo

  605. def treeLine(t: Tree): String

    Definition Classes
    Trees
  606. lazy val treePrinter: TreePrinter

    Definition Classes
    Trees
  607. def treeStatus(t: Tree, enclosingTree: Tree = null): String

    Definition Classes
    Trees
  608. def treeSymStatus(t: Tree): String

    Definition Classes
    Trees
  609. def typeArgsString(tp: Type): String

    Definition Classes
    TypeDebugging
  610. object typeDebug extends AnyRef

  611. def typeFun(tps: List[Symbol], body: Type): Type

    A creator for a type functions, assuming the type parameters tps already have the right owner.

    A creator for a type functions, assuming the type parameters tps already have the right owner.

    Definition Classes
    Types
  612. def typeFunAnon(tps: List[Symbol], body: Type): Type

    A creator for anonymous type functions, where the symbol for the type function still needs to be created.

    A creator for anonymous type functions, where the symbol for the type function still needs to be created.

    TODO: type params of anonymous type functions, which currently can only arise from normalising type aliases, are owned by the type alias of which they are the eta-expansion higher-order subtyping expects eta-expansion of type constructors that arise from a class; here, the type params are owned by that class, but is that the right thing to do?

    Definition Classes
    Types
  613. def typeParamsString(tp: Type): String

    Definition Classes
    TypeDebugging
  614. def typeParamsToExistentials(clazz: Symbol): List[Symbol]

    Definition Classes
    Types
  615. def typeParamsToExistentials(clazz: Symbol, tparams: List[Symbol]): List[Symbol]

    A collector that tests for existential types appearing at given variance in a type

    A collector that tests for existential types appearing at given variance in a type

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

    The canonical creator for typerefs todo: see how we can clean this up a bit

    The canonical creator for typerefs todo: see how we can clean this up a bit

    Definition Classes
    Types → Types
  617. def typeToString(tpe: Type): String

    Attributes
    protected
    Definition Classes
    Types
  618. object typeVarToOriginMap extends TypeMap

    A map to convert every occurrence of a type variable to a wildcard type.

  619. def typeVarsInType(tp: Type): List[TypeVar]

    A list of the typevars in a type.

    A list of the typevars in a type.

    Definition Classes
    Types
  620. object typer extends Typer

  621. object uncurry extends UnCurry

    Definition Classes
    GlobalTransforms
  622. val undetBaseTypeSeq: BaseTypeSeq

    A merker object for a base type sequence that's no yet computed.

    A merker object for a base type sequence that's no yet computed. used to catch inheritance cycles

    Definition Classes
    BaseTypeSeqs
  623. lazy val undoLog: UndoLog

    A log of type variable with their original constraints.

    A log of type variable with their original constraints. Used in order to undo constraints in the case of isSubType/isSameType failure.

    Definition Classes
    Types
  624. def unique[T <: Type](tp: T): T

    Attributes
    protected
    Definition Classes
    Types
  625. def uniqueTypeCount: Int

    Definition Classes
    Types
  626. object unwrapToClass extends ClassUnwrapper

  627. object unwrapToStableClass extends ClassUnwrapper

  628. object unwrapWrapperTypes extends TypeUnwrapper

  629. def useCases(sym: Symbol): List[(Symbol, String, Position)]

    Definition Classes
    DocComments
  630. def useCases(sym: Symbol, site: Symbol): List[(Symbol, String, Position)]

    The list of use cases of doc comment of symbol sym seen as a member of class site.

    The list of use cases of doc comment of symbol sym seen as a member of class site. Each use case consists of a synthetic symbol (which is entered nowhere else), of an expanded doc comment string, and of its position.

    sym

    The symbol for which use cases are returned

    site

    The class for which doc comments are generated

    Definition Classes
    DocComments
    Exceptions thrown
    ExpansionLimitExceeded

    when more than 10 successive expansions of the same string are done, which is interpreted as a recursive variable definition.

  631. def validateClassInfo(tp: ClassInfoType): Unit

    Overridden in reflection compiler

    Overridden in reflection compiler

    Definition Classes
    Types
  632. def validatePositions(tree: Tree): Unit

    Definition Classes
    Positions
  633. final def wait(): Unit

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

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

    Definition Classes
    AnyRef
    Annotations
    @throws()
  636. def warning(msg: String): Unit

    Definition Classes
    Global
  637. def weakGlb(ts: List[Type]): (Type, Boolean)

    Definition Classes
    Types
  638. def weakLub(ts: List[Type]): (Type, Boolean)

    Definition Classes
    Types
  639. object wildcardToTypeVarMap extends TypeMap

    A map to convert every occurrence of a wildcard type to a fresh type variable

  640. def withInfoLevel[T](infolevel: Value)(op: ⇒ T): T

    Definition Classes
    Global
  641. def withTypesExplained[A](op: ⇒ A): A

    Execute op while printing a trace of the operations on types executed.

    Execute op while printing a trace of the operations on types executed.

    Definition Classes
    Types
  642. def wrapFrontEnd(frontEnd: FrontEnd): Reporter

    Definition Classes
    FrontEnds
  643. def wrapReporter(reporter: Reporter): FrontEnd

    Definition Classes
    FrontEnds
  644. 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 → Positions
  645. 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 → Positions
  646. def xprintTree(treePrinter: TreePrinter, tree: Tree): Unit

    Hook for extensions

    Hook for extensions

    Definition Classes
    TreePrintersTreePrinters
  647. def xtransform(transformer: Transformer, tree: Tree): Tree

    Attributes
    protected
    Definition Classes
    Trees → Trees
  648. def xtraverse(traverser: Traverser, tree: Tree): Unit

    Attributes
    protected
    Definition Classes
    Trees → Trees
  649. def [B](y: B): (BuilderGlobal, B)

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

Deprecated Value Members

  1. def abort(): Nothing

    Definition Classes
    SymbolTable
    Annotations
    @deprecated
    Deprecated

    (Since version 2.10.0) Give us a reason

  2. def onlyPresentation: Boolean

    Definition Classes
    Global
    Annotations
    @deprecated
    Deprecated

    (Since version 2.9.0) Use forInteractive or forScaladoc, depending on what you're after

  3. def polyType(params: List[Symbol], tpe: Type): Type

    Definition Classes
    Types → Types
    Annotations
    @deprecated
    Deprecated

    (Since version 2.10.0) use genPolyType(...) instead

  4. def view(s: String): TermName

    Definition Classes
    Names
    Annotations
    @deprecated
    Deprecated

    (Since version 2.9.0)

  5. def x: BuilderGlobal

    Implicit information
    This member is added by an implicit conversion from BuilderGlobal to ArrowAssoc[BuilderGlobal] performed by method any2ArrowAssoc in scala.Predef.
    Definition Classes
    ArrowAssoc
    Annotations
    @deprecated
    Deprecated

    (Since version 2.10.0) Use leftOfArrow instead

  6. def x: BuilderGlobal

    Implicit information
    This member is added by an implicit conversion from BuilderGlobal to Ensuring[BuilderGlobal] performed by method any2Ensuring in scala.Predef.
    Definition Classes
    Ensuring
    Annotations
    @deprecated
    Deprecated

    (Since version 2.10.0) Use resultOfEnsuring instead

Inherited from Global

Inherited from Positions

Inherited from DocComments

Inherited from TreePrinters

Inherited from FreeVars

Inherited from Trees

Inherited from PhaseAssembly

Inherited from Plugins

Inherited from CompilationUnits

Inherited from ToolBoxes

Inherited from ClassLoaders

Inherited from SymbolTable

Inherited from SymbolTable

Inherited from StdAttachments

Inherited from CapturedVariables

Inherited from FrontEnds

Inherited from TreeBuildUtil

Inherited from Required

Inherited from Importers

Inherited from TypeDebugging

Inherited from Positions

Inherited from TreePrinters

Inherited from Trees

Inherited from AnnotationCheckers

Inherited from AnnotationInfos

Inherited from StdNames

Inherited from Transforms

Inherited from InfoTransformers

Inherited from BaseTypeSeqs

Inherited from Constants

Inherited from Definitions

Inherited from Scopes

Inherited from ExistentialsAndSkolems

Inherited from Kinds

Inherited from Types

Inherited from FreeVars

Inherited from SymbolFlags

Inherited from Symbols

Inherited from SymbolCreations

Inherited from Names

Inherited from Collections

Inherited from Universe

Inherited from Importers

Inherited from FrontEnds

Inherited from ToolBoxes

Inherited from TreeBuildUtil

Inherited from ClassLoaders

Inherited from StandardNames

Inherited from TreePrinters

Inherited from TypeTags

Inherited from StandardDefinitions

Inherited from StandardTypes

Inherited from Exprs

Inherited from Positions

Inherited from AnnotationInfos

Inherited from Trees

Inherited from Names

Inherited from Scopes

Inherited from Constants

Inherited from Types

Inherited from FreeVars

Inherited from Symbols

Inherited from AnyRef

Inherited from Any

Inherited by implicit conversion any2stringfmt from BuilderGlobal to StringFormat

Inherited by implicit conversion any2stringadd from BuilderGlobal to StringAdd

Inherited by implicit conversion any2ArrowAssoc from BuilderGlobal to ArrowAssoc[BuilderGlobal]

Inherited by implicit conversion any2Ensuring from BuilderGlobal to Ensuring[BuilderGlobal]