scala.tools.nsc.symtab

SymbolTable

abstract class SymbolTable extends SymbolTable

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

Instance Constructors

  1. new SymbolTable()

Type Members

  1. abstract class AbsSymbolImpl extends AbsSymbol

  2. abstract class AbsTypeImpl extends AbsType

  3. abstract type AbstractFileType >: Null <: AnyRef { ... /* 2 definitions in type refinement */ }

    Definition Classes
    Required
  4. trait AbstractTypeRef extends TypeRef with NonClassTypeRef

  5. class AbstractTypeSymbol extends TypeSymbol

  6. trait AliasTypeRef extends TypeRef with NonClassTypeRef

  7. class AliasTypeSymbol extends TypeSymbol

  8. trait AlphaNumName extends Name

    A name that contains no operator chars nor dollar signs.

  9. trait Annotatable[Self] extends AnyRef

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

    A type carrying some annotations.

  11. abstract class AnnotationChecker extends AnyRef

    An additional checker for annotations on types.

  12. trait AnnotationFilter extends TypeMap

  13. sealed abstract class AnnotationInfo extends AnyRef

    Typed information about an annotation.

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

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

  15. class AppliedTypeVar extends TypeVar

    Precondition: zipped params/args nonEmpty.

  16. class ArgsTypeRef extends TypeRef with UniqueType

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

    Represents an array of classfile annotation arguments

  18. class AsSeenFromMap extends TypeMap with KeepOnlyTypeConstraints

    A map to compute the asSeenFrom method

  19. class BaseTypeSeq extends AnyRef

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

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

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

  21. class ChangeOwnerTraverser extends Traverser

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

    A class representing a class info

  23. class ClassSymbol extends TypeSymbol with ClassSymbolApi

    A class for class symbols

  24. trait ClassTypeRef extends TypeRef

  25. class ClassUnwrapper extends TypeUnwrapper

  26. abstract class ClassfileAnnotArg extends Product

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

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

    A map to implement the collect method.

  28. abstract class CommonNames extends AnyRef

  29. class CommonOwnerMap extends TypeTraverserWithResult[Symbol]

    Attributes
    protected
  30. class CompleteAnnotationInfo extends AnnotationInfo

  31. abstract class CompoundType extends Type

    A common base class for intersection types and class types

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

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

    A class representing a constant type.

  34. class ContainsCollector extends TypeCollector[Boolean]

    A map to implement the contains method.

  35. class ContainsTypeCollector extends TypeCollector[Boolean]

    A map to implement the contains method.

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

    An exception for cyclic references of symbol definitions

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

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

  39. class DefaultPosAssigner extends Traverser with PosAssigner

    Attributes
    protected
  40. abstract class DefinitionsClass extends AbsDefinitions with ValueClassDefinitions

  41. trait DistinguishingFlag extends SymbolFlagLogic

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

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

  43. class ErrorScope extends Scope

    The error scope.

  44. class ExistentialExtrapolation extends TypeMap with VariantTypeMap

    Used by existentialAbstraction.

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

    Definition Classes
    Types → Types
  46. class FilterTypeCollector extends TypeCollector[List[Type]]

    A map to implement the filter method.

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

    A map to implement the filter method.

  48. trait FlagVerifier extends Symbol

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

  49. class ForEachTypeTraverser extends TypeTraverser

  50. class ForeachPartialTreeTraverser extends Traverser

  51. trait FreeSymbol extends Symbol

  52. class FreeTerm extends TermSymbol with FreeSymbol

  53. class FreeType extends TypeSkolem with FreeSymbol

  54. abstract class FrontEndToReporterProxy extends AbstractReporter

  55. class HKTypeVar extends TypeVar

    Precondition: params.

  56. trait ImplClassSymbol extends ClassSymbol

  57. abstract class InfoTransformer extends AnyRef

  58. class InstantiateDependentMap extends TypeMap with KeepOnlyTypeConstraints

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

  60. class JavaKeywords extends AnyRef

  61. class JavaMethodType extends MethodType

  62. trait KeepOnlyTypeConstraints extends TypeMap with AnnotationFilter

  63. abstract class Keywords extends CommonNames

    This should be the first trait in the linearization.

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

  65. final class LazyAnnotationInfo extends AnnotationInfo

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

  66. abstract class LazyPolyType extends LazyType

  67. abstract class LazyType extends Type

    A class representing an as-yet unevaluated type.

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

  69. class MalformedType extends TypeError

    A throwable signalling a malformed type

  70. class MappedBaseTypeSeq extends BaseTypeSeq

  71. class MethodSymbol extends TermSymbol with DistinguishingFlag with MethodSymbolApi

    A class for method symbols

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

    A class representing a method type with parameters.

  73. class MissingAliasControl extends Throwable with ControlThrowable

  74. class MissingTypeControl extends Throwable with ControlThrowable

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

  76. class ModuleClassSymbol extends ClassSymbol with DistinguishingFlag

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

  77. class ModuleSymbol extends TermSymbol with DistinguishingFlag with ModuleSymbolApi

    A class for module symbols

  78. class ModuleTypeRef extends NoArgsTypeRef with ClassTypeRef

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

    The name class.

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

    A class representing types with a name.

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

    Represents a nested classfile annotation

  82. class NoArgsTypeRef extends TypeRef with UniqueType

  83. class NoCommonType extends Throwable with ControlThrowable

  84. class NoSymbol extends Symbol

    An object representing a missing symbol

  85. trait NonClassTypeRef extends TypeRef

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

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

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

  89. class PackageClassInfoType extends ClassInfoType

  90. class PackageClassSymbol extends ModuleClassSymbol with DistinguishingFlag

  91. class PackageObjectClassSymbol extends ModuleClassSymbol

  92. class PackageSymbol extends ModuleSymbol with DistinguishingFlag with PackageSymbolApi

    Definition Classes
    Symbols → Symbols
  93. class PackageTypeRef extends ModuleTypeRef

  94. 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
  95. 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 *).

  96. trait PosAssigner extends Traverser

  97. type Position = Position

    Definition Classes
    Positions → Positions
  98. case class RecoverableCyclicReference(sym: Symbol) extends TypeError with Product with Serializable

    An exception for cyclic references from which we can recover

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

  100. final class RefinedType0 extends RefinedType

  101. class RefinementClassSymbol extends ClassSymbol

  102. class RefinementTypeRef extends NoArgsTypeRef with ClassTypeRef

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

  104. class ReporterToFrontEndProxy extends FrontEnd

  105. trait RewrappingTypeProxy extends Type with SimpleTypeProxy

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

  106. type RunId = Int

    An ordinal number for compiler runs.

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

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

  108. class Scope extends Iterable[Symbol]

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

  109. class ScopeEntry extends AnyRef

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

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

  112. abstract class SingletonType extends SubType with SimpleTypeProxy

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

  113. abstract class StandardImporter extends Importer

  114. abstract class SubType extends Type

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

  115. class SubTypePair extends AnyRef

  116. abstract class SubstMap[T] extends TypeMap

    A base class to compute all substitutions

  117. class SubstSymMap extends SubstMap[Symbol]

    A map to implement the substSym method.

  118. class SubstThisAndSymMap extends SubstSymMap

  119. class SubstThisMap extends TypeMap

    A map to implement the substThis method.

  120. class SubstTypeMap extends SubstMap[Type]

    A map to implement the subst method.

  121. class SubstWildcardMap extends TypeMap

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

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

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

    The class for all symbols

  125. trait SymbolCreator extends SymbolCreatorInterface

  126. trait SymbolCreatorInterface extends AnyRef

    Symbol creation interface, possibly better moved somewhere else.

  127. trait SymbolFlagLogic extends AnyRef

  128. abstract class SymbolNames extends AnyRef

  129. sealed abstract class TermName extends Name

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

  131. class TermSymbol extends Symbol with TermSymbolApi

    A class for term symbols

  132. class ThisSubstituter extends Transformer

    Substitute clazz.

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

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

  134. abstract type ToolBox <: AbsToolBox

    Definition Classes
    ToolBoxes
  135. abstract type TreeCopier <: TreeCopierOps

    Definition Classes
    Trees
  136. abstract type TreeGen <: AbsTreeGen

    Definition Classes
    TreeBuildUtil
  137. implicit class TreeOps extends AnyRef

  138. class TreePrinter extends TreePrinter

    Definition Classes
    TreePrinters → TreePrinters
  139. class TreeSubstituter extends Transformer

  140. class TreeSymSubstTraverser extends TypeMapTreeSubstituter

  141. class TreeSymSubstituter extends Transformer

    Substitute symbols in from with symbols in to.

  142. class TreeTypeSubstituter extends TypeMapTreeSubstituter

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

    The base class for all types

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

  145. abstract class TypeCollector[T] extends TypeTraverser

  146. class TypeConstraint extends AnyRef

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

  147. class TypeError extends Throwable

    A throwable signalling a type error

  148. abstract class TypeMap extends (Type) ⇒ Type

    A prototype for mapping a function over all possible types

  149. class TypeMapTreeSubstituter extends Traverser

  150. sealed abstract class TypeName extends Name

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

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

  153. class TypeSkolem extends TypeSymbol

    A class for type parameters viewed from inside their scopes

  154. abstract class TypeSymbol extends Symbol with TypeSymbolApi

    A class of type symbols.

  155. abstract class TypeTraverser extends TypeMap

  156. abstract class TypeTraverserWithResult[T] extends TypeTraverser

  157. class TypeUnwrapper extends (Type) ⇒ Type

  158. class TypeVar extends Type

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

  159. class UndoLog extends AnyRef

  160. final class UniqueConstantType extends ConstantType with UniqueType

  161. final class UniqueErasedValueType extends ErasedValueType with UniqueType

  162. final class UniqueSingleType extends SingleType with UniqueType

  163. final class UniqueSuperType extends SuperType with UniqueType

  164. final class UniqueThisType extends ThisType with UniqueType

  165. trait UniqueType extends Product

  166. final class UniqueTypeBounds extends TypeBounds with UniqueType

  167. trait UntouchableTypeVar extends TypeVar

  168. trait ValueClassDefinitions extends AnyRef

  169. trait VariantTypeMap extends TypeMap

Abstract Value Members

  1. abstract def currentRunId: RunId

    The current compiler run identifier.

    The current compiler run identifier.

    Definition Classes
    SymbolTable
  2. abstract def forInteractive: Boolean

    Definition Classes
    Required
  3. abstract def forScaladoc: Boolean

    Definition Classes
    Required
  4. abstract val gen: TreeGen { val global: SymbolTable.this.type }

    Definition Classes
    TreeBuildUtil → TreeBuildUtil
  5. abstract def log(msg: ⇒ AnyRef): Unit

    Definition Classes
    SymbolTable
  6. abstract def mkToolBox(frontEnd: FrontEnd, options: String): AbsToolBox

    Definition Classes
    ToolBoxes
  7. abstract def newLazyTreeCopier: TreeCopier

    Definition Classes
    Trees
  8. abstract def newStrictTreeCopier: TreeCopier

    Definition Classes
    Trees
  9. abstract val phaseWithId: Array[Phase]

    The phase which has given index as identifier.

    The phase which has given index as identifier.

    Definition Classes
    SymbolTable
  10. abstract def picklerPhase: Phase

    Definition Classes
    Required
  11. abstract def rootLoader: LazyType

    Definition Classes
    SymbolTable
  12. abstract def settings: MutableSettings

    Definition Classes
    Required
  13. abstract def staticClass(fullName: String): Symbol

    Definition Classes
    TreeBuildUtil
  14. abstract def staticModule(fullName: String): Symbol

    Definition Classes
    TreeBuildUtil

Concrete Value Members

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

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

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

    Definition Classes
    AnyRef → Any
  4. def +(other: String): String

    Implicit information
    This member is added by an implicit conversion from SymbolTable to StringAdd performed by method any2stringadd in scala.Predef.
    Definition Classes
    StringAdd
  5. def ->[B](y: B): (SymbolTable, B)

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

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

    Definition Classes
    Any
  8. def AllDistinguishingFlags: Long

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

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

    Definition Classes
    SymbolFlags
  9. object AnnotatedType extends AnnotatedTypeExtractor with Serializable

    Definition Classes
    Types → Types
  10. object AnnotationInfo extends AnnotationInfoExtractor

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

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

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

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

    Definition Classes
    Trees → Trees
  15. object ApproximateDependentMap extends TypeMap

  16. object ArrayAnnotArg extends ArrayAnnotArgExtractor with Serializable

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

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

    Block factory that flattens directly nested blocks.

    Block factory that flattens directly nested blocks.

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

    Definition Classes
    Constants
  20. lazy val BooleanTpe: Type

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

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

    Definition Classes
    Constants
  23. lazy val ByteTpe: Type

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

    casedef shorthand

    casedef shorthand

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

    Definition Classes
    Constants
  26. lazy val CharTpe: Type

    Definition Classes
    Definitions → StandardTypes
  27. def ClassDef(sym: Symbol, impl: Template): ClassDef

    sym

    the class symbol

    returns

    the implementation template

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

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

    Definition Classes
    Constants
  30. object ConsoleWriter extends Writer

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

  31. object Constant extends ConstantExtractor with Serializable

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

    Definition Classes
    Types → Types
  33. val CyclicInheritance: Throwable

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

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

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

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

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

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

    Definition Classes
    Constants
  40. lazy val DoubleTpe: Type

    Definition Classes
    Definitions → StandardTypes
  41. object EmptyScope extends Scope

    The empty scope (immutable).

  42. def EmptyTermName: TermName

    Definition Classes
    Names
  43. lazy val EmptyTreeTypeSubstituter: TreeTypeSubstituter

    Definition Classes
    Trees
  44. def EmptyTypeName: TypeName

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

    Definition Classes
    Constants
  46. object ErasedValueType extends Serializable

  47. object ErroneousCollector extends TypeCollector[Boolean]

    A map to implement the contains method.

  48. object ErrorType extends Type with Product with Serializable

    An object representing an erroneous type

  49. object ExistentialType extends ExistentialTypeExtractor with Serializable

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

    Definition Classes
    Constants
  51. lazy val FloatTpe: Type

    Definition Classes
    Definitions → StandardTypes
  52. object FreeTerm extends FreeTermExtractor

    Definition Classes
    FreeVars → FreeVars
  53. object FreeType extends FreeTypeExtractor

    Definition Classes
    FreeVars → FreeVars
  54. object GenPolyType extends AnyRef

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

  55. val GlbFailure: Throwable

    Definition Classes
    Types
  56. object HasTypeMember extends AnyRef

  57. object HasTypeParams extends AnyRef

  58. def Ident(sym: Symbol): Ident

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

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

    Definition Classes
    Constants
  61. lazy val IntTpe: Type

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

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

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

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

    Definition Classes
    Constants
  67. lazy val LongTpe: Type

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

    Definition Classes
    Types
  69. object MethodType extends MethodTypeExtractor with Serializable

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

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

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

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

    sym

    the class symbol

    impl

    the implementation template

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

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

    Definition Classes
    Trees → Trees
  76. def New(tpe: Type, args: Tree*): Tree

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

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

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

    Factory method for object creation new tpt(args_1)...(args_n) A New(t, as) is expanded to: (new t).<init>(as)

    Factory method for object creation new tpt(args_1)...(args_n) A New(t, as) is expanded to: (new t).<init>(as)

    Definition Classes
    Trees → Trees
  78. val NoKindErrors: KindErrors

    Definition Classes
    Kinds
  79. lazy val NoMods: Modifiers

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

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

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

    An object representing a non-existing prefix

  83. final val NoRunId: Int(0)

    Definition Classes
    SymbolTable
  84. lazy val NoSymbol: NoSymbol

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

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

    An object representing a non-existing type

  87. lazy val NothingTpe: Type

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

    Definition Classes
    Constants
  89. lazy val NullTpe: Type

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

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

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

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

    Definition Classes
    Types → Types
  94. object Scope extends AnyRef

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

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

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

    Definition Classes
    Constants
  98. lazy val ShortTpe: Type

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

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

    Definition Classes
    Constants
  101. lazy val StringTpe: Type

    Definition Classes
    Definitions → StandardTypes
  102. object StripAnnotationsMap extends TypeMap

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

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

    Definition Classes
    Types → Types
  105. def This(sym: Symbol): Tree

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

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

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

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

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

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

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

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

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

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

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

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

    Definition Classes
    Trees
  114. object TypeVar extends AnyRef

  115. final val UnitTag: Int(1)

    Definition Classes
    Constants
  116. lazy val UnitTpe: Type

    Definition Classes
    Definitions → StandardTypes
  117. object UnmappableAnnotation extends CompleteAnnotationInfo

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

  119. def ValDef(sym: Symbol): ValDef

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

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

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

  122. def abort(msg: String): Nothing

    Definition Classes
    SymbolTable
  123. 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
  124. 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
  125. 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
  126. object adaptToNewRunMap extends TypeMap

  127. def addAnnotationChecker(checker: AnnotationChecker): Unit

    Register an annotation checker.

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

    Definition Classes
    AnnotationCheckers
  128. 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
  129. 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
  130. final def afterCurrentPhase[T](op: ⇒ T): T

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

    Definition Classes
    SymbolTable
    Annotations
    @inline()
  132. 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
  133. 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
  134. 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
  135. 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
  136. def appliedType(tyconSym: Symbol, args: Type*): Type

    Very convenient.

    Very convenient.

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

    A creator for type applications

    A creator for type applications

    Definition Classes
    Types → Types
  138. 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
  139. 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
  140. final def asInstanceOf[T0]: T0

    Definition Classes
    Any
  141. 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()
  142. final def atPhaseNotLaterThan[T](target: Phase)(op: ⇒ T): T

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

    Definition Classes
    SymbolTable
  144. def atPhaseStackMessage: String

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

    Definition Classes
    Positions → Positions
  146. 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
  147. def baseTypeOfNonClassTypeRef(tpe: NonClassTypeRef, clazz: Symbol): Type

    Attributes
    protected
    Definition Classes
    Types
  148. 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
  149. 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()
  150. final def beforePrevPhase[T](op: ⇒ T): T

    Definition Classes
    SymbolTable
    Annotations
    @inline()
  151. 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
  152. object binarynme extends AnyRef

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

  153. 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
  154. def captureVariable(vble: Symbol): Unit

    Mark a variable as captured; i.

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

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

    Convert type of a captured variable to *Ref type.

    Convert type of a captured variable to *Ref type.

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

    Convert type of a captured variable to *Ref type.

    Convert type of a captured variable to *Ref type.

    Definition Classes
    CapturedVariables
  157. 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
  158. var chrs: Array[Char]

    Memory to store all names sequentially.

    Memory to store all names sequentially.

    Definition Classes
    Names
  159. lazy val classfileAnnotArgTag: ArrayTag[ClassfileAnnotArg]

    Definition Classes
    AnnotationInfos → AnnotationInfos
  160. def clone(): AnyRef

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

    Convenience functions which derive symbols by cloning.

    Convenience functions which derive symbols by cloning.

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

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

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

    Definition Classes
    Collections
  166. def commonOwnerMap: CommonOwnerMap

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

    Definition Classes
    Types
    Annotations
    @tailrec()
  168. 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
  169. def connectModuleToClass(m: ModuleSymbol, moduleClass: ClassSymbol): ModuleSymbol

    Definition Classes
    Symbols
  170. def containsExistential(tpe: Type): Boolean

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

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

    Definition Classes
    Trees
  173. 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
  174. def copyRefinedType(original: RefinedType, parents: List[Type], decls: Scope): Type

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

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

    Definition Classes
    Trees
  177. 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()
  178. 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
  179. def createFromClonedSymbolsAtOwner[T](syms: List[Symbol], owner: Symbol, tpe: Type)(creator: (List[Symbol], Type) ⇒ T): T

    Definition Classes
    Symbols
  180. final def currentPeriod: Period

    The current period.

    The current period.

    Definition Classes
    SymbolTable
  181. object deAlias extends TypeMap

    Remove any occurrences of type aliases from this type

  182. def debugString(tp: Type): String

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

    Override with final implementation for inlining.

    Override with final implementation for inlining.

    Definition Classes
    SymbolTable
  184. def debugwarn(msg: ⇒ String): Unit

    Definition Classes
    SymbolTable
  185. def decodedSymName(tree: Tree, name: Name): String

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

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

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

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

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

    Attributes
    protected
    Definition Classes
    Types
  191. object definitions extends DefinitionsClass

    Definition Classes
    Definitions → StandardDefinitions
  192. def deriveCaseDef(cdef: Tree)(applyToBody: (Tree) ⇒ Tree): CaseDef

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

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

    Definition Classes
    Trees
  195. 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
  196. def deriveLabelDef(ldef: Tree)(applyToRhs: (Tree) ⇒ Tree): LabelDef

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

    Definition Classes
    Trees
  198. 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
  199. def deriveTemplate(templ: Tree)(applyToBody: (List[Tree]) ⇒ List[Tree]): Template

    Definition Classes
    Trees
  200. 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
  201. 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
  202. def deriveValDef(vdef: Tree)(applyToRhs: (Tree) ⇒ Tree): ValDef

    Definition Classes
    Trees
  203. 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
  204. def differentOrNone(tp1: Type, tp2: Type): Type

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

    Definition Classes
    Collections
  206. object dropAllRefinements extends TypeMap

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

  207. object dropRepeatedParamType extends TypeMap

  208. object dropSingletonType extends TypeMap

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

  209. def duplicateTree(tree: Tree): Tree

    Attributes
    protected[scala]
    Definition Classes
    Trees → Trees
  210. def elimAnonymousClass(t: Type): Type

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

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

    Definition Classes
    Symbols
  213. object emptyValDef extends ValDef

    Definition Classes
    Trees → Trees
  214. val enableTypeVarExperimentals: Boolean

    Attributes
    protected
    Definition Classes
    Types
  215. def encode(str: String): TermName

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

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

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

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

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

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

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

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

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

    Definition Classes
    AnyRef → Any
  223. def erasure: Erasure { val global: SymbolTable.this.type }

    Definition Classes
    Transforms
  224. def etaExpandKeepsStar: Boolean

    Attributes
    protected
    Definition Classes
    Types
  225. def existentialAbstraction(tparams: List[Symbol], tpe0: Type): Type

    A creator for existential types.

    A creator for existential types. This generates:

    tpe1 where { tparams }

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

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

    Definition Classes
    Types → Types
  226. def existentialsInType(tpe: Type): List[Symbol]

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

    Definition Classes
    Collections
  228. 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
  229. 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
  230. 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
  231. def finalize(): Unit

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

    Definition Classes
    Collections
  233. 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
  234. final def flatCollect[A, B](elems: List[A])(pf: PartialFunction[A, Traversable[B]]): List[B]

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

    Definition Classes
    Collections
  236. final def flattensToEmpty(xss: Seq[Seq[_]]): Boolean

    Definition Classes
    Collections
    Annotations
    @tailrec()
  237. def forMSIL: Boolean

    Are we compiling for .

    Are we compiling for .NET?

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

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

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

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

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

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

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

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

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

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

    Definition Classes
    Types
  248. object fulltpnme extends TypeNames

    For fully qualified type names.

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

    Definition Classes
    Types
  250. final def getClass(): Class[_]

    Definition Classes
    AnyRef → Any
  251. 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
  252. 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
  253. 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
  254. def hashCode(): Int

    Definition Classes
    AnyRef → Any
  255. var ids: Int

    Attributes
    protected
    Definition Classes
    Symbols
  256. 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
  257. var infoTransformers: InfoTransformer

    The set of all installed infotransformers.

    The set of all installed infotransformers.

    Definition Classes
    SymbolTable
  258. def instTypeVar(tp: Type): Type

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

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

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

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

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

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

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

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

    Definition Classes
    Types → Types
  262. 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
  263. final def isAtPhaseAfter(p: Phase): Boolean

    Are we later than given phase in compilation?

    Are we later than given phase in compilation?

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

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

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

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

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

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

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

    Definition Classes
    Any
  271. 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
  272. 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
  273. def isRaw(sym: Symbol, args: List[Type]): Boolean

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

    Is type tp a raw type?

    Is type tp a raw type?

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

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

    Is the tree Predef, scala.

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

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

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

    Do tp1 and tp2 denote equivalent types?

    Do tp1 and tp2 denote equivalent types?

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

    Definition Classes
    Types
  280. 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
  281. def isSingleType(tp: Type): Boolean

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

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

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

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

    Definition Classes
    Types
  286. 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
  287. def isUnboundedGeneric(tp: Type): Boolean

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

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

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

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

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

    Definition Classes
    Kinds
  294. implicit def lowPriorityNameOrdering[T <: Name]: Ordering[T]

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

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

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

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

    Definition Classes
    Collections
  300. 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
  301. 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
  302. final def mapFrom[A, A1 >: A, B](xs: List[A])(f: (A) ⇒ B): Map[A1, B]

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

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

    The maximum number of recursions allowed in toString

    The maximum number of recursions allowed in toString

    Definition Classes
    Types
  307. 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
  308. final def mexists[A](xss: List[List[A]])(p: (A) ⇒ Boolean): Boolean

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

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

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

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

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

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

    Definition Classes
    Collections
  313. val missingAliasException: MissingAliasControl

    Definition Classes
    Types
  314. 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
  315. def mkConsoleFrontEnd(minSeverity: Int = 1): FrontEnd

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

    Definition Classes
    Importers
  317. def mkSilentFrontEnd(): FrontEnd

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

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

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

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

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

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

    Attributes
    protected
    Definition Classes
    BaseTypeSeqs
  325. 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
  326. def newFreeExistential(name: String, info: Type, value: ⇒ Any, flags: Long = 0L, origin: String = null): FreeType

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

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

    Create a new free term.

    Create a new free term. Its owner is NoSymbol.

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

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

    Create a new free type.

    Create a new free type. Its owner is NoSymbol.

    Definition Classes
    Symbols
  331. def newNestedScope(outer: Scope): Scope

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

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

    Definition Classes
    Scopes → Scopes
  332. 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
  333. def newScope: Scope

    Create a new scope

    Create a new scope

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

    Create a new scope with given initial elements

    Create a new scope with given initial elements

    Definition Classes
    Scopes → Scopes
  335. 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
  336. def newTermName(s: String): TermName

    Create a term name from string.

    Create a term name from string.

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

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

    Definition Classes
    Names
  341. def newTreePrinter(): TreePrinter

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

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

    Definition Classes
    TreePrinters → TreePrinters
  344. 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
  345. 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
  346. def newTypeName(s: String): TypeName

    Create a type name from string.

    Create a type name from string.

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

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

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

    Definition Classes
    Names
  350. def newUndoLog: UndoLog

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

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

  353. def normalizePlus(tp: Type): Type

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

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

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

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

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

    Definition Classes
    Types
  359. 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
  360. def openPackageModule(container: Symbol, dest: Symbol): Unit

    Definition Classes
    SymbolTable
  361. 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
  362. def paramString(tp: Type): String

    Definition Classes
    TypeDebugging
  363. object perRunCaches extends AnyRef

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

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

    Definition Classes
    SymbolTable
  366. final def phase: Phase

    Definition Classes
    SymbolTable
  367. final def phaseId(period: Period): Int

    The phase identifier of the given period.

    The phase identifier of the given period.

    Definition Classes
    SymbolTable
  368. final def phaseOf(period: Period): Phase

    The phase associated with given period.

    The phase associated with given period.

    Definition Classes
    SymbolTable
  369. final def phase_=(p: Phase): Unit

    Definition Classes
    SymbolTable
  370. final def popPhase(ph: Phase): Unit

    Definition Classes
    SymbolTable
  371. lazy val posAssigner: PosAssigner

    Attributes
    protected[this]
    Definition Classes
    Positions
  372. implicit def promoteTermNamesAsNecessary(name: Name): TermName

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

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

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

    Definition Classes
    TreePrinters
  376. 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
  377. 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
  378. def refChecks: RefChecks { val global: SymbolTable.this.type }

    Definition Classes
    Transforms
  379. def referenceCapturedVariable(vble: Symbol): Tree

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

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

    Definition Classes
    CapturedVariables
  380. def refinedType(parents: List[Type], owner: Symbol): Type

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

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

    parents

    ...

    owner

    ...

    returns

    ...

    Definition Classes
    Types → Types
  381. def refinedType(parents: List[Type], owner: Symbol, decls: Scope, pos: Position): Type

    the canonical creator for a refined type with a given scope

    the canonical creator for a refined type with a given scope

    Definition Classes
    Types → Types
  382. def reify[T](expr: T): Expr[T]

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

    Remove all annotation checkers

    Remove all annotation checkers

    Definition Classes
    AnnotationCheckers
  384. 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
  385. final def runId(period: Period): RunId

    The run identifier of the given period.

    The run identifier of the given period.

    Definition Classes
    SymbolTable
  386. 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
  387. 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
  388. def selectOverloadedMethod(owner: Symbol, name: String, index: Int): Symbol

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

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

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

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

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

    Definition Classes
    TreeBuildUtil → TreeBuildUtil
  394. val self: Any

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

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

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

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

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

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

    The canonical creator for single-types

    The canonical creator for single-types

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

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

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

    Definition Classes
    Types
  405. 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
  406. 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
  407. 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
  408. 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
  409. def staticClassIfDefined(fullName: String): Symbol

    Definition Classes
    TreeBuildUtil → TreeBuildUtil
  410. def staticModuleIfDefined(fullName: String): Symbol

    Definition Classes
    TreeBuildUtil → TreeBuildUtil
  411. def substituteFreeTypes(tpe0: Type, subs: Map[FreeType, Type]): Type

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

    Definition Classes
    FreeVars → FreeVars
  413. def supplementErrorMessage(msg: String): String

    Overridden when we know more about what was happening during a failure.

    Overridden when we know more about what was happening during a failure.

    Definition Classes
    SymbolTable
  414. 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
  415. def symName(tree: Tree, name: Name): String

    Definition Classes
    TreePrinters
  416. def symbolCount: Int

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

    Definition Classes
    AnyRef
  418. def thisModuleType(fullname: String): Type

    Definition Classes
    TreeBuildUtil → TreeBuildUtil
  419. object toDeBruijn extends TypeMap

  420. def toString(): String

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

  422. final val traceSymbolActivity: Boolean

    Dump each symbol to stdout after shutdown.

    Dump each symbol to stdout after shutdown.

    Definition Classes
    SymbolTable
  423. object traceSymbols extends TraceSymbolActivity

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

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

    Definition Classes
    Transforms
  426. val treeCopy: TreeCopier

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

    Definition Classes
    TypeDebugging
  428. object typeDebug extends AnyRef

  429. 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
  430. 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
  431. def typeParamsString(tp: Type): String

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

    Definition Classes
    Types
  433. 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
  434. def typeRef(pre: Type, sym: Symbol, args: List[Type]): Type

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

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

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

    Attributes
    protected
    Definition Classes
    Types
  436. object typeVarToOriginMap extends TypeMap

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

  437. 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
  438. def uncurry: UnCurry { val global: SymbolTable.this.type }

    Definition Classes
    Transforms
  439. 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
  440. 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
  441. def unique[T <: Type](tp: T): T

    Attributes
    protected
    Definition Classes
    Types
  442. def uniqueTypeCount: Int

    Definition Classes
    Types
  443. object unwrapToClass extends ClassUnwrapper

  444. object unwrapToStableClass extends ClassUnwrapper

  445. object unwrapWrapperTypes extends TypeUnwrapper

  446. def validateClassInfo(tp: ClassInfoType): Unit

    Overridden in reflection compiler

    Overridden in reflection compiler

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

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

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

    Definition Classes
    AnyRef
    Annotations
    @throws()
  450. def weakGlb(ts: List[Type]): (Type, Boolean)

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

    Definition Classes
    Types
  452. object wildcardToTypeVarMap extends TypeMap

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

  453. 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
  454. def wrapFrontEnd(frontEnd: FrontEnd): Reporter

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

    Definition Classes
    FrontEnds
  456. def wrappingPos(trees: List[Tree]): Position

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

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

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

    A position that wraps a set of trees.

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

    Definition Classes
    Positions → Positions
  458. def xprintTree(treePrinter: TreePrinter, tree: Tree): Unit

    Hook for extensions

    Hook for extensions

    Definition Classes
    TreePrinters
  459. def xtransform(transformer: Transformer, tree: Tree): Tree

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

    Attributes
    protected
    Definition Classes
    Trees
  461. def [B](y: B): (SymbolTable, B)

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

Deprecated Value Members

  1. def abort(): Nothing

    Definition Classes
    SymbolTable
    Annotations
    @deprecated
    Deprecated

    (Since version 2.10.0) Give us a reason

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

    Definition Classes
    Types → Types
    Annotations
    @deprecated
    Deprecated

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

  3. def view(s: String): TermName

    Definition Classes
    Names
    Annotations
    @deprecated
    Deprecated

    (Since version 2.9.0)

  4. def x: SymbolTable

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

    (Since version 2.10.0) Use leftOfArrow instead

  5. def x: SymbolTable

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

    (Since version 2.10.0) Use resultOfEnsuring instead

Inherited from SymbolTable

Inherited from StdAttachments

Inherited from CapturedVariables

Inherited from FrontEnds

Inherited from TreeBuildUtil

Inherited from Required

Inherited from Importers

Inherited from TypeDebugging

Inherited from Positions

Inherited from TreePrinters

Inherited from Trees

Inherited from AnnotationCheckers

Inherited from AnnotationInfos

Inherited from StdNames

Inherited from Transforms

Inherited from InfoTransformers

Inherited from BaseTypeSeqs

Inherited from Constants

Inherited from Definitions

Inherited from Scopes

Inherited from ExistentialsAndSkolems

Inherited from Kinds

Inherited from Types

Inherited from FreeVars

Inherited from SymbolFlags

Inherited from Symbols

Inherited from SymbolCreations

Inherited from Names

Inherited from Collections

Inherited from Universe

Inherited from Importers

Inherited from FrontEnds

Inherited from ToolBoxes

Inherited from TreeBuildUtil

Inherited from ClassLoaders

Inherited from StandardNames

Inherited from TreePrinters

Inherited from TypeTags

Inherited from StandardDefinitions

Inherited from StandardTypes

Inherited from Exprs

Inherited from Positions

Inherited from AnnotationInfos

Inherited from Trees

Inherited from Names

Inherited from Scopes

Inherited from Constants

Inherited from Types

Inherited from FreeVars

Inherited from Symbols

Inherited from AnyRef

Inherited from Any

Inherited by implicit conversion any2stringfmt from SymbolTable to StringFormat

Inherited by implicit conversion any2stringadd from SymbolTable to StringAdd

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

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