scala.tools.nsc

Global

class Global extends SymbolTable with CompilationUnits with Plugins with PhaseAssembly

Source
Global.scala
Linear Supertypes
PhaseAssembly, Plugins, CompilationUnits, SymbolTable, TypeDebugging, DocComments, Positions, TreePrinters, Trees, AnnotationCheckers, AnnotationInfos, StdNames, NameManglers, InfoTransformers, BaseTypeSeqs, Definitions, Scopes, Types, Symbols, Names, Universe, StandardDefinitions, AnnotationInfos, Trees, StdNames, Names, Scopes, Constants, Types, Symbols, AnyRef, Any
Known Subclasses
Ordering
  1. Alphabetic
  2. By inheritance
Inherited
  1. Hide All
  2. Show all
  1. Global
  2. PhaseAssembly
  3. Plugins
  4. CompilationUnits
  5. SymbolTable
  6. TypeDebugging
  7. DocComments
  8. Positions
  9. TreePrinters
  10. Trees
  11. AnnotationCheckers
  12. AnnotationInfos
  13. StdNames
  14. NameManglers
  15. InfoTransformers
  16. BaseTypeSeqs
  17. Definitions
  18. Scopes
  19. Types
  20. Symbols
  21. Names
  22. Universe
  23. StandardDefinitions
  24. AnnotationInfos
  25. Trees
  26. StdNames
  27. Names
  28. Scopes
  29. Constants
  30. Types
  31. Symbols
  32. AnyRef
  33. Any
Visibility
  1. Public
  2. All

Instance Constructors

  1. new Global(settings: Settings)

  2. new Global(reporter: Reporter)

  3. new Global(settings: Settings, reporter: Reporter)

Type Members

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

    A type carrying some annotations.

  2. abstract class AnnotationChecker extends AnyRef

    An additional checker for annotations on types.

  3. case class AnnotationInfo(atp: Type, args: List[Tree], assocs: List[(Name, ClassfileAnnotArg)]) extends AnnotationInfoBase with Product with Serializable

    Typed information about an annotation.

  4. class AnnotationInfoBase extends AnyRef

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

  6. class ApplyImplicitView extends Apply

  7. class ApplyToImplicitArgs extends Apply

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

    Represents an array of classfile annotation arguments

  9. class AsSeenFromMap extends TypeMap

    A map to compute the asSeenFrom method

  10. case class AssignOrNamedArg(lhs: Tree, rhs: Tree) extends Tree with TermTree with Product with Serializable

    Either an assignment or a named argument.

  11. class BaseTypeSeq extends AnyRef

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

  13. class ChangeOwnerTraverser extends Traverser

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

    A class representing a class info

  15. class ClassSymbol extends TypeSymbol

    A class for class symbols

  16. abstract class ClassfileAnnotArg extends AnyRef

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

  17. class CompactTreePrinter extends TreePrinter

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

  18. class CompilationUnit extends CompilationUnitTrait

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

  19. trait CompilationUnitTrait extends AnyRef

  20. trait CompilerCommonNames extends LibraryCommonNames

  21. trait CompilerKeywords extends AnyRef

    This should be the first trait in the linearization.

  22. trait CompilerTermNames extends CompilerKeywords with CompilerCommonNames

  23. trait CompilerTypeNames extends CompilerCommonNames

  24. abstract class CompoundType extends Type

    A common base class for intersection types and class types

  25. abstract case class ConstantType(value: Constant) extends SingletonType with Product with Serializable

    A class representing a constant type.

  26. class ContainsCollector extends TypeCollector[Boolean]

    A map to implement the contains' method

  27. class ContainsTypeCollector extends TypeCollector[Boolean]

    A map to implement the contains' method

  28. class ContainsVariantExistentialCollector extends TypeCollector[Boolean]

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

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

    An exception for cyclic references of symbol definitions

  30. class DependencyGraph extends AnyRef

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

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

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

    Documented definition, eliminated by analyzer

  33. class ErrorScope extends Scope

    The error scope.

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

    Definition Classes
    Types → Types
  35. class ExpansionLimitExceeded extends Exception

  36. class FilterTreeTraverser extends Traverser

  37. class FilterTypeCollector extends TypeCollector[ListBuffer[Type]]

    A map to implement the filter' method

  38. class FindTreeTraverser extends Traverser

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

    A map to implement the filter' method

  40. class ForEachTypeTraverser extends TypeTraverser

  41. class ForeachPartialTreeTraverser extends Traverser

  42. class ForeachTreeTraverser extends Traverser

  43. abstract class GlobalPhase extends Phase

  44. abstract class InfoTransformer extends AnyRef

  45. class InstantiateDependentMap extends TypeMap

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

  47. class JavaKeywords extends AnyRef

  48. class JavaMethodType extends MethodType

  49. case class LazyAnnotationInfo(annot: () ⇒ AnnotationInfo) extends AnnotationInfoBase with Product with Serializable

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

  50. class LazyTreeCopier extends TreeCopier

  51. abstract class LazyType extends Type with AbsLazyType

    A class representing an as-yet unevaluated type.

  52. 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).

  53. class MalformedType extends TypeError

    A throwable signalling a malformed type

  54. class MethodSymbol extends TermSymbol

    A class for method symbols

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

    A class representing a method type with parameters.

  56. class MissingAliasControl extends Throwable with ControlThrowable

  57. class MissingTypeControl extends Throwable with ControlThrowable

  58. class ModuleClassSymbol extends ClassSymbol

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

  59. class ModuleSymbol extends TermSymbol

    A class for module symbols

  60. sealed abstract class Name extends (Int) ⇒ Char

    The name class.

  61. trait NameManglingCommon extends AnyRef

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

    A class representing types with a name.

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

    Represents a nested classfile annotation

  64. class NoCommonType extends Throwable with ControlThrowable

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

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

    Definition Classes
    Types → Types
  67. 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.

  68. class PackageClassInfoType extends ClassInfoType

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

  70. 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
  71. 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 *).

  72. type Position = Position

    Definition Classes
    Positions
  73. 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.

  74. final class RefinedType0 extends RefinedType

  75. trait RewrappingTypeProxy extends Type with SimpleTypeProxy

    A proxy for a type (identified by field underlying') that forwards most operations to it. Every operation that is overridden for some kind of types is forwarded here. Some operations are rewrapped again.

  76. class Run extends AnyRef

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

  77. type RunId = Int

    An ordinal number for compiler runs.

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

    Definition Classes
    SymbolTable
  78. 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.

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

  80. class Scope extends AbsScope

  81. class ScopeEntry extends AnyRef

  82. 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). every operation that is overridden for some kind of types should be forwarded.

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

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

  84. abstract class SingletonType extends SubType with SimpleTypeProxy

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

  85. class StrictTreeCopier extends TreeCopier

  86. abstract class SubType extends Type

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

  87. class SubTypePair extends AnyRef

  88. abstract class SubstMap[T] extends TypeMap

    A base class to compute all substitutions

  89. class SubstSuperMap extends TypeMap

  90. class SubstSymMap extends SubstMap[Symbol]

    A map to implement the substSym' method.

  91. class SubstThisMap extends TypeMap

    A map to implement the substThis' method.

  92. class SubstTypeMap extends SubstMap[Type]

    A map to implement the subst' method.

  93. class SubstWildcardMap extends TypeMap

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

    Definition Classes
    Types → Types
  95. abstract class Symbol extends AbsSymbol

    The class for all symbols

  96. abstract class SymbolNames extends AnyRef

  97. final class TermName extends Name

    Definition Classes
    Names → Names
  98. trait TermNameMangling extends NameManglingCommon

  99. class TermSymbol extends Symbol

    A class for term symbols

  100. type ThisPlatform = scala.tools.nsc.backend.Platform[_] { val global: Global.this.type }

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

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

  102. abstract class Transformer extends AnyRef

  103. class Traverser extends Traverser

    Definition Classes
    Trees → Trees
  104. abstract class TreeCopier extends AnyRef

  105. class TreeMatchTemplate extends AnyRef

  106. class TreeOps extends AnyRef

  107. class TreePrinter extends AbsTreePrinter

  108. class TreeSubstituter extends Transformer

  109. class TreeSymSubstTraverser extends Traverser

  110. class TreeSymSubstituter extends Transformer

    Substitute symbols in 'from' with symbols in 'to'.

  111. class TreeTypeSubstituter extends Traverser

  112. abstract class Type extends AbsType

    The base class for all types

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

  114. abstract class TypeCollector[T] extends TypeTraverser

  115. class TypeConstraint extends AnyRef

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

  116. class TypeError extends Throwable

    A throwable signalling a type error

  117. abstract class TypeMap extends (Type) ⇒ Type

    A prototype for mapping a function over all possible types

  118. final class TypeName extends Name

    Definition Classes
    Names → Names
  119. trait TypeNameMangling extends NameManglingCommon

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

  121. class TypeSkolem extends TypeSymbol

    A class for type parameters viewed from inside their scopes

  122. class TypeSymbol extends Symbol

    A class of type symbols.

  123. abstract class TypeTraverser extends TypeMap

  124. case class TypeTree() extends AbsTypeTree with Product with Serializable

    A synthetic term holding an arbitrary type.

  125. case class TypeTreeWithDeferredRefCheck(check: () ⇒ TypeTree) extends AbsTypeTree with Product with Serializable

    emitted by typer, eliminated by refchecks

  126. class TypeVar extends Type

    A class representing a type variable Not used after phase typer'. A higher-kinded type variable has type arguments (a list of Type's) and type parameters (list of Symbols) A TypeVar whose list of args is non-empty can only be instantiated by a higher-kinded type that can be applied to these args a typevar is much like a typeref, except it has special logic for type equality/subtyping

  127. final class UniqueConstantType extends ConstantType with UniqueType

  128. final class UniqueSingleType extends SingleType with UniqueType

  129. final class UniqueSuperType extends SuperType with UniqueType

  130. final class UniqueThisType extends ThisType with UniqueType

  131. trait UniqueType extends AnyRef

  132. final class UniqueTypeBounds extends TypeBounds with UniqueType

  133. final class UniqueTypeRef extends TypeRef with UniqueType

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

  135. trait ValueClassDefinitions extends AnyRef

  136. class VarianceError extends TypeError

    An exception signalling a variance annotation/usage conflict

Value Members

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

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

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

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

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

    Definition Classes
    Any
  6. object AnnotatedType extends AnnotatedTypeExtractor with Serializable

    Definition Classes
    Types → Types
  7. object AnnotationInfo extends AnnotationInfoExtractor with Serializable

    Definition Classes
    AnnotationInfos → AnnotationInfos
  8. object ApproximateDependentMap extends TypeMap

  9. object ArrayAnnotArg extends ArrayAnnotArgExtractor with Serializable

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

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

    Block factory that flattens directly nested blocks.

    Block factory that flattens directly nested blocks.

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

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

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

    casedef shorthand

    casedef shorthand

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

    Definition Classes
    Constants
  16. 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
  17. def ClassDef(sym: Symbol, impl: Template): ClassDef

    sym

    the class symbol

    returns

    the implementation template

    Definition Classes
    Trees
  18. object ClassInfoType extends ClassInfoTypeExtractor with Serializable

    Definition Classes
    Types → Types
  19. final val ClassTag: Int(12)

    Definition Classes
    Constants
  20. object ConsoleWriter extends Writer

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

  21. object ConstantType extends ConstantTypeExtractor with Serializable

    Definition Classes
    Types → Types
  22. val CyclicInheritance: Throwable

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

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

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

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

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

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

    Definition Classes
    Constants
  29. object EmptyScope extends Scope

    The empty scope (immutable).

  30. lazy val EmptyTreeTypeSubstituter: TreeTypeSubstituter

    Definition Classes
    Trees
  31. final val EnumTag: Int(13)

    Definition Classes
    Constants
  32. object ErroneousCollector extends TypeCollector[Boolean]

    A map to implement the contains' method

  33. object ErrorType extends Type with Product with Serializable

    An object representing an erroneous type

  34. object ExistentialType extends ExistentialTypeExtractor with Serializable

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

    Definition Classes
    Constants
  36. val GlbFailure: Throwable

    Definition Classes
    Types
  37. def Ident(sym: Symbol): Ident

    Definition Classes
    Trees
  38. object IdentityTypeMap extends TypeMap

    A type map that always returns the input type unchanged

  39. final val IntTag: Int(6)

    Definition Classes
    Constants
  40. object IsDependentCollector extends TypeCollector[Boolean]

  41. 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
  42. def LabelDef(sym: Symbol, params: List[Symbol], rhs: Tree): LabelDef

    Definition Classes
    Trees
  43. def Literal(value: Any): Literal

    Definition Classes
    Trees
  44. object LiteralAnnotArg extends LiteralAnnotArgExtractor with Serializable

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

    Definition Classes
    Constants
  46. final val LubGlbMargin: Int(0)

    Definition Classes
    Types
  47. val MaxPhases: Int

  48. object MethodType extends MethodTypeExtractor with Serializable

    Definition Classes
    Types → Types
  49. def Modifiers(flags: Long): Modifiers

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

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

    sym

    the class symbol

    impl

    the implementation template

    Definition Classes
    Trees
  52. object NestedAnnotArg extends NestedAnnotArgExtractor with Serializable

    Definition Classes
    AnnotationInfos → AnnotationInfos
  53. 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
  54. lazy val NoMods: Modifiers

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

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

    Definition Classes
    Positions
  57. object NoPrefix extends Type with Product with Serializable

    An object representing a non-existing prefix

  58. final val NoRunId: Int(0)

    Definition Classes
    SymbolTable
  59. object NoSymbol extends Symbol

    An object representing a missing symbol

  60. final val NoTag: Int(0)

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

    An object representing a non-existing type

  62. final val NullTag: Int(11)

    Definition Classes
    Constants
  63. object NullaryMethodType extends NullaryMethodTypeExtractor with Serializable

    Definition Classes
    Types → Types
  64. object PolyType extends PolyTypeExtractor with Serializable

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

    Definition Classes
    Types → Types
  66. def Select(qualifier: Tree, sym: Symbol): Select

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

    Definition Classes
    Constants
  68. object SingleType extends SingleTypeExtractor with Serializable

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

    Definition Classes
    Constants
  70. object StripAnnotationsMap extends TypeMap

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

    Definition Classes
    Trees
  72. object SuperType extends SuperTypeExtractor with Serializable

    Definition Classes
    Types → Types
  73. 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
  74. def This(sym: Symbol): Tree

    Definition Classes
    Trees
  75. object ThisType extends ThisTypeExtractor with Serializable

    Definition Classes
    Types → Types
  76. object TypeBounds extends TypeBoundsExtractor with Serializable

    Definition Classes
    Types → Types
  77. 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
  78. 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
  79. object TypeRef extends TypeRefExtractor with Serializable

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

    Definition Classes
    Trees
  81. object TypeTree extends TypeTreeExtractor with Serializable

    Definition Classes
    Trees → Trees
  82. object TypeVar extends AnyRef

  83. final val UnitTag: Int(1)

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

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

    Definition Classes
    Trees
  86. object WildcardType extends Type with Product with Serializable

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

  87. def abort(): Nothing

    Definition Classes
    SymbolTable
  88. def abort(msg: String): Nothing

    Definition Classes
    SymbolTable
  89. 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
  90. 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
  91. object adaptToNewRunMap extends TypeMap

  92. def adaptTypeOfReturn(tree: Tree, pt: Type, default: ⇒ Type): Type

    Let a registered annotation checker adapt the type of a return expression.

    Let a registered annotation checker adapt the type of a return expression. Annotation checkers that cannot do the adaptation should simply return the default argument.

    Note that the result is undefined if more than one annotation checker returns an adapted type which is not a subtype of default.

    Definition Classes
    AnnotationCheckers
  93. def addAnnotationChecker(checker: AnnotationChecker): Unit

    Register an annotation checker.

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

    Definition Classes
    AnnotationCheckers
  94. 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
  95. def addMember(thistp: Type, tp: Type, sym: Symbol): Unit

    Make symbol sym' a member of scope tp.

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

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

    Attributes
    protected
  97. final def afterPhase[T](ph: Phase)(op: ⇒ T): T

    Definition Classes
    SymbolTable
  98. object analysis extends TypeFlowAnalysis

    ICode analysis for optimization

  99. object analyzer extends Analyzer

  100. 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
  101. 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
  102. 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
  103. def appliedType(tycon: Type, args: List[Type]): Type

    A creator for type applications

    A creator for type applications

    Definition Classes
    Types
  104. def asCompactString(t: Tree): String

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

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

    Definition Classes
    TreePrinters
  107. final def atPhase[T](ph: Phase)(op: ⇒ T): T

    Perform given operation at given phase

    Perform given operation at given phase

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

    Definition Classes
    Trees
  109. 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
  110. 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
  111. 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
  112. def buildCompilerFromPhasesSet(): List[SubComponent]

    Definition Classes
    PhaseAssembly
  113. 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
  114. def checkKindBounds0(tparams: List[Symbol], targs: List[Type], pre: Type, owner: Symbol, explainErrors: Boolean): List[(Type, Symbol, List[(Symbol, Symbol)], List[(Symbol, Symbol)], List[(Symbol, Symbol)])]

    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
    Types
  115. var chrs: Array[Char]

    memory to store all names sequentially

    memory to store all names sequentially

    Definition Classes
    Names
  116. def classPath: scala.tools.nsc.util.ClassPath[_]

  117. lazy val classfileAnnotArgManifest: ClassManifest[ClassfileAnnotArg]

    Definition Classes
    AnnotationInfos → AnnotationInfos
  118. object cleanup extends CleanUp

  119. def clone(): AnyRef

    Attributes
    protected[lang]
    Definition Classes
    AnyRef
    Annotations
    @throws()
  120. def cloneSymbols[T <: Symbol](syms: List[T], owner: Symbol): List[T]

    Definition Classes
    Symbols
  121. def cloneSymbols[T <: Symbol](syms: List[T]): List[T]

    Definition Classes
    Symbols
  122. object closureElimination extends ClosureElimination

  123. object commonOwnerMap extends TypeMap

    A map to compute the most deeply nested owner that contains all the symbols of thistype or prefixless typerefs/singletype occurrences in given type.

  124. final def compareLengths(xs1: List[_], xs2: List[_]): Int

    Definition Classes
    Types
    Annotations
    @tailrec()
  125. 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
  126. 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.

    Attributes
    protected
  127. def computePhaseDescriptors: List[SubComponent]

    Attributes
    protected
  128. def computePlatformPhases(): Unit

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

  130. object constfold extends ConstantFolder

    Fold constants

  131. object constructors extends Constructors

  132. val containsContravariantExistentialCollector: ContainsVariantExistentialCollector

    Definition Classes
    Types
  133. val containsCovariantExistentialCollector: ContainsVariantExistentialCollector

    Definition Classes
    Types
  134. 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
  135. 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
  136. object copyPropagation extends CopyPropagation

    Copy propagation for optimization

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

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

    Definition Classes
    Types
  139. 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
    Types
    Annotations
    @tailrec()
  140. def createJavadoc: Boolean

  141. final def currentPeriod: Period

    The current period

    The current period

    Definition Classes
    SymbolTable
  142. def currentRun: Run

    The currently active run

  143. def currentRunId: Int

    The id of the currently active run

    The id of the currently active run

    Definition Classes
    GlobalSymbolTable
  144. object deAlias extends TypeMap

    Remove any occurrences of type aliases from this type

  145. object deadCode extends DeadCodeElimination

  146. def debugString(tp: Type): String

    Definition Classes
    TypeDebugging
  147. object definitions extends AbsDefinitions with ValueClassDefinitions

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

  149. def differentOrNone(tp1: Type, tp2: Type): Type

    Definition Classes
    Types
  150. 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
  151. 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
  152. val docComments: HashMap[Symbol, DocComment]

    The raw doc comment map

    The raw doc comment map

    Definition Classes
    DocComments
  153. object dropSingletonType extends TypeMap

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

  154. def echoPhaseSummary(ph: Phase): Unit

  155. def elimAnonymousClass(t: Type): Type

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

    Definition Classes
    Symbols
  157. object emptyValDef extends ValDef

  158. def encode(str: String): TermName

    Definition Classes
    StdNames
  159. 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
  160. final def eq(arg0: AnyRef): Boolean

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

    Definition Classes
    AnyRef → Any
  162. object erasure extends Erasure

  163. def error(msg: String): Unit

  164. 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
  165. 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
  166. 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
  167. 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
  168. 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.

  169. 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
  170. 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
  171. object explicitOuter extends ExplicitOuter

  172. def finalize(): Unit

    Attributes
    protected[lang]
    Definition Classes
    AnyRef
    Annotations
    @throws()
  173. def flagsIntoString(flags: Long, privateWithin: String): String

    Attributes
    protected
    Definition Classes
    Trees → Trees
  174. object flatten extends Flatten

  175. def forInteractive: Boolean

  176. def forJVM: Boolean

    Are we compiling for Java SE ?

    Are we compiling for Java SE ?

    Definition Classes
    GlobalSymbolTable
  177. def forMSIL: Boolean

    Are we compiling for .

    Are we compiling for .NET ?

    Definition Classes
    GlobalSymbolTable
  178. def forScaladoc: Boolean

  179. object gen extends TreeGen

    Generate ASTs

  180. object genJVM extends GenJVM

  181. object genicode extends GenICode

  182. final def getClass(): java.lang.Class[_]

    Definition Classes
    AnyRef → Any
  183. 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.

  184. def getSourceFile(name: String): SourceFile

  185. def getSourceFile(f: AbstractFile): BatchSourceFile

  186. def glb(ts: List[Type]): Type

    Definition Classes
    Types
  187. def globalError(msg: String): Unit

  188. var globalPhase: Phase

  189. 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
  190. def hashCode(): Int

    Definition Classes
    AnyRef → Any
  191. object icodeChecker extends ICodeChecker

  192. object icodeCheckers extends ICodeCheckers

    Icode verification

  193. object icodes extends ICodes

    ICode generator

  194. var infoTransformers: InfoTransformer

    The set of all installed infotransformers

    The set of all installed infotransformers

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

  196. def inform(msg: String): Unit

  197. def informComplete(msg: String): Unit

  198. def informProgress(msg: String): Unit

  199. def informTime(msg: String, start: Long): Unit

  200. object inliner extends Inliners

  201. def instTypeVar(tp: Type): Type

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

    Definition Classes
    Types
  203. 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
  204. 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.

    Definition Classes
    Types
  205. 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
  206. def isConstantType(tp: Type): Boolean

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

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

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

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

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

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

    Definition Classes
    Types
  213. 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
  214. def isRaw(sym: Symbol, args: List[Type]): Boolean

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

    Is type tp a raw type?

    Is type tp a raw type?

    Definition Classes
    Types
  216. def isSameType(tp1: Type, tp2: Type): Boolean

    Do tp1' and tp2' denote equivalent types?

    Do tp1' and tp2' denote equivalent types?

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

    Definition Classes
    Types
  218. 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
  219. def isScriptRun: Boolean

  220. def isSingleType(tp: Type): Boolean

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

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

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

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

    Definition Classes
    Types
  225. 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
  226. def isTermName(name: Name): Boolean

    Definition Classes
    Names → Names
  227. def isTypeName(name: Name): Boolean

    Definition Classes
    Names → Names
  228. final def isValid(period: Period): Boolean

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

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

    Definition Classes
    Types
  231. 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'?

    tparams

    ...

    targs

    ...

    returns

    ...

    Definition Classes
    Types
  232. val javanme: JavaKeywords

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

    Definition Classes
    Types
  234. object lambdaLift extends LambdaLift

  235. object lazyVals extends LazyVals

  236. object liftcode extends LiftCode

  237. 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
  238. 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
  239. lazy val loaders: SymbolLoaders { val global: Global.this.type }

  240. final def log(msg: ⇒ AnyRef): Unit

    Definition Classes
    GlobalSymbolTable
    Annotations
    @inline()
  241. def logError(msg: String, t: Throwable): Unit

  242. def logThrowable(t: Throwable): Unit

  243. 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
  244. def lub(ts: List[Type], depth: Int): Type

    The least upper bound wrt <:< of a list of types

    The least upper bound wrt <:< of a list of types

    Definition Classes
    Types
  245. def lub(ts: List[Type]): Type

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

    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

    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
  247. 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
  248. 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
  249. final val maxTostringRecursions: Int(50)

    Definition Classes
    Types
  250. 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
  251. 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'. All types in tps' are typerefs or singletypes with the same symbol.

    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
  252. val missingAliasException: MissingAliasControl

    Definition Classes
    Types
  253. object mixer extends Mixin

  254. def mkTermName(name: Name): TermName

    Definition Classes
    Names → Names
  255. def mkTypeName(name: Name): TypeName

    Definition Classes
    Names → Names
  256. def nameChars: Array[Char]

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

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

    Definition Classes
    AnyRef
  259. 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
  260. def newCompactTreePrinter(): CompactTreePrinter

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

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

    Definition Classes
    TreePrinters
  263. def newScope: Scope

    Definition Classes
    Scopes
  264. def newStandardTreePrinter(): TreePrinter

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

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

    Definition Classes
    TreePrinters
  267. 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 → Names
  268. def newTermName(s: String): TermName

    create a term name from string

    create a term name from string

    Definition Classes
    Names → Names
  269. 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 → Names
  270. def newTreePrinter(): TreePrinter

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

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

    Definition Classes
    TreePrinters
  273. 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 → Names
  274. def newTypeName(s: String): TypeName

    Create a type name from string

    Create a type name from string

    Definition Classes
    Names → Names
  275. 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 → Names
  276. object nme extends CompilerTermNames with LibraryTermNames with TermNameMangling

    Definition Classes
    StdNames → StdNames
  277. object nodePrinters extends NodePrinters

    Print tree in detailed form

  278. val nodeToString: Global.this.nodePrinters.nodeToString.type

  279. def normalizePlus(tp: Type): Type

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

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

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

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

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

    Definition Classes
    Types
  285. object opt extends AestheticSettings

  286. 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
  287. object overridingPairs extends OverridingPairs

    Computing pairs of overriding/overridden symbols

  288. def paramString(tp: Type): String

    Definition Classes
    TypeDebugging
  289. object perRunCaches extends AnyRef

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

    Definition Classes
    SymbolTable
  291. final def phase: Phase

    Definition Classes
    SymbolTable
  292. def phaseDescriptions: String

    A description of the phases that will run

  293. lazy val phaseDescriptors: List[SubComponent]

  294. final def phaseId(period: Period): Int

    The phase identifier of the given period

    The phase identifier of the given period

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

    The names of the phases.

  296. final def phaseOf(period: Period): Phase

    The phase associated with given period

    The phase associated with given period

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

    The phase which has given index as identifier

    The phase which has given index as identifier

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

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

    Attributes
    protected
  300. lazy val phasesSet: HashSet[SubComponent]

    Attributes
    protected
  301. object pickler extends Pickler

  302. lazy val platform: ThisPlatform

  303. def pluginDescriptions: String

    A description of all the plugins that are loaded

    A description of all the plugins that are loaded

    Definition Classes
    Plugins
  304. def pluginOptionsHelp: String

    Summary of the options for all loaded plugins

    Summary of the options for all loaded plugins

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

    Definition Classes
    Plugins
  306. def polyType(tparams: List[Symbol], tpe: Type): Type

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

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

    Definition Classes
    Types
  307. object posAssigner extends Traverser

  308. def printAllUnits(): Unit

  309. var printInfers: Boolean

  310. var printTypings: Boolean

    Switch to turn on detailed type logs

  311. implicit def promoteTermNamesAsNecessary(name: Name): TermName

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

    Definition Classes
    TreePrinters
  313. 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
  314. def rangePos(source: SourceFile, start: Int, point: Int, end: Int): OffsetPosition

    Definition Classes
    Positions
  315. 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
  316. object rawToExistential extends TypeMap

    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)

  317. object refchecks extends RefChecks

  318. 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
  319. 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
  320. def registerContext(c: Context): Unit

    Register new context; called for every created context

  321. def registerTopLevelSym(sym: Symbol): Unit

    Register top level class (called on entering the class)

  322. def removeAllAnnotationCheckers(): Unit

    Remove all annotation checkers

    Remove all annotation checkers

    Definition Classes
    AnnotationCheckers
  323. var reporter: Reporter

    Definition Classes
    GlobalDocComments
  324. def resetAllAttrs[A <: Tree](x: A): A

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

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

    Definition Classes
    Trees
  325. def resetLocalAttrs[A <: Tree](x: A): A

    Definition Classes
    Trees
  326. object resetPos extends Traverser

  327. def rootLoader: LazyType

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

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

    The run identifier of the given period

    The run identifier of the given period

    Definition Classes
    SymbolTable
  330. 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
  331. object sampleTransform extends SampleTransform

  332. object scalaPrimitives extends ScalaPrimitives

    Scala primitives, used in genicode

  333. var settings: Settings

    Definition Classes
    GlobalSymbolTable
  334. val shorthands: Set[String]

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

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

  336. final val showOuterTests: Boolean(false)

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

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

  338. def signalParseProgress(pos: Position): Unit

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

  339. def singleType(pre: Type, sym: Symbol): Type

    The canonical creator for single-types

    The canonical creator for single-types

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

    Definition Classes
    Types
  341. 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
  342. lazy val sn: SymbolNames

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

    Definition Classes
    Types
  344. 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
  345. 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
  346. object specializeTypes extends SpecializeTypes

  347. 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
  348. 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
  349. object statistics extends Statistics

    Some statistics (normally disabled) set with -Ystatistics

  350. implicit def stringToTermName(s: String): TermName

    Definition Classes
    StdNames
  351. object superAccessors extends SuperAccessors

  352. 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
  353. def symbolCount: Int

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

    Definition Classes
    AnyRef
  355. object syntaxAnalyzer extends SyntaxAnalyzer

  356. object tailCalls extends TailCalls

  357. object terminal extends SubComponent

  358. def throwableAsString(t: Throwable): String

  359. 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
  360. def toString(): String

    Definition Classes
    AnyRef → Any
  361. object tpnme extends CompilerTypeNames with LibraryTypeNames with TypeNameMangling

    Definition Classes
    StdNames → StdNames
  362. val treeBrowser: SwingBrowser

  363. object treeBrowsers extends TreeBrowsers

    Representing ASTs as graphs

  364. object treeChecker extends TreeCheckers

    Tree checker

  365. val treeCopy: LazyTreeCopier

    Definition Classes
    Trees
  366. object treeInfo extends TreeInfo

  367. lazy val treePrinter: TreePrinter

    Definition Classes
    Trees
  368. implicit def treeWrapper(tree: Tree): TreeOps

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

    Definition Classes
    TypeDebugging
  370. object typeDebug extends AnyRef

  371. 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
  372. 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
  373. def typeParamsString(tp: Type): String

    Definition Classes
    TypeDebugging
  374. def typeParamsToExistentials(clazz: Symbol, tparams: List[Symbol]): List[Symbol]

    Definition Classes
    Types
  375. 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
  376. object typeVarToOriginMap extends TypeMap

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

  377. object typer extends Typer

  378. object uncurry extends UnCurry

  379. 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
  380. object undoLog extends AnyRef

    A log of type variable with their original constraints.

  381. def uniqueTypeCount: Int

    Definition Classes
    Types
  382. def useCases(sym: Symbol): List[(Symbol, String, Position)]

    Definition Classes
    DocComments
  383. 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.

  384. def validatePositions(tree: Tree): Unit

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

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

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

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

  389. def weakGlb(ts: List[Type]): (Type, Boolean)

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

    Definition Classes
    Types
  391. object wildcardToTypeVarMap extends TypeMap

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

  392. 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
  393. 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
  394. 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

Deprecated Value Members

  1. def onlyPresentation: Boolean

    Annotations
    @deprecated
    Deprecated

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

  2. def view(s: String): TermName

    Definition Classes
    Names
    Annotations
    @deprecated
    Deprecated

    (Since version 2.9.0)

Inherited from PhaseAssembly

Inherited from Plugins

Inherited from CompilationUnits

Inherited from SymbolTable

Inherited from TypeDebugging

Inherited from DocComments

Inherited from Positions

Inherited from TreePrinters

Inherited from Trees

Inherited from AnnotationCheckers

Inherited from AnnotationInfos

Inherited from StdNames

Inherited from NameManglers

Inherited from InfoTransformers

Inherited from BaseTypeSeqs

Inherited from Definitions

Inherited from Scopes

Inherited from Types

Inherited from Symbols

Inherited from Names

Inherited from Universe

Inherited from StandardDefinitions

Inherited from AnnotationInfos

Inherited from Trees

Inherited from StdNames

Inherited from Names

Inherited from Scopes

Inherited from Constants

Inherited from Types

Inherited from Symbols

Inherited from AnyRef

Inherited from Any