scala.tools.nsc.interactive

Global

class Global extends Global with CompilerControl with RangePositions with ContextTrees with RichCompilationUnits with ScratchPadMaker with Picklers

The main class of the presentation compiler in an interactive environment such as an IDE

Source
Global.scala
Linear Supertypes
Ordering
  1. Alphabetic
  2. By inheritance
Inherited
  1. Hide All
  2. Show all
  1. Global
  2. Picklers
  3. ScratchPadMaker
  4. RichCompilationUnits
  5. ContextTrees
  6. RangePositions
  7. CompilerControl
  8. Global
  9. Positions
  10. MacroContext
  11. Context
  12. DocComments
  13. TreePrinters
  14. Reifiers
  15. Trees
  16. PhaseAssembly
  17. Plugins
  18. CompilationUnits
  19. SymbolTable
  20. SymbolTable
  21. Required
  22. Importers
  23. TypeDebugging
  24. Positions
  25. TreePrinters
  26. Trees
  27. AnnotationCheckers
  28. AnnotationInfos
  29. StdNames
  30. NameManglers
  31. Transforms
  32. InfoTransformers
  33. BaseTypeSeqs
  34. Constants
  35. Definitions
  36. Scopes
  37. ExistentialsAndSkolems
  38. Kinds
  39. Types
  40. Symbols
  41. Names
  42. Collections
  43. Universe
  44. StandardNames
  45. StandardDefinitions
  46. AnnotationInfos
  47. TreePrinters
  48. Positions
  49. Trees
  50. Names
  51. Scopes
  52. Constants
  53. Types
  54. Symbols
  55. AnyRef
  56. Any
Visibility
  1. Public
  2. All

Instance Constructors

  1. new Global(settings: Settings, _reporter: Reporter, projectName: String = "")

Type Members

  1. abstract class AbsSymbolImpl extends AbsSymbol

  2. abstract class AbsTypeImpl extends AbsType

  3. type AbstractFileType = AbstractFile

    Definition Classes
    GlobalRequired
  4. trait AbstractTypeMixin extends TypeSymbol

    Might be mixed into TypeSymbol or TypeSkolem.

  5. trait AbstractTypeRef extends TypeRef with NonClassTypeRef

  6. class AbstractTypeSymbol extends TypeSymbol with AbstractTypeMixin

  7. trait AliasTypeRef extends TypeRef with NonClassTypeRef

  8. class AliasTypeSymbol extends TypeSymbol

  9. trait AlphaNumName extends Name

    A name that contains no operator chars nor dollar signs.

  10. trait Annotatable[Self] extends AnyRef

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

    A type carrying some annotations.

  12. abstract class AnnotationChecker extends AnyRef

    An additional checker for annotations on types.

  13. trait AnnotationFilter extends TypeMap

  14. sealed abstract class AnnotationInfo extends Product3[Type, List[Tree], List[(Name, ClassfileAnnotArg)]]

    Typed information about an annotation.

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

  16. class AppliedTypeVar extends TypeVar

    Precondition: zipped params/args nonEmpty.

  17. class ArgsTypeRef extends TypeRef with UniqueType

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

    Represents an array of classfile annotation arguments

  19. class AsSeenFromMap extends TypeMap with KeepOnlyTypeConstraints

    A map to compute the asSeenFrom method

  20. case class AskInstrumentedItem(source: SourceFile, line: Int, response: Response[(String, Array[Char])]) extends WorkItem with Product with Serializable

  21. case class AskLinkPosItem(sym: Symbol, source: SourceFile, response: Response[Position]) extends WorkItem with Product with Serializable

  22. case class AskLoadedTypedItem(source: SourceFile, response: Response[Tree]) extends WorkItem with Product with Serializable

  23. case class AskParsedEnteredItem(source: SourceFile, keepLoaded: Boolean, response: Response[Tree]) extends WorkItem with Product with Serializable

  24. case class AskScopeCompletionItem(pos: Position, response: Response[List[Member]]) extends WorkItem with Product with Serializable

  25. class AskToDoFirstItem extends WorkItem

  26. case class AskTypeAtItem(pos: Position, response: Response[Tree]) extends WorkItem with Product with Serializable

  27. case class AskTypeCompletionItem(pos: Position, response: Response[List[Member]]) extends WorkItem with Product with Serializable

  28. case class AskTypeItem(source: SourceFile, forceReload: Boolean, response: Response[Tree]) extends WorkItem with Product with Serializable

  29. class BaseTypeSeq extends AnyRef

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

  30. 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:

  31. class ChangeOwnerTraverser extends Traverser

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

    A class representing a class info

  33. class ClassSymbol extends TypeSymbol

    A class for class symbols

  34. trait ClassTypeRef extends TypeRef

  35. abstract class ClassfileAnnotArg extends Product

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

  36. trait CommonNames extends AnyRef

  37. class CommonOwnerMap extends TypeTraverserWithResult[Symbol]

    Attributes
    protected
  38. class CompactTreePrinter extends TreePrinter

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

  39. class CompilationUnit extends AnyRef

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

  40. class CompleteAnnotationInfo extends AnnotationInfo

  41. abstract class CompoundType extends Type

    A common base class for intersection types and class types

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

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

    A class representing a constant type.

  44. class ContainsCollector extends TypeCollector[Boolean]

    A map to implement the contains method.

  45. class ContainsTypeCollector extends TypeCollector[Boolean]

    A map to implement the contains method.

  46. type Context = Context

    Definition Classes
    ContextTrees
  47. class ContextTree extends AnyRef

    A context tree contains contexts that are indexed by positions.

  48. type Contexts = ArrayBuffer[ContextTree]

    Definition Classes
    ContextTrees
  49. case class CyclicReference(sym: Symbol, info: Type) extends TypeError with Product with Serializable

    An exception for cyclic references of symbol definitions

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

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

  52. class DependencyGraph extends AnyRef

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

  53. type Diff = (Int, Int, String)

    Definition Classes
    Picklers
  54. case class DocComment(raw: String, pos: Position) extends Product with Serializable

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

    Documented definition, eliminated by analyzer

  56. class ErrorScope extends Scope

    The error scope.

  57. class ExistentialExtrapolation extends TypeMap with VariantTypeMap

    Used by existentialAbstraction.

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

    Definition Classes
    Types → Types
  59. class ExpansionLimitExceeded extends Exception

  60. case class FilesDeletedItem(sources: List[SourceFile], response: Response[Unit]) extends WorkItem with Product with Serializable

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

    A map to implement the filter method.

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

    A map to implement the filter method.

  63. class ForEachTypeTraverser extends TypeTraverser

  64. class ForeachPartialTreeTraverser extends Traverser

  65. class FreeVar extends TermSymbol

  66. abstract class GlobalPhase extends Phase

  67. class HKTypeVar extends TypeVar

    Precondition: params.

  68. abstract class Importer extends AnyRef

  69. abstract class InfoTransformer extends AnyRef

  70. class InstantiateDependentMap extends TypeMap with KeepOnlyTypeConstraints

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

  72. class JavaKeywords extends AnyRef

  73. class JavaMethodType extends MethodType

  74. trait KeepOnlyTypeConstraints extends TypeMap with AnnotationFilter

  75. trait Keywords extends AnyRef

    This should be the first trait in the linearization.

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

  77. final class LazyAnnotationInfo extends AnnotationInfo

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

  78. abstract class LazyPolyType extends LazyType

  79. class LazyTreeCopier extends LazyTreeCopier with TreeCopier

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

    A class representing an as-yet unevaluated type.

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

  82. class Locator extends Traverser

    A locator for trees with given positions.

  83. class MalformedType extends TypeError

    A throwable signalling a malformed type

  84. class MappedBaseTypeSeq extends BaseTypeSeq

  85. abstract class Member extends AnyRef

    Info given for every member found by completion

  86. class MethodSymbol extends TermSymbol

    A class for method symbols

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

    A class representing a method type with parameters.

  88. class MissingAliasControl extends Throwable with ControlThrowable

  89. class MissingTypeControl extends Throwable with ControlThrowable

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

  91. 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!

  92. class ModuleSymbol extends TermSymbol

    A class for module symbols

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

    The name class.

  94. trait NameManglingCommon extends AnyRef

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

    A class representing types with a name.

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

    Represents a nested classfile annotation

  97. class NoArgsTypeRef extends TypeRef with UniqueType

  98. class NoCommonType extends Throwable with ControlThrowable

  99. class NoSymbol extends Symbol

    An object representing a missing symbol

  100. trait NonClassTypeRef extends TypeRef

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

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

    Definition Classes
    Types → Types
  103. class OnTypeError[T] extends AnyRef

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

  105. class PackageClassInfoType extends ClassInfoType

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

    Only used during parsing

  107. 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
  108. 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 *).

  109. type Position = Position

    Definition Classes
    Positions → Positions
  110. case class Range(pos: Position, tree: Tree) extends Product with Serializable

  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 ReferenceToBoxed(idt: Ident) extends Tree with TermTree with Product with Serializable

    Marks underlying reference to id as boxed.

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

  114. final class RefinedType0 extends RefinedType

  115. class ReifierError extends Throwable

    A throwable signalling a reification error

  116. case class ReloadItem(sources: List[SourceFile], response: Response[Unit]) extends WorkItem with Product with Serializable

  117. type Response[T] = Response[T]

    Definition Classes
    CompilerControl
  118. class ResponseMap extends MultiHashMap[SourceFile, Response[Tree]]

  119. trait RewrappingTypeProxy extends Type with SimpleTypeProxy

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

  120. class RichCompilationUnit extends CompilationUnit

  121. class Run extends AnyRef

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

  122. type RunId = Int

    An ordinal number for compiler runs.

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

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

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

  125. class Scope extends Iterable[Symbol]

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

  126. class ScopeEntry extends AnyRef

  127. case class ScopeMember(sym: Symbol, tpe: Type, accessible: Boolean, viaImport: Tree) extends Member with Product with Serializable

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

    Array selection <qualifier> .

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

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

  131. abstract class SingletonType extends SubType with SimpleTypeProxy

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

  132. class StrictTreeCopier extends StrictTreeCopier with TreeCopier

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

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

  134. class SubTypePair extends AnyRef

  135. abstract class SubstMap[T] extends TypeMap

    A base class to compute all substitutions

  136. class SubstSymMap extends SubstMap[Symbol]

    A map to implement the substSym method.

  137. class SubstThisAndSymMap extends SubstSymMap

  138. class SubstThisMap extends TypeMap

    A map to implement the substThis method.

  139. class SubstTypeMap extends SubstMap[Type]

    A map to implement the subst method.

  140. class SubstWildcardMap extends TypeMap

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

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

  143. abstract class Symbol extends AbsSymbolImpl with HasFlags with Annotatable[Symbol]

    The class for all symbols

  144. abstract class SymbolNames extends AnyRef

  145. sealed abstract class TermName extends Name

    Definition Classes
    Names → Names
  146. trait TermNameMangling extends NameManglingCommon

  147. trait TermNames extends Keywords with CommonNames

  148. class TermSymbol extends Symbol

    A class for term symbols

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

    Definition Classes
    Global
  150. abstract case class ThisType(sym: Symbol) extends SingletonType with Product with Serializable

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

  151. class Transformer extends Transformer

    Definition Classes
    Trees → Trees
  152. trait TreeCopier extends TreeCopierOps

    Definition Classes
    Trees → Trees
  153. class TreeMatchTemplate extends AnyRef

  154. class TreeOps extends AnyRef

  155. class TreePrinter extends TreePrinter

    Definition Classes
    TreePrintersTreePrinters → TreePrinters
  156. class TreeReplacer extends Transformer

    A transformer that replaces tree from with tree to in a given tree

  157. class TreeSubstituter extends Transformer

  158. class TreeSymSubstTraverser extends TypeMapTreeSubstituter

  159. class TreeSymSubstituter extends Transformer

    Substitute symbols in from with symbols in to.

  160. class TreeTypeSubstituter extends TypeMapTreeSubstituter

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

    The base class for all types

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

  163. abstract class TypeCollector[T] extends TypeTraverser

  164. class TypeConstraint extends AnyRef

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

  165. class TypeError extends Throwable

    A throwable signalling a type error

  166. abstract class TypeMap extends (Type) ⇒ Type

    A prototype for mapping a function over all possible types

  167. class TypeMapTreeSubstituter extends Traverser

  168. case class TypeMember(sym: Symbol, tpe: Type, accessible: Boolean, inherited: Boolean, viaView: Symbol) extends Member with Product with Serializable

  169. sealed abstract class TypeName extends Name

    Definition Classes
    Names → Names
  170. trait TypeNameMangling extends NameManglingCommon

  171. trait TypeNames extends CommonNames

  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

    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 TypeVar extends Type

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

  179. class TypedLocator extends Locator

  180. class TyperResult extends Throwable with ControlThrowable

  181. class TyperRun extends Run

    The typer run

  182. class UndoLog extends AnyRef

  183. final class UniqueConstantType extends ConstantType with UniqueType

  184. final class UniqueSingleType extends SingleType with UniqueType

  185. final class UniqueSuperType extends SuperType with UniqueType

  186. final class UniqueThisType extends ThisType with UniqueType

  187. trait UniqueType extends Product

  188. final class UniqueTypeBounds extends TypeBounds with UniqueType

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

  190. class ValidateException extends Exception

  191. trait ValueClassDefinitions extends AnyRef

  192. trait VariantTypeMap extends TypeMap

  193. case class WorkEvent(atNode: Int, atMillis: Long) extends Product with Serializable

  194. abstract class WorkItem extends () ⇒ Unit

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

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

    Definition Classes
    Trees
  9. object ApproximateDependentMap extends TypeMap

  10. object ArrayAnnotArg extends ArrayAnnotArgExtractor with Serializable

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

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

    Block factory that flattens directly nested blocks.

    Block factory that flattens directly nested blocks.

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

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

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

    casedef shorthand

    casedef shorthand

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

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

    sym

    the class symbol

    returns

    the implementation template

    Definition Classes
    Trees
  19. object ClassInfoType extends ClassInfoTypeExtractor with Serializable

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

    Definition Classes
    Constants
  21. object ConsoleWriter extends Writer

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

  22. object Constant extends ConstantExtractor with Serializable

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

    Definition Classes
    Types → Types
  24. val CyclicInheritance: Throwable

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

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

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

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

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

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

    Definition Classes
    Constants
  31. object EmptyScope extends Scope

    The empty scope (immutable).

  32. def EmptyTermName: TermName

    Definition Classes
    Names
  33. lazy val EmptyTreeTypeSubstituter: TreeTypeSubstituter

    Definition Classes
    Trees
  34. def EmptyTypeName: TypeName

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

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

    A map to implement the contains method.

  37. object ErrorType extends Type with Product with Serializable

    An object representing an erroneous type

  38. object ExistentialType extends ExistentialTypeExtractor with Serializable

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

    Definition Classes
    Constants
  40. val GlbFailure: Throwable

    Definition Classes
    Types
  41. object HasTypeMember extends AnyRef

  42. object HasTypeParams extends AnyRef

  43. def Ident(sym: Symbol): Ident

    Definition Classes
    Trees
  44. def Ident(name: String): Ident

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

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

  47. 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
  48. final val JustParsed: Int(-1)

    The status value of a unit that has not yet been typechecked

    The status value of a unit that has not yet been typechecked

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

    Definition Classes
    Trees
  50. object LiteralAnnotArg extends LiteralAnnotArgExtractor with Serializable

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

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

    Definition Classes
    Types
  53. val MaxPhases: Int

    Definition Classes
    Global
  54. object MethodType extends MethodTypeExtractor with Serializable

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

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

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

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

    sym

    the class symbol

    impl

    the implementation template

    Definition Classes
    Trees
  59. object NestedAnnotArg extends NestedAnnotArgExtractor with Serializable

    Definition Classes
    AnnotationInfos → AnnotationInfos
  60. def New(tpe: Type, args: Tree*): Tree

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

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

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

    Definition Classes
    Trees
  62. def New(tpt: Tree, argss: List[List[Tree]]): Tree

    Definition Classes
    Trees
  63. object NoCompilationUnit extends CompilationUnit

    An object representing a missing compilation unit.

  64. lazy val NoContext: Global.this.analyzer.NoContext.type

    Definition Classes
    ContextTrees
  65. val NoKindErrors: KindErrors

    Definition Classes
    Kinds
  66. lazy val NoMods: Modifiers

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

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

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

    An object representing a non-existing prefix

  70. final val NoRunId: Int(0)

    Definition Classes
    SymbolTable
  71. lazy val NoSymbol: NoSymbol

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

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

    An object representing a non-existing type

  74. final val NotLoaded: Int(-2)

    The status value of a unit that has not yet been loaded

    The status value of a unit that has not yet been loaded

    Definition Classes
    RichCompilationUnits
  75. final val NullTag: Int(11)

    Definition Classes
    Constants
  76. object NullaryMethodType extends NullaryMethodTypeExtractor with Serializable

    Definition Classes
    Types → Types
  77. final val PartiallyChecked: Int(0)

    The status value of a unit that has been partially typechecked

    The status value of a unit that has been partially typechecked

    Definition Classes
    RichCompilationUnits
  78. object PolyType extends PolyTypeExtractor with Serializable

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

    Definition Classes
    Types → Types
  80. object Scope extends AnyRef

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

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

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

    Definition Classes
    Constants
  84. object SingleType extends SingleTypeExtractor with Serializable

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

    Definition Classes
    Constants
  86. object StripAnnotationsMap extends TypeMap

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

    Definition Classes
    Trees
  88. object SuperType extends SuperTypeExtractor with Serializable

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

    Definition Classes
    Trees
  91. object ThisType extends ThisTypeExtractor with Serializable

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

    Definition Classes
    Types → Types
  93. 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
  94. 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
  95. object TypeRef extends TypeRefExtractor with Serializable

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

    Definition Classes
    Trees
  97. object TypeVar extends AnyRef

  98. final val UnitTag: Int(1)

    Definition Classes
    Constants
  99. object UnmappableAnnotation extends CompleteAnnotationInfo

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

  101. def ValDef(sym: Symbol): ValDef

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

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

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

  104. def abort(msg: String): Nothing

    Definition Classes
    GlobalSymbolTable
  105. implicit def abstractFile: Pickler[AbstractFile]

    Definition Classes
    Picklers
  106. 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
  107. implicit def action: Pickler[() ⇒ Unit]

    Definition Classes
    Picklers
  108. 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
  109. 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
  110. object adaptToNewRunMap extends TypeMap

  111. def addAnnotationChecker(checker: AnnotationChecker): Unit

    Register an annotation checker.

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

    Definition Classes
    AnnotationCheckers
  112. 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
  113. def addContext(contexts: Contexts, context: Context, cpos: Position): Unit

    Insert a context with non-transparent position cpos at correct position into a buffer of context trees.

    Insert a context with non-transparent position cpos at correct position into a buffer of context trees.

    Definition Classes
    ContextTrees
  114. def addContext(contexts: Contexts, context: Context): Unit

    Insert a context at correct position into a buffer of context trees.

    Insert a context at correct position into a buffer of context trees. If the context has a transparent position, add it multiple times at the positions of all its solid descendant trees.

    Definition Classes
    ContextTrees
  115. 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
  116. implicit def addOnTypeError[T](x: ⇒ T): OnTypeError[T]

  117. def addToPhasesSet(sub: SubComponent, descr: String): Unit

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

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

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

    Definition Classes
    Global
    Annotations
    @inline()
  121. var allSources: List[SourceFile]

    A list giving all files to be typechecked in the order they should be checked.

    A list giving all files to be typechecked in the order they should be checked.

    Attributes
    protected
  122. object analysis extends TypeFlowAnalysis

    ICode analysis for optimization

  123. lazy val analyzer: Analyzer { val global: Global.this.type }

    Definition Classes
    Global
  124. 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
  125. 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
  126. 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
  127. 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
  128. def appliedType(tycon: Type, args: List[Type]): Type

    A creator for type applications

    A creator for type applications

    Definition Classes
    Types
  129. 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
  130. 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
  131. def asCompactString(t: Tree): String

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

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

    Definition Classes
    TreePrinters
  134. def ask[A](op: () ⇒ A): A

    Asks for a computation to be done quickly on the presentation compiler thread

    Asks for a computation to be done quickly on the presentation compiler thread

    Definition Classes
    CompilerControl
  135. def askFilesDeleted(sources: List[SourceFile], response: Response[Unit]): Unit

    Removes source files and toplevel symbols, and issues a new typer run.

    Removes source files and toplevel symbols, and issues a new typer run. Returns () to syncvar response on completion.

    Definition Classes
    CompilerControl
  136. def askInstrumented(source: SourceFile, line: Int, response: Response[(String, Array[Char])]): Unit

    Set sync var response to a pair consisting of

    Set sync var response to a pair consisting of

    • the fully qualified name of the first top-level object definition in the file. or "" if there are no object definitions.
    • the text of the instrumented program which, when run, prints its output and all defined values in a comment column.
    source

    The source file to be analyzed

    response

    The response.

    Definition Classes
    CompilerControl
  137. def askLinkPos(sym: Symbol, source: SourceFile, response: Response[Position]): Unit

    Sets sync var response to the position of the definition of the given link in the given sourcefile.

    Sets sync var response to the position of the definition of the given link in the given sourcefile.

    sym

    The symbol referenced by the link (might come from a classfile)

    source

    The source file that's supposed to contain the definition

    response

    A response that will be set to the following: If source contains a definition that is referenced by the given link the position of that definition, otherwise NoPosition. Note: This operation does not automatically load source. If source is unloaded, it stays that way.

    Definition Classes
    CompilerControl
  138. implicit def askLinkPosItem: CondPickler[AskLinkPosItem]

    Definition Classes
    Picklers
  139. def askLoadedTyped(source: SourceFile, response: Response[Tree]): Unit

    If source is not yet loaded, loads it, and starts a new run, otherwise continues with current pass.

    If source is not yet loaded, loads it, and starts a new run, otherwise continues with current pass. Waits until source is fully type checked and returns body in response.

    source

    The source file that needs to be fully typed.

    response

    The response, which is set to the fully attributed tree of source. If the unit corresponding to source has been removed in the meantime the a NoSuchUnitError is raised in the response.

    Definition Classes
    CompilerControl
  140. implicit def askLoadedTypedItem: CondPickler[AskLoadedTypedItem]

    Definition Classes
    Picklers
  141. def askParsedEntered(source: SourceFile, keepLoaded: Boolean, response: Response[Tree]): Unit

    Set sync var response to the parse tree of source with all top-level symbols entered.

    Set sync var response to the parse tree of source with all top-level symbols entered.

    source

    The source file to be analyzed

    keepLoaded

    If set to true, source file will be kept as a loaded unit afterwards. If keepLoaded is false the operation is run at low priority, only after everything is brought up to date in a regular type checker run.

    response

    The response.

    Definition Classes
    CompilerControl
  142. implicit def askParsedEnteredItem: CondPickler[AskParsedEnteredItem]

    Definition Classes
    Picklers
  143. def askReload(sources: List[SourceFile], response: Response[Unit]): Unit

    Makes sure a set of compilation units is loaded and parsed.

    Makes sure a set of compilation units is loaded and parsed. Returns () to syncvar response on completion. Afterwards a new background compiler run is started with the given sources at the head of the list of to-be-compiled sources.

    Definition Classes
    CompilerControl
  144. def askReset(): Unit

    Cancels current compiler run and start a fresh one where everything will be re-typechecked (but not re-loaded).

    Cancels current compiler run and start a fresh one where everything will be re-typechecked (but not re-loaded).

    Definition Classes
    CompilerControl
  145. def askScopeCompletion(pos: Position, response: Response[List[Member]]): Unit

    Sets sync var response to list of members that are visible as members of the scope enclosing pos.

    Sets sync var response to list of members that are visible as members of the scope enclosing pos.

    Definition Classes
    CompilerControl
  146. implicit def askScopeCompletionItem: CondPickler[AskScopeCompletionItem]

    Definition Classes
    Picklers
  147. def askShutdown(): Unit

    Tells the compile server to shutdown, and not to restart again

    Tells the compile server to shutdown, and not to restart again

    Definition Classes
    CompilerControl
  148. def askStructure(keepSrcLoaded: Boolean)(source: SourceFile, response: Response[Tree]): Unit

    If source if not yet loaded, get an outline view with askParseEntered.

    If source if not yet loaded, get an outline view with askParseEntered. If source is loaded, wait for it to be typechecked. In both cases, set response to parsed (and possibly typechecked) tree.

    keepSrcLoaded

    If set to true, source file will be kept as a loaded unit afterwards.

    Definition Classes
    CompilerControl
  149. def askToDoFirst(source: SourceFile): Unit

    Asks to do unit corresponding to given source file on present and subsequent type checking passes.

    Asks to do unit corresponding to given source file on present and subsequent type checking passes. If the file is in the 'crashedFiles' ignore list it is removed and typechecked normally.

    Definition Classes
    CompilerControl
  150. implicit def askToDoFirstItem: CondPickler[AskToDoFirstItem]

    Definition Classes
    Picklers
  151. def askType(source: SourceFile, forceReload: Boolean, response: Response[Tree]): Unit

    Sets sync var response to the fully attributed & typechecked tree contained in source.

    Sets sync var response to the fully attributed & typechecked tree contained in source.

    Definition Classes
    CompilerControl
  152. def askTypeAt(pos: Position, response: Response[Tree]): Unit

    Sets sync var response to the smallest fully attributed tree that encloses position pos.

    Sets sync var response to the smallest fully attributed tree that encloses position pos. Note: Unlike for most other ask... operations, the source file belonging to pos needs not be loaded.

    Definition Classes
    CompilerControl
  153. implicit def askTypeAtItem: CondPickler[AskTypeAtItem]

    Definition Classes
    Picklers
  154. def askTypeCompletion(pos: Position, response: Response[List[Member]]): Unit

    Sets sync var response to list of members that are visible as members of the tree enclosing pos, possibly reachable by an implicit.

    Sets sync var response to list of members that are visible as members of the tree enclosing pos, possibly reachable by an implicit.

    Definition Classes
    CompilerControl
  155. implicit def askTypeCompletionItem: CondPickler[AskTypeCompletionItem]

    Definition Classes
    Picklers
  156. implicit def askTypeItem: CondPickler[AskTypeItem]

    Definition Classes
    Picklers
  157. final def assert(assertion: Boolean): Unit

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

    Definition Classes
    Global
    Annotations
    @inline()
  159. 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()
  160. final def atPhaseNotLaterThan[T](target: Phase)(op: ⇒ T): T

    Definition Classes
    SymbolTable
    Annotations
    @inline()
  161. def atPos[T <: Tree](pos: Position)(tree: T): T

    Position a tree.

    Position a tree. This means: Set position of a node and position all its unpositioned children.

    Definition Classes
    RangePositionsTrees
  162. 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
  163. def baseTypeOfNonClassTypeRef(tpe: NonClassTypeRef, clazz: Symbol): Type

    Attributes
    protected
    Definition Classes
    Types
  164. 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
  165. final def beforeErasure[T](op: ⇒ T): T

    Definition Classes
    Global
    Annotations
    @inline()
  166. 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()
  167. 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
  168. object binarynme extends AnyRef

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

  169. def buildCompilerFromPhasesSet(): List[SubComponent]

    Definition Classes
    PhaseAssembly
  170. 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
  171. def captureVariable(vble: Symbol): Unit

    Definition Classes
    MacroContext → Context
  172. def checkForMoreWork(pos: Position): Unit

    Attributes
    protected
  173. 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
  174. def checkNoResponsesOutstanding(): Unit

  175. var chrs: Array[Char]

    Memory to store all names sequentially.

    Memory to store all names sequentially.

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

    Definition Classes
    Global
  177. lazy val classfileAnnotArgManifest: ClassManifest[ClassfileAnnotArg]

    Definition Classes
    AnnotationInfos → AnnotationInfos
  178. object cleanup extends CleanUp

  179. def clearIgnoredFiles(): Unit

    Flush the buffer of sources that are ignored during background compilation.

  180. 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
  181. def clone(): AnyRef

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

    Convenience functions which derive symbols by cloning.

    Convenience functions which derive symbols by cloning.

    Definition Classes
    Symbols
  183. 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
  184. def cloneSymbolsAtOwner(syms: List[Symbol], owner: Symbol): List[Symbol]

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

    Definition Classes
    Symbols
  186. object closureElimination extends ClosureElimination

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

    Definition Classes
    Collections
  188. def commonOwnerMap: CommonOwnerMap

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

    Definition Classes
    Types
    Annotations
    @tailrec()
  190. 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
  191. 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
    Definition Classes
    Global
  192. def computePhaseDescriptors: List[SubComponent]

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

    Attributes
    protected
    Definition Classes
    Global
  194. 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

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

    Definition Classes
    Symbols
  196. object constfold extends ConstantFolder

    Fold constants

  197. object constructors extends Constructors

  198. def containsExistential(tpe: Type): Boolean

    Definition Classes
    Types
  199. 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
  200. 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
  201. object copyPropagation extends CopyPropagation

    Copy propagation for optimization

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

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

    Definition Classes
    Types
  204. 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()
  205. 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
  206. def createFromClonedSymbolsAtOwner[T](syms: List[Symbol], owner: Symbol, tpe: Type)(creator: (List[Symbol], Type) ⇒ T): T

    Definition Classes
    Symbols
  207. def createJavadoc: Boolean

    Definition Classes
    Global
  208. final def currentPeriod: Period

    The current period.

    The current period.

    Definition Classes
    SymbolTable
  209. def currentRun: Run

    The currently active run

    The currently active run

    Definition Classes
    Global
  210. def currentRunId: Int

    The id of the currently active run

    The id of the currently active run

    Definition Classes
    GlobalSymbolTable
  211. var currentSettings: Settings

    Definition Classes
    Global
  212. def currentSource: SourceFile

    Definition Classes
    Global
  213. def currentUnit: CompilationUnit

    Definition Classes
    Global
  214. object deAlias extends TypeMap

    Remove any occurrences of type aliases from this type

  215. object deadCode extends DeadCodeElimination

  216. val debugIDE: Boolean

  217. def debugInfo(source: SourceFile, start: Int, length: Int): String

  218. final def debugLog(msg: ⇒ String): Unit

    Print msg only when debugIDE is true.

    Print msg only when debugIDE is true.

    Annotations
    @inline()
  219. def debugString(tp: Type): String

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

    Override with final implementation for inlining.

    Override with final implementation for inlining.

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

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

    Definition Classes
    TreePrinters
  223. def defaultThrowable[T <: Throwable]: CondPickler[T]

    Definition Classes
    Picklers
  224. def defineBaseClassesOfCompoundType(tpe: CompoundType): Unit

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

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

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

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

    Attributes
    protected
    Definition Classes
    Types
  229. object definitions extends AbsDefinitions with ValueClassDefinitions

    Definition Classes
    Definitions → StandardDefinitions
  230. val deletedTopLevelSyms: LinkedHashSet[Symbol] with SynchronizedSet[Symbol]

    The top level classes and objects no longer seen in the presentation compiler

  231. def delta(f: AbstractFile, cs: Array[Char]): (Int, Int, String)

    Definition Classes
    Picklers
  232. def demandNewCompilerRun(): Unit

  233. object dependencyAnalysis extends SubComponent with DependencyAnalysis

  234. 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
  235. 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
  236. 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
  237. 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
  238. 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
  239. def differentOrNone(tp1: Type, tp2: Type): Type

    Definition Classes
    Types
  240. def doLocateContext(pos: Position): Context

    Returns the smallest context that contains given pos, throws FatalError if none exists.

    Returns the smallest context that contains given pos, throws FatalError if none exists.

    Definition Classes
    CompilerControl
  241. 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
  242. 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
  243. val docComments: HashMap[Symbol, DocComment]

    The raw doc comment map

    The raw doc comment map

    Definition Classes
    DocComments
  244. object dropAllRefinements extends TypeMap

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

  245. object dropRepeatedParamType extends TypeMap

  246. object dropSingletonType extends TypeMap

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

  247. def duplicateTree(tree: Tree): Tree

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

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

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

    Definition Classes
    Types
  251. implicit def emptyAction: CondPickler[EmptyAction]

    Definition Classes
    Picklers
  252. val emptySymbolArray: Array[Symbol]

    Definition Classes
    Symbols
  253. object emptyValDef extends ValDef

    Definition Classes
    Trees → Trees
  254. def enableIgnoredFile(file: AbstractFile): Unit

    Remove a crashed file from the ignore buffer.

    Remove a crashed file from the ignore buffer. Background compilation will take it into account and errors will be reported against it.

  255. val enableTypeVarExperimentals: Boolean

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

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

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

    Definition Classes
    AnyRef → Any
  260. object erasure extends Erasure

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

    Definition Classes
    Global
  262. val etaExpandKeepsStar: Boolean

    Attributes
    protected
    Definition Classes
    GlobalTypes
  263. 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
  264. def existentialsInType(tpe: Type): List[Symbol]

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

    Definition Classes
    Collections
  266. 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
  267. 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
  268. 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
  269. 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.

  270. 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
  271. 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
  272. 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
  273. object explicitOuter extends ExplicitOuter

  274. def finalize(): Unit

    Attributes
    protected[lang]
    Definition Classes
    AnyRef
    Annotations
    @throws()
  275. def findOverlapping(cts: List[Tree]): List[(Tree, Tree)]

    Does given list of trees have mutually non-overlapping positions? pre: None of the trees is transparent

    Does given list of trees have mutually non-overlapping positions? pre: None of the trees is transparent

    Definition Classes
    RangePositions
  276. 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
  277. final def flatMap2[A, B, C](xs1: List[A], xs2: List[B])(f: (A, B) ⇒ List[C]): List[C]

    Definition Classes
    Collections
  278. object flatten extends Flatten

  279. def focusPos(pos: Position): Position

    Definition Classes
    PositionsPositions
  280. def forInteractive: Boolean

    Definition Classes
    GlobalGlobalRequired
  281. def forJVM: Boolean

    Definition Classes
    Global
  282. def forMSIL: Boolean

    Are we compiling for .

    Are we compiling for .NET?

    Definition Classes
    GlobalSymbolTable
  283. def forScaladoc: Boolean

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

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

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

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

    Definition Classes
    Collections
  288. def freshExistentialName(suffix: String): TypeName

    Attributes
    protected
    Definition Classes
    Symbols
  289. lazy val freshRunReq: CondPickler[FreshRunReq]

    Definition Classes
    Picklers
  290. def fromDeBruijn(owner: Symbol): TypeMap

    Definition Classes
    Types
  291. object fullnme extends TermNames

  292. object fulltpnme extends TypeNames

    For fully qualified type names.

  293. object gen extends TreeGen

    Generate ASTs

  294. object genJVM extends GenJVM

  295. object genicode extends GenICode

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

    Definition Classes
    AnyRef → Any
  297. 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
  298. def getFile(source: AbstractFile, segments: Array[String], suffix: String): File

    Definition Classes
    Global
  299. def getInstrumented(source: SourceFile, line: Int, response: Response[(String, Array[Char])]): Unit

  300. def getOrCreateUnitOf(source: SourceFile): RichCompilationUnit

    The compilation unit corresponding to a source file if it does not yet exist create a new one atomically Note: We want to remove this.

    The compilation unit corresponding to a source file if it does not yet exist create a new one atomically Note: We want to remove this.

    Attributes
    protected[interactive]
  301. var getParsedEnteredResponses: ResponseMap

    A map that associates with each abstract file the set of responses that ware waiting (via build) for the unit associated with the abstract file to be parsed and entered

    A map that associates with each abstract file the set of responses that ware waiting (via build) for the unit associated with the abstract file to be parsed and entered

    Attributes
    protected
  302. def getSourceFile(name: String): SourceFile

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

    Definition Classes
    Global
  304. def getUnit(s: SourceFile): Option[RichCompilationUnit]

    Work through toBeRemoved list to remove any units.

    Work through toBeRemoved list to remove any units. Then return optionally unit associated with given source.

    Attributes
    protected[interactive]
  305. def getUnitOf(s: SourceFile): Option[RichCompilationUnit]

    Return the compilation unit attached to a source file, or None if source is not loaded.

    Return the compilation unit attached to a source file, or None if source is not loaded.

    Definition Classes
    CompilerControl
  306. 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
  307. 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
  308. def globalError(msg: String): Unit

    Definition Classes
    Global
  309. var globalPhase: Phase

    Definition Classes
    Global
  310. 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
  311. def hashCode(): Int

    Definition Classes
    AnyRef → Any
  312. object icodeChecker extends ICodeChecker

  313. object icodeCheckers extends ICodeCheckers

    Icode verification

  314. object icodes extends ICodes

    ICode generator

  315. var ids: Int

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

    Definition Classes
    Global
    Annotations
    @inline()
  317. 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
  318. var infoTransformers: InfoTransformer

    The set of all installed infotransformers.

    The set of all installed infotransformers.

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

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

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

    Definition Classes
    Global
  322. final def informIDE(msg: ⇒ String): Unit

    Inform with msg only when verboseIDE is true.

    Inform with msg only when verboseIDE is true.

    Annotations
    @inline()
  323. def informProgress(msg: String): Unit

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

    Definition Classes
    Global
  325. object inlineExceptionHandlers extends InlineExceptionHandlers

  326. object inliner extends Inliners

  327. def instTypeVar(tp: Type): Type

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

    Definition Classes
    Types
  329. def instrument(source: SourceFile, line: Int): (String, Array[Char])

    Compute an instrumented version of a sourcefile.

    Compute an instrumented version of a sourcefile.

    source

    The given sourcefile.

    line

    The line up to which results should be printed, -1 = whole document.

    returns

    A pair consisting of

    • the fully qualified name of the first top-level object definition in the file. or "" if there are no object definitions.
    • the text of the instrumented program which, when run, prints its output and all defined values in a comment column.
    Attributes
    protected
    Definition Classes
    ScratchPadMaker
  330. implicit def interruptReq: Pickler[InterruptReq]

    Definition Classes
    Picklers
  331. 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
  332. 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
  333. 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
  334. def isConstantType(tp: Type): Boolean

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

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

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

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

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

    Definition Classes
    Any
  340. 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
  341. def isOutOfDate: Boolean

  342. 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
  343. def isRangePos(pos: Position): Boolean

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

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

    Is type tp a raw type?

    Is type tp a raw type?

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

    Do tp1 and tp2 denote equivalent types?

    Do tp1 and tp2 denote equivalent types?

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

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

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

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

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

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

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

    Definition Classes
    Types
  355. 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
  356. final def isValid(period: Period): Boolean

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

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

    Definition Classes
    Types
  359. 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
  360. val javanme: JavaKeywords

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

    Definition Classes
    Kinds
  362. object lambdaLift extends LambdaLift

  363. object lazyVals extends LazyVals

  364. 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
  365. 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
  366. lazy val loaders: BrowsingLoaders { val global: Global.this.type }

    Symbol loaders in the IDE parse all source files loaded from a package for top-level idents.

    Symbol loaders in the IDE parse all source files loaded from a package for top-level idents. Therefore, we can detect top-level symbols that have a name different from their source file

    Definition Classes
    GlobalGlobal
  367. def locateContext(contexts: Contexts, pos: Position): Option[Context]

    Optionally returns the smallest context that contains given pos, or None if none exists.

    Optionally returns the smallest context that contains given pos, or None if none exists.

    Definition Classes
    ContextTrees
  368. def locateContext(pos: Position): Option[Context]

    Locates smallest context that encloses position as an optional value.

    Locates smallest context that encloses position as an optional value.

    Definition Classes
    CompilerControl
  369. def locateContextTree(contexts: Contexts, pos: Position): Option[ContextTree]

    Definition Classes
    ContextTrees
  370. def locateTree(pos: Position): Tree

    Locate smallest tree that encloses position

    Locate smallest tree that encloses position

    Definition Classes
    CompilerControl
  371. final def log(msg: ⇒ AnyRef): Unit

    Definition Classes
    GlobalSymbolTable
    Annotations
    @inline()
  372. val log: LogReplay

  373. def logError(msg: String, t: Throwable): Unit

    Definition Classes
    Global
  374. def logThrowable(t: Throwable): Unit

    Definition Classes
    Global
  375. 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
  376. implicit def lowerTermNames(n: TermName): String

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

    Definition Classes
    Types → Types
  378. 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
  379. def makeNoSymbol: NoSymbol

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

    Definition Classes
    Collections
  381. 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
  382. 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
  383. 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
  384. final def mapWithIndex[A, B](xs: List[A])(f: (A, Int) ⇒ B): List[B]

    Definition Classes
    Collections
  385. 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
  386. final val maxTostringRecursions: Int(50)

    The maximum number of recursions allowed in toString

    The maximum number of recursions allowed in toString

    Definition Classes
    Types
  387. 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
  388. 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
  389. 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.

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

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

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

    Definition Classes
    Collections
  393. var minRunId: Int

    Attributes
    protected[interactive]
  394. val missingAliasException: MissingAliasControl

    Definition Classes
    Types
  395. 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
  396. object mixer extends Mixin

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

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

    Definition Classes
    Collections
  399. def moveToFront(fs: List[SourceFile]): Unit

    Move list of files to front of allSources

  400. def nameChars: Array[Char]

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

    Definition Classes
    Names
  402. implicit lazy val namePickler: Pickler[Name]

    Definition Classes
    Picklers
  403. final def ne(arg0: AnyRef): Boolean

    Definition Classes
    AnyRef
  404. 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
  405. def newBaseTypeSeq(parents: List[Type], elems: Array[Type]): BaseTypeSeq

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

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

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

    Definition Classes
    TreePrinters
  409. 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
  410. def newFreeVar(name: TermName, tpe: Type, value: Any, newFlags: Long = 0L): FreeVar

    Create a new free variable.

    Create a new free variable. Its owner is NoSymbol.

    Definition Classes
    Symbols
  411. def newLazyTreeCopier: TreeCopier

    Definition Classes
    Trees → Trees
  412. 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
  413. 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
  414. def newScope(): Scope

    Create a new scope

    Create a new scope

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

    Create a new scope with given initial elements

    Create a new scope with given initial elements

    Definition Classes
    Scopes
  416. def newStandardTreePrinter(): TreePrinter

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

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

    Definition Classes
    TreePrinters
  419. def newStrictTreeCopier: TreeCopier

    Definition Classes
    Trees → Trees
  420. 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
  421. def newTermName(s: String): TermName

    Create a term name from string.

    Create a term name from string.

    Definition Classes
    Names → Names
  422. 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
  423. def newTermName(cs: Array[Char]): TermName

    Definition Classes
    Names
  424. 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
  425. def newTermNameCached(s: String): TermName

    Definition Classes
    Names
  426. def newTreePrinter(): TreePrinter

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

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

    Definition Classes
    TreePrintersTreePrinters → TreePrinters
  429. 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
  430. 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
  431. def newTypeName(s: String): TypeName

    Create a type name from string.

    Create a type name from string.

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

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

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

    Definition Classes
    Names
  435. def newTyperRun(): Unit

  436. def newUndoLog: UndoLog

    Attributes
    protected
    Definition Classes
    Types
  437. def nextId(): Int

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

  439. lazy val noPosition: CondPickler[tools.nsc.util.NoPosition.type]

    Definition Classes
    Picklers
  440. object nodePrinters extends NodePrinters with ReifyPrinters

    Print tree in detailed form

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

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

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

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

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

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

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

    Definition Classes
    Types
  448. lazy val offsetPosition: CondPickler[OffsetPosition]

    Definition Classes
    Picklers
  449. def onCompilerThread: Boolean

    Definition Classes
    CompilerControl
  450. def onUnitOf[T](source: SourceFile)(op: (RichCompilationUnit) ⇒ T): T

    Run operation op on a compilation unit associated with given source.

    Run operation op on a compilation unit associated with given source. If source has a loaded compilation unit, this one is passed to op. Otherwise a new compilation unit is created, but not added to the set of loaded units.

    Definition Classes
    CompilerControl
  451. 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
  452. def openPackageModule(container: Symbol, dest: Symbol): Unit

    Definition Classes
    SymbolTable
  453. object opt extends AestheticSettings

  454. 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
  455. object overridingPairs extends OverridingPairs

    Computing pairs of overriding/overridden symbols

  456. def paramString(tp: Type): String

    Definition Classes
    TypeDebugging
  457. def parseTree(source: SourceFile): Tree

    Returns parse tree for source source.

    Returns parse tree for source source. No symbols are entered. Syntax errors are reported. Can be called asynchronously from presentation compiler.

    Definition Classes
    CompilerControl
  458. def patch(f: AbstractFile, d: (Int, Int, String)): Array[Char]

    Definition Classes
    Picklers
  459. object perRunCaches extends AnyRef

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

    Definition Classes
    SymbolTable
  461. final def phase: Phase

    Definition Classes
    SymbolTable
  462. def phaseDescriptions: String

    A description of the phases that will run

    A description of the phases that will run

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

    Definition Classes
    Global
  464. 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
  465. final def phaseId(period: Period): Int

    The phase identifier of the given period.

    The phase identifier of the given period.

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

    The names of the phases.

    The names of the phases.

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

    The phase associated with given period.

    The phase associated with given period.

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

    The phase which has given index as identifier.

    The phase which has given index as identifier.

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

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

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

    Attributes
    protected
    Definition Classes
    Global
  472. object pickler extends Pickler

  473. def picklerPhase: Phase

    Definition Classes
    GlobalRequired
  474. lazy val platform: ThisPlatform

    Definition Classes
    Global
  475. def pluginDescriptions: String

    A description of all the plugins that are loaded

    A description of all the plugins that are loaded

    Definition Classes
    Plugins
  476. def pluginOptionsHelp: String

    Summary of the options for all loaded plugins

    Summary of the options for all loaded plugins

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

    Definition Classes
    Plugins
  478. 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).

    PP to AM: I've co-opted this for where I know tparams may well be empty, and expecting to get back tpe in such cases. Re being "forgiving" below, can we instead say this is the canonical creator for polyTypes which may or may not be poly? (It filched the standard "canonical creator" name.)

    Definition Classes
    Types
  479. implicit lazy val position: Pickler[Position]

    Definition Classes
    Picklers
  480. def printAllUnits(): Unit

    Definition Classes
    Global
  481. var printInfers: Boolean

    Definition Classes
    Global
  482. var printTypings: Boolean

    Switch to turn on detailed type logs

    Switch to turn on detailed type logs

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

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

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

    Definition Classes
    RangePositionsPositions
  487. lazy val rangePosition: CondPickler[RangePosition]

    Definition Classes
    Picklers
  488. 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
  489. 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
  490. def recentlyDeleted(): List[Symbol]

    Returns the top level classes and objects that were deleted in the editor since last time recentlyDeleted() was called.

    Returns the top level classes and objects that were deleted in the editor since last time recentlyDeleted() was called.

    Definition Classes
    CompilerControl
  491. object refChecks extends RefChecks

    Definition Classes
    GlobalTransforms
  492. def referenceCapturedVariable(id: Ident): Tree

    Definition Classes
    MacroContext → Context
  493. 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
  494. 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
  495. def registerContext(c: Context): Unit

    Called from typechecker every time a context is created.

    Called from typechecker every time a context is created. Registers the context in a context tree

    Definition Classes
    GlobalGlobal
  496. def registerTopLevelSym(sym: Symbol): Unit

    Called from typechecker every time a top-level class or object is entered.

    Called from typechecker every time a top-level class or object is entered.

    Definition Classes
    GlobalGlobal
  497. val reifiedNodeToString: Global.this.nodePrinters.reifiedNodeToString.type

    Definition Classes
    Global
  498. def reify(tree: Tree): Tree

    Definition Classes
    Reifiers
  499. implicit def reloadItem: CondPickler[ReloadItem]

    Definition Classes
    Picklers
  500. def removeAllAnnotationCheckers(): Unit

    Remove all annotation checkers

    Remove all annotation checkers

    Definition Classes
    AnnotationCheckers
  501. def removeUnitOf(s: SourceFile): Option[RichCompilationUnit]

    Removes the CompilationUnit corresponding to the given SourceFile from consideration for recompilation.

    Removes the CompilationUnit corresponding to the given SourceFile from consideration for recompilation.

    Definition Classes
    CompilerControl
  502. 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
  503. var reporter: Reporter

    Definition Classes
    GlobalDocComments
  504. final def require(requirement: Boolean): Unit

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

    Definition Classes
    Global
    Annotations
    @inline()
  506. def resetAllAttrs[A <: Tree](x: A): A

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

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

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

    Definition Classes
    Trees
  508. object resetPos extends Traverser

  509. def respond[T](result: Response[T])(op: ⇒ T): Unit

  510. def respondGradually[T](response: Response[T])(op: ⇒ Stream[T]): Unit

  511. def rootLoader: LazyType

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

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

    The run identifier of the given period.

    The run identifier of the given period.

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

  516. object scalaPrimitives extends ScalaPrimitives

    Scala primitives, used in genicode

  517. val scheduler: WorkScheduler

    The scheduler by which client and compiler communicate Must be initialized before starting compilerRunner

    The scheduler by which client and compiler communicate Must be initialized before starting compilerRunner

    Attributes
    protected[interactive]
    Definition Classes
    CompilerControl
  518. 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
  519. val shorthands: Set[String]

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

    Definition Classes
    TreePrinters
  521. 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
  522. final val showOuterTests: Boolean(false)

    Definition Classes
    TreePrinters
  523. def showPos(pos: Position): String

    Definition Classes
    PositionsPositions
  524. def showRaw(tree: Tree): String

    Definition Classes
    TreePrinters
  525. lazy val shutdownReq: CondPickler[scala.tools.nsc.interactive.ShutdownReq.type]

    Definition Classes
    Picklers
  526. def signalDone(context: Context, old: Tree, result: Tree): Unit

    Called from typechecker, which signals hereby that a node has been completely typechecked.

    Called from typechecker, which signals hereby that a node has been completely typechecked. If the node includes unit.targetPos, abandons run and returns newly attributed tree. Otherwise, if there's some higher priority work to be done, also abandons run with a FreshRunReq.

    context

    The context that typechecked the node

    old

    The original node

    result

    The transformed node

    Definition Classes
    GlobalGlobal
  527. 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
    GlobalGlobal
  528. def singleType(pre: Type, sym: Symbol): Type

    The canonical creator for single-types

    The canonical creator for single-types

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

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

    Definition Classes
    StdNames
  532. def solidDescendants(tree: Tree): List[Tree]

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

    Definition Classes
    Types
  534. 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
  535. implicit lazy val sourceFile: Pickler[SourceFile]

    Definition Classes
    Picklers
  536. 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
  537. object specializeTypes extends SpecializeTypes

  538. 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
  539. def stabilizedType(tree: Tree): Type

  540. 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
  541. object statistics extends StatisticsInfo

    Some statistics (normally disabled) set with -Ystatistics

  542. object superAccessors extends SuperAccessors

  543. 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
  544. 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
  545. 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
  546. def symName(tree: Tree, name: Name): String

    Definition Classes
    TreePrinters
  547. implicit lazy val symPickler: Pickler[Symbol]

    Definition Classes
    Picklers
  548. def symbolCount: Int

    Definition Classes
    Symbols
  549. def syncTopLevelSyms(unit: RichCompilationUnit): Unit

    Update deleted and current top-level symbols sets

  550. final def synchronized[T0](arg0: ⇒ T0): T0

    Definition Classes
    AnyRef
  551. object syntaxAnalyzer extends SyntaxAnalyzer

  552. object tailCalls extends TailCalls

  553. object terminal extends SubComponent

  554. implicit lazy val throwable: Pickler[Throwable]

    Definition Classes
    Picklers
  555. def throwableAsString(t: Throwable): String

    Definition Classes
    Global
  556. val toBeRemoved: Set[AbstractFile]

    A set containing all those files that need to be removed Units are removed by getUnit, typically once a unit is finished compiled.

    A set containing all those files that need to be removed Units are removed by getUnit, typically once a unit is finished compiled.

    Attributes
    protected
  557. val toBeRemovedAfterRun: Set[AbstractFile]

    A set containing all those files that need to be removed after a full background compiler run

    A set containing all those files that need to be removed after a full background compiler run

    Attributes
    protected
  558. object toDeBruijn extends TypeMap

  559. 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
  560. def toString(): String

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

  562. def transformedType(tpe: Type): _46.global.Type forSome { val _46: Object with scala.reflect.internal.transform.Erasure{val global: Global.this.type} }

    Definition Classes
    Transforms
  563. def transformedType(sym: Symbol): _47.global.Type forSome { val _47: Object with scala.reflect.internal.transform.Erasure{val global: Global.this.type} }

    Definition Classes
    Transforms
  564. lazy val transparentPosition: CondPickler[TransparentPosition]

    Definition Classes
    Picklers
  565. val treeBrowser: SwingBrowser

    Definition Classes
    Global
  566. object treeBrowsers extends TreeBrowsers

    Representing ASTs as graphs

  567. object treeChecker extends TreeCheckers

    Tree checker

  568. val treeCopy: TreeCopier

    Definition Classes
    Trees
  569. object treeInfo extends TreeInfo

  570. implicit def treeOps(tree: Tree): TreeOps

    Definition Classes
    Trees
  571. lazy val treePrinter: TreePrinter

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

    Definition Classes
    TypeDebugging
  573. object typeDebug extends AnyRef

  574. 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
  575. 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
  576. def typeParamsString(tp: Type): String

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

    Definition Classes
    Types
  578. 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
  579. 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
  580. def typeToString(tpe: Type): String

    Attributes
    protected
    Definition Classes
    Types
  581. object typeVarToOriginMap extends TypeMap

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

  582. 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
  583. object typer extends Typer

  584. object uncurry extends UnCurry

    Definition Classes
    GlobalTransforms
  585. 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
  586. 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
  587. def unique[T <: Type](tp: T): T

    Attributes
    protected
    Definition Classes
    Types
  588. def uniqueTypeCount: Int

    Definition Classes
    Types
  589. val unitOfFile: LinkedHashMap[AbstractFile, RichCompilationUnit] with SynchronizedMap[AbstractFile, RichCompilationUnit]

    A map of all loaded files to the rich compilation units that correspond to them.

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

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

  592. def validateClassInfo(tp: ClassInfoType): Unit

    Overridden in reflection compiler

    Overridden in reflection compiler

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

    Definition Classes
    RangePositionsPositions
  594. val verboseIDE: Boolean

  595. final def wait(): Unit

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

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

    Definition Classes
    AnyRef
    Annotations
    @throws()
  598. val waitLoadedTypeResponses: ResponseMap

    A map that associates with each abstract file the set of responses that are waiting (via waitLoadedTyped) for the unit associated with the abstract file to be loaded and completely typechecked.

    A map that associates with each abstract file the set of responses that are waiting (via waitLoadedTyped) for the unit associated with the abstract file to be loaded and completely typechecked.

    Attributes
    protected
  599. def warning(msg: String): Unit

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

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

    Definition Classes
    Types
  602. object wildcardToTypeVarMap extends TypeMap

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

  603. 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
  604. implicit def workEvent: Pickler[WorkEvent]

    Definition Classes
    Picklers
  605. def wrappingPos(trees: List[Tree]): Position

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

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

    Definition Classes
    RangePositionsPositions
  606. 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
    RangePositionsPositions
  607. def xprintTree(treePrinter: TreePrinter, tree: Tree): Unit

    Hook for extensions

    Hook for extensions

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

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

    Attributes
    protected
    Definition Classes
    Trees → Trees

Deprecated Value Members

  1. def abort(): Nothing

    Definition Classes
    SymbolTable
    Annotations
    @deprecated
    Deprecated

    (Since version Give us a reason) 2.10.0

  2. def askParse(source: SourceFile, response: Response[Tree]): Unit

    Definition Classes
    CompilerControl
    Annotations
    @deprecated
    Deprecated

    use parseTree(source) instead

  3. def onlyPresentation: Boolean

    Definition Classes
    Global
    Annotations
    @deprecated
    Deprecated

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

  4. def unitOf(pos: Position): RichCompilationUnit

    The compilation unit corresponding to a position

    The compilation unit corresponding to a position

    Definition Classes
    CompilerControl
    Annotations
    @deprecated
    Deprecated

    use getUnitOf(pos.source) or onUnitOf(pos.source) instead

  5. def unitOf(s: SourceFile): RichCompilationUnit

    The compilation unit corresponding to a source file if it does not yet exist create a new one atomically Note: We want to get roid of this operation as it messes compiler invariants.

    The compilation unit corresponding to a source file if it does not yet exist create a new one atomically Note: We want to get roid of this operation as it messes compiler invariants.

    Definition Classes
    CompilerControl
    Annotations
    @deprecated
    Deprecated

    use getUnitOf(s) or onUnitOf(s) instead

  6. def view(s: String): TermName

    Definition Classes
    Names
    Annotations
    @deprecated
    Deprecated

    (Since version 2.9.0)

Inherited from Picklers

Inherited from ScratchPadMaker

Inherited from RichCompilationUnits

Inherited from ContextTrees

Inherited from RangePositions

Inherited from CompilerControl

Inherited from Global

Inherited from Positions

Inherited from MacroContext

Inherited from Context

Inherited from DocComments

Inherited from TreePrinters

Inherited from Reifiers

Inherited from Trees

Inherited from PhaseAssembly

Inherited from Plugins

Inherited from CompilationUnits

Inherited from SymbolTable

Inherited from SymbolTable

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 NameManglers

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 Symbols

Inherited from Names

Inherited from Collections

Inherited from Universe

Inherited from StandardNames

Inherited from StandardDefinitions

Inherited from AnnotationInfos

Inherited from TreePrinters

Inherited from Positions

Inherited from Trees

Inherited from Names

Inherited from Scopes

Inherited from Constants

Inherited from Types

Inherited from Symbols

Inherited from AnyRef

Inherited from Any