scala.reflect.internal.Symbols

TypeSymbol

abstract class TypeSymbol extends Symbol with TypeSymbolApi

A class of type symbols. Alias and abstract types are direct instances of this class. Classes are instances of a subclass.

Definition Classes
Symbols → Symbols
Source
Symbols.scala
Linear Supertypes
TypeSymbolApi, Symbol, Annotatable[Symbol], SymbolCreator, SymbolCreatorInterface, SymbolFlagLogic, HasFlags, AbsSymbolImpl, AbsSymbol, AbsSymbolInternal, AnyRef, Any
Known Subclasses
Ordering
  1. Alphabetic
  2. By inheritance
Inherited
  1. TypeSymbol
  2. TypeSymbolApi
  3. Symbol
  4. Annotatable
  5. SymbolCreator
  6. SymbolCreatorInterface
  7. SymbolFlagLogic
  8. HasFlags
  9. AbsSymbolImpl
  10. AbsSymbol
  11. AbsSymbolInternal
  12. AnyRef
  13. 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 TypeSymbol(initOwner: Symbol, initPos: Position, initName: TypeName)

    Attributes
    protected[Symbols]

Type Members

  1. type AccessBoundaryType = Symbol

    Definition Classes
    SymbolHasFlags
  2. type AnnotationType = AnnotationInfo

    Definition Classes
    SymbolHasFlags
  3. final type NameType = TypeName

    Definition Classes
    TypeSymbolSymbol
  4. abstract type TypeOfClonedSymbol >: Null <: TypeSymbol

    Definition Classes
    TypeSymbolSymbol

Abstract Value Members

  1. abstract def cloneSymbolImpl(owner: Symbol, newFlags: Long): TypeOfClonedSymbol

    Internal method to clone a symbol's implementation with the given flags and no info.

    Internal method to clone a symbol's implementation with the given flags and no info.

    Definition Classes
    Symbol

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

    Implicit information
    This member is added by an implicit conversion from TypeSymbol to ArrowAssoc[TypeSymbol] 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 abbreviatedKindString: String

    String representation of symbol's kind, suitable for the masses.

    String representation of symbol's kind, suitable for the masses.

    Attributes
    protected[scala]
    Definition Classes
    Symbol
  9. def accessBoundary(base: Symbol): Symbol

    The class or term up to which this symbol is accessible, or RootClass if it is public.

    The class or term up to which this symbol is accessible, or RootClass if it is public. As java protected statics are otherwise completely inaccessible in scala, they are treated as public.

    Definition Classes
    Symbol
  10. def accessString: String

    Definition Classes
    HasFlags
  11. final def accessed(ownerTp: Type): Symbol

    The symbol accessed by this accessor function, but with given owner type.

    The symbol accessed by this accessor function, but with given owner type.

    Definition Classes
    Symbol
  12. final def accessed: Symbol

    The symbol accessed by this accessor (getter or setter) function.

    The symbol accessed by this accessor (getter or setter) function.

    Definition Classes
    Symbol
  13. def accessedOrSelf: Symbol

    If this is an accessor, the accessed symbol.

    If this is an accessor, the accessed symbol. Otherwise, this symbol.

    Definition Classes
    Symbol
  14. final def accurateKindString: String

    Accurate string representation of symbols' kind, suitable for developers.

    Accurate string representation of symbols' kind, suitable for developers.

    Definition Classes
    Symbol
  15. def addAnnotation(sym: Symbol, args: Tree*): TypeSymbol.this.type

    Definition Classes
    Symbol
  16. def addAnnotation(annot: AnnotationInfo): TypeSymbol.this.type

    Definition Classes
    Symbol
  17. def addChild(sym: Symbol): Unit

    Definition Classes
    Symbol
  18. def alias: Symbol

    For a paramaccessor: a superclass paramaccessor for which this symbol is an alias, NoSymbol for all others.

    For a paramaccessor: a superclass paramaccessor for which this symbol is an alias, NoSymbol for all others.

    Definition Classes
    Symbol
  19. final def allOverriddenSymbols: List[Symbol]

    Returns all symbols overriden by this symbol.

    Returns all symbols overriden by this symbol.

    Definition Classes
    Symbol
  20. def alternatives: List[Symbol]

    Definition Classes
    Symbol → AbsSymbol
  21. def alwaysHasFlags: Long

    Attributes
    protected
    Definition Classes
    SymbolFlagLogic
  22. def ancestors: List[Symbol]

    All directly or indirectly inherited classes.

    All directly or indirectly inherited classes.

    Definition Classes
    Symbol
  23. def annotations: List[AnnotationInfo]

    After the typer phase (before, look at the definition's Modifiers), contains the annotations attached to member a definition (class, method, type, field).

    After the typer phase (before, look at the definition's Modifiers), contains the annotations attached to member a definition (class, method, type, field).

    Definition Classes
    SymbolAnnotatableHasFlags → AbsSymbol
  24. def annotationsString: String

    Definition Classes
    Symbol
  25. final def asInstanceOf[T0]: T0

    Definition Classes
    Any
  26. final def asNameType(n: Name): TypeName

    Definition Classes
    TypeSymbolSymbol
  27. def asTermSymbol: TermSymbol

    Definition Classes
    Symbol
  28. def asType: Type

    Definition Classes
    AbsSymbolImpl → AbsSymbolInternal
  29. def asTypeConstructor: Type

    Definition Classes
    AbsSymbolImpl → AbsSymbol
  30. def asTypeIn(site: Type): Type

    Definition Classes
    AbsSymbolImpl → AbsSymbol
  31. def asTypeSymbol: TypeSymbol

    To overcome the crazy challenge of more specific types appearing in incoming positions.

    To overcome the crazy challenge of more specific types appearing in incoming positions. Don't need this much.

    Definition Classes
    Symbol
  32. def calculateFlagString(basis: Long): String

    Attributes
    protected
    Definition Classes
    HasFlags
  33. final def caseFieldAccessors: List[Symbol]

    For a case class, the symbols of the accessor methods, one for each argument in the first parameter list of the primary constructor.

    For a case class, the symbols of the accessor methods, one for each argument in the first parameter list of the primary constructor. The empty list for all other classes.

    Definition Classes
    Symbol
  34. final def caseModule: Symbol

    The case module corresponding to this case class

    The case module corresponding to this case class

    Definition Classes
    Symbol
  35. def changeNameInOwners(name: Name): Unit

    Attributes
    protected[this]
    Definition Classes
    Symbol
  36. def children: Set[Symbol]

    If this is a sealed class, its known direct subclasses.

    If this is a sealed class, its known direct subclasses. Otherwise, the empty set.

    Definition Classes
    Symbol
  37. def classBound: Type

    The least proper supertype of a class; includes all parent types and refinement where needed.

    The least proper supertype of a class; includes all parent types and refinement where needed. You need to compute that in a situation like this: { class C extends P { ... } new C }

    Definition Classes
    Symbol
  38. def clone(): AnyRef

    Attributes
    protected[lang]
    Definition Classes
    AnyRef
    Annotations
    @throws()
  39. final def cloneSymbol(newOwner: Symbol, newFlags: Long, newName: Name): TypeOfClonedSymbol

    Definition Classes
    Symbol
  40. final def cloneSymbol(newOwner: Symbol, newFlags: Long): TypeOfClonedSymbol

    Definition Classes
    Symbol
  41. final def cloneSymbol(newOwner: Symbol): TypeOfClonedSymbol

    A clone of this symbol, but with given owner.

    A clone of this symbol, but with given owner.

    Definition Classes
    Symbol
  42. final def cloneSymbol: TypeOfClonedSymbol

    A clone of this symbol.

    A clone of this symbol.

    Definition Classes
    Symbol
  43. def companionClass: Symbol

    For a module: the class with the same name in the same package.

    For a module: the class with the same name in the same package. For all others: NoSymbol Note: does not work for classes owned by methods, see Namers.companionClassOf

    object Foo . companionClass --> class Foo

    !!! linkedClassOfClass depends on companionClass on the module class getting to the class. As presently implemented this potentially returns class for any symbol except NoSymbol.

    Definition Classes
    Symbol
  44. def companionModule: Symbol

    For a class: the module or case class factory with the same name in the same package.

    For a class: the module or case class factory with the same name in the same package. For all others: NoSymbol Note: does not work for modules owned by methods, see Namers.companionModuleOf

    class Foo . companionModule --> object Foo

    Definition Classes
    Symbol
  45. def companionSymbol: Symbol

    For a module: its linked class For a plain class: its linked module or case factory.

    For a module: its linked class For a plain class: its linked module or case factory. Note: does not work for modules owned by methods, see Namers.companionSymbolOf

    class Foo <-- companionSymbol --> object Foo

    Definition Classes
    Symbol → AbsSymbol
  46. final def constrParamAccessors: List[Symbol]

    Definition Classes
    Symbol
  47. final def cookJavaRawInfo(): Unit

    Modify term symbol's type so that a raw type C is converted to an existential C[_]

    Modify term symbol's type so that a raw type C is converted to an existential C[_]

    This is done in checkAccessible and overriding checks in refchecks We can't do this on class loading because it would result in infinite cycles.

    Definition Classes
    Symbol
  48. def createAbstractTypeSymbol(name: TypeName, pos: Position, newFlags: Long): AbstractTypeSymbol

    Symbol creation implementations.

    Symbol creation implementations.

    Attributes
    protected
    Definition Classes
    SymbolSymbolCreatorInterface
  49. def createAliasTypeSymbol(name: TypeName, pos: Position, newFlags: Long): AliasTypeSymbol

    Attributes
    protected
    Definition Classes
    SymbolSymbolCreatorInterface
  50. def createClassSymbol(name: TypeName, pos: Position, newFlags: Long): ClassSymbol

    Attributes
    protected
    Definition Classes
    SymbolSymbolCreatorInterface
  51. def createImplClassSymbol(name: TypeName, pos: Position, newFlags: Long): ClassSymbol

    Attributes
    protected
    Definition Classes
    SymbolSymbolCreatorInterface
  52. def createMethodSymbol(name: TermName, pos: Position, newFlags: Long): MethodSymbol

    Attributes
    protected
    Definition Classes
    SymbolSymbolCreatorInterface
  53. def createModuleClassSymbol(name: TypeName, pos: Position, newFlags: Long): ModuleClassSymbol

    Attributes
    protected
    Definition Classes
    SymbolSymbolCreatorInterface
  54. def createModuleSymbol(name: TermName, pos: Position, newFlags: Long): ModuleSymbol

    Attributes
    protected
    Definition Classes
    SymbolSymbolCreatorInterface
  55. def createPackageClassSymbol(name: TypeName, pos: Position, newFlags: Long): PackageClassSymbol

    Attributes
    protected
    Definition Classes
    SymbolSymbolCreatorInterface
  56. def createPackageObjectClassSymbol(pos: Position, newFlags: Long): PackageObjectClassSymbol

    Attributes
    protected
    Definition Classes
    SymbolSymbolCreatorInterface
  57. def createPackageSymbol(name: TermName, pos: Position, newFlags: Long): PackageSymbol

    Attributes
    protected
    Definition Classes
    SymbolSymbolCreatorInterface
  58. def createRefinementClassSymbol(pos: Position, newFlags: Long): RefinementClassSymbol

    Attributes
    protected
    Definition Classes
    SymbolSymbolCreatorInterface
  59. def createTermSymbol(name: TermName, pos: Position, newFlags: Long): TermSymbol

    Attributes
    protected
    Definition Classes
    SymbolSymbolCreatorInterface
  60. def createTypeSkolemSymbol(name: TypeName, origin: AnyRef, pos: Position, newFlags: Long): TypeSkolem

    Attributes
    protected
    Definition Classes
    SymbolSymbolCreatorInterface
  61. def createValueMemberSymbol(name: TermName, pos: Position, newFlags: Long): TermSymbol

    Attributes
    protected
    Definition Classes
    Symbol
  62. def createValueParameterSymbol(name: TermName, pos: Position, newFlags: Long): TermSymbol

    Attributes
    protected
    Definition Classes
    Symbol
  63. def deSkolemize: Symbol

    If this symbol is a type parameter skolem (not an existential skolem!) its corresponding type parameter, otherwise this

    If this symbol is a type parameter skolem (not an existential skolem!) its corresponding type parameter, otherwise this

    Definition Classes
    Symbol
  64. def dealias: Symbol

    Expands type aliases

    Expands type aliases

    Definition Classes
    Symbol
  65. def debugFlagString: String

    Definition Classes
    SymbolFlagLogic
  66. def debugLocationString: String

    Definition Classes
    Symbol
  67. def decodedName: String

    The decoded name of the symbol, e.

    The decoded name of the symbol, e.g. == instead of $eq$eq.

    Definition Classes
    Symbol
  68. def defString: String

    String representation of symbol's definition.

    String representation of symbol's definition. It uses the symbol's raw info to avoid forcing types.

    Definition Classes
    Symbol
  69. def defStringSeenAs(info: Type): String

    String representation of symbol's definition, using the supplied info rather than the symbol's.

    String representation of symbol's definition, using the supplied info rather than the symbol's.

    Definition Classes
    Symbol
  70. def deprecatedParamName: Option[TermName]

    Definition Classes
    Symbol
  71. def deprecationMessage: Option[String]

    Definition Classes
    Symbol
  72. def deprecationVersion: Option[String]

    Definition Classes
    Symbol
  73. def doCookJavaRawInfo(): Unit

    * example: public class Test3<T> {} public class Test1<T extends Test3> {} info for T in Test1 should be >: Nothing <: Test3[_]

    * example: public class Test3<T> {} public class Test1<T extends Test3> {} info for T in Test1 should be >: Nothing <: Test3[_]

    Attributes
    protected
    Definition Classes
    TypeSymbolSymbol
  74. def effectiveOwner: Symbol

    The owner, skipping package objects.

    The owner, skipping package objects.

    Definition Classes
    Symbol
  75. def elisionLevel: Option[Int]

    Definition Classes
    Symbol
  76. def enclClass: Symbol

    The next enclosing class.

    The next enclosing class.

    Definition Classes
    Symbol
  77. def enclClassChain: List[Symbol]

    Definition Classes
    Symbol
  78. def enclMethod: Symbol

    The next enclosing method.

    The next enclosing method.

    Definition Classes
    Symbol
  79. def enclosingClass: Symbol

    Definition Classes
    AbsSymbolImpl → AbsSymbol
  80. def enclosingMethod: Symbol

    Definition Classes
    AbsSymbolImpl → AbsSymbol
  81. def enclosingPackage: Symbol

    The package containing this symbol, or NoSymbol if there is not one.

    The package containing this symbol, or NoSymbol if there is not one.

    Definition Classes
    Symbol
  82. def enclosingPackageClass: Symbol

    The package class containing this symbol, or NoSymbol if there is not one.

    The package class containing this symbol, or NoSymbol if there is not one.

    Definition Classes
    Symbol → AbsSymbol
  83. def enclosingTopLevelClass: Symbol

    The top-level class containing this symbol.

    The top-level class containing this symbol.

    Definition Classes
    Symbol → AbsSymbol
  84. def encodedName: String

    The name of the symbol before decoding, e.

    The name of the symbol before decoding, e.g. $eq$eq instead of ==.

    Definition Classes
    Symbol
  85. def ensuring(cond: (TypeSymbol) ⇒ Boolean, msg: ⇒ Any): TypeSymbol

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

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

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

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

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

    Definition Classes
    AnyRef → Any
  91. def existentialBound: Type

    Overridden in subclasses for which it makes sense.

    Overridden in subclasses for which it makes sense.

    Definition Classes
    TypeSymbolSymbol
  92. def existentialToString: String

    String representation of existentially bound variable

    String representation of existentially bound variable

    Definition Classes
    Symbol
  93. def exists: Boolean

    Definition Classes
    Symbol
  94. def expandName(base: Symbol): Unit

    change name by appending $$<fully-qualified-name-of-class base> Do the same for any accessed symbols or setters/getters.

    change name by appending $$<fully-qualified-name-of-class base> Do the same for any accessed symbols or setters/getters. Implementation in TermSymbol.

    Definition Classes
    Symbol
  95. final def extendedOverriddenSymbols: List[Symbol]

    Returns all symbols overridden by this symbol, plus all matching symbols defined in parents of the selftype.

    Returns all symbols overridden by this symbol, plus all matching symbols defined in parents of the selftype.

    Definition Classes
    Symbol
  96. def filter(cond: (Symbol) ⇒ Boolean): Symbol

    Definition Classes
    Symbol → AbsSymbol
  97. def filterAnnotations(p: (AnnotationInfo) ⇒ Boolean): TypeSymbol.this.type

    Definition Classes
    SymbolAnnotatable
  98. def finalize(): Unit

    Attributes
    protected[lang]
    Definition Classes
    AnyRef
    Annotations
    @throws()
  99. def firstParam: Symbol

    The first parameter to the first argument list of this method, or NoSymbol if inapplicable.

    The first parameter to the first argument list of this method, or NoSymbol if inapplicable.

    Definition Classes
    Symbol
  100. def firstParamAccessor: Symbol

    Return the accessor method of the first parameter of this class.

    Return the accessor method of the first parameter of this class. or NoSymbol if it does not exist.

    Definition Classes
    Symbol
  101. def flagBitsToString(bits: Long): String

    Definition Classes
    HasFlags
  102. def flagMask: Long

    Definition Classes
    SymbolFlagLogic
  103. def flagString(mask: Long): String

    Definition Classes
    HasFlags
  104. def flagString: String

    The printable representation of this entity's flags and access boundary, restricted to flags in the given mask.

    The printable representation of this entity's flags and access boundary, restricted to flags in the given mask.

    Definition Classes
    HasFlags
  105. final def flags: Long

    Though both Symbol and Modifiers widen this method to public, it's defined protected here to give us the option in the future to route flag methods through accessors and disallow raw flag manipulation.

    Though both Symbol and Modifiers widen this method to public, it's defined protected here to give us the option in the future to route flag methods through accessors and disallow raw flag manipulation. And after that, perhaps, on some magical day: a typesafe enumeration.

    Definition Classes
    SymbolHasFlags
  106. def flagsExplanationString: String

    Definition Classes
    SymbolFlagLogic
  107. def flags_=(fs: Long): Unit

    Definition Classes
    Symbol
  108. final def flatOwnerInfo: Type

    Returns the rawInfo of the owner.

    Returns the rawInfo of the owner. If the current phase has flat classes, it first applies all pending type maps to this symbol.

    assume this is the ModuleSymbol for B in the following definition: package p { class A { object B { val x = 1 } } }

    The owner after flatten is "package p" (see "def owner"). The flatten type map enters symbol B in the decls of p. So to find a linked symbol ("object B" or "class B") we need to apply flatten to B first. Fixes #2470.

    Attributes
    protected
    Definition Classes
    Symbol
  109. def formatted(fmtstr: String): String

    Implicit information
    This member is added by an implicit conversion from TypeSymbol to StringFormat performed by method any2stringfmt in scala.Predef.
    Definition Classes
    StringFormat
    Annotations
    @inline()
  110. final def freshExistential(suffix: String): TypeSymbol

    Definition Classes
    Symbol
  111. def fullLocationString: String

    Definition Classes
    Symbol
  112. final def fullName: String

    The encoded full path name of this symbol, where outer names and inner names are separated by periods.

    The encoded full path name of this symbol, where outer names and inner names are separated by periods.

    Definition Classes
    Symbol → AbsSymbol
  113. final def fullName(separator: Char): String

    The encoded full path name of this symbol, where outer names and inner names are separated by separator characters.

    The encoded full path name of this symbol, where outer names and inner names are separated by separator characters. Never translates expansions of operators back to operator symbol. Never adds id. Drops package objects.

    Definition Classes
    Symbol
  114. def fullNameAsName(separator: Char): Name

    Definition Classes
    Symbol
  115. def fullNameString: String

    Definition Classes
    Symbol
  116. def getAnnotation(cls: Symbol): Option[AnnotationInfo]

    Definition Classes
    Annotatable
  117. final def getClass(): Class[_]

    Definition Classes
    AnyRef → Any
  118. final def getFlag(mask: Long): Long

    Definition Classes
    SymbolSymbolFlagLogic
    Annotations
    @inline()
  119. final def getter(base: Symbol): Symbol

    The getter of this value or setter definition in class base, or NoSymbol if none exists.

    The getter of this value or setter definition in class base, or NoSymbol if none exists.

    Definition Classes
    Symbol
  120. def getterName: TermName

    Definition Classes
    Symbol
  121. def hasAbstractFlag: Boolean

    Definition Classes
    HasFlags
  122. final def hasAccessBoundary: Boolean

    Does symbol have a private or protected qualifier set?

    Does symbol have a private or protected qualifier set?

    Definition Classes
    SymbolHasFlags
  123. def hasAccessorFlag: Boolean

    Definition Classes
    HasFlags
  124. final def hasAllFlags(mask: Long): Boolean

    Does symbol have ALL the flags in mask set?

    Does symbol have ALL the flags in mask set?

    Definition Classes
    SymbolSymbolFlagLogicHasFlags
    Annotations
    @inline()
  125. def hasAnnotation(cls: Symbol): Boolean

    Test for, get, or remove an annotation

    Test for, get, or remove an annotation

    Definition Classes
    Annotatable
  126. def hasBridgeAnnotation: Boolean

    Definition Classes
    Symbol
  127. def hasCompleteInfo: Boolean

    Definition Classes
    Symbol
  128. def hasContravariantFlag: Boolean

    Definition Classes
    HasFlags
  129. def hasDefault: Boolean

    Definition Classes
    SymbolHasFlags
  130. final def hasFlag(mask: Long): Boolean

    Does symbol have ANY flag in mask set?

    Does symbol have ANY flag in mask set?

    Definition Classes
    SymbolSymbolFlagLogicHasFlags
    Annotations
    @inline()
  131. final def hasGetter: Boolean

    Definition Classes
    Symbol
  132. def hasInConstructorFlag: Boolean

    Definition Classes
    HasFlags
  133. def hasLocalFlag: Boolean

    Definition Classes
    HasFlags
  134. def hasMeaninglessName: Boolean

    If the name of the symbol's owner should be used when you care about seeing an interesting name: in such cases this symbol is e.

    If the name of the symbol's owner should be used when you care about seeing an interesting name: in such cases this symbol is e.g. a method parameter with a synthetic name, a constructor named "this", an object "package", etc. The kind string, if non-empty, will be phrased relative to the name of the owner.

    Definition Classes
    Symbol
  135. def hasMigrationAnnotation: Boolean

    Definition Classes
    Symbol
  136. def hasModifier(mod: Modifier): Boolean

    !!! The logic after "hasFlag" is far too opaque to be unexplained.

    !!! The logic after "hasFlag" is far too opaque to be unexplained. I'm guessing it's attempting to compensate for flag overloading, and embedding such logic in an undocumented island like this is a notarized guarantee of future breakage.

    Definition Classes
    Symbol → AbsSymbol
  137. def hasModuleFlag: Boolean

    Definition Classes
    HasFlags
  138. def hasNoFlags(mask: Long): Boolean

    Whether this entity has NONE of the flags in the given mask.

    Whether this entity has NONE of the flags in the given mask.

    Definition Classes
    HasFlags
  139. def hasPackageFlag: Boolean

    Definition Classes
    HasFlags
  140. def hasParamWhich(cond: (Symbol) ⇒ Boolean): Boolean

    Definition Classes
    Symbol
  141. def hasRawInfo: Boolean

    Definition Classes
    Symbol
  142. def hasStableFlag: Boolean

    Definition Classes
    HasFlags
  143. def hasStaticFlag: Boolean

    Definition Classes
    HasFlags
  144. def hasTransOwner(sym: Symbol): Boolean

    Same as ownerChain contains sym but more efficient, and with a twist for refinement classes (see RefinementClassSymbol.

    Same as ownerChain contains sym but more efficient, and with a twist for refinement classes (see RefinementClassSymbol.)

    Definition Classes
    Symbol
  145. final def hasTypeAt(pid: Int): Boolean

    Was symbol's type updated during given phase?

    Was symbol's type updated during given phase?

    Definition Classes
    Symbol
  146. def hashCode(): Int

    Definition Classes
    AnyRef → Any
  147. val id: Int

    Definition Classes
    Symbol → AbsSymbol
  148. final def idString: String

    If settings.

    If settings.uniqid is set, the symbol's id, else ""

    Definition Classes
    Symbol
  149. final def implClass: Symbol

    The implementation class of a trait.

    The implementation class of a trait. If available it will be the symbol with the same owner, and the name of this symbol with $class appended to it.

    Definition Classes
    Symbol
  150. def implicitNotFoundMsg: Option[String]

    Definition Classes
    Symbol
  151. def info: Type

    Get type info associated with symbol at current phase, after ensuring that symbol is initialized (i.

    Get type info associated with symbol at current phase, after ensuring that symbol is initialized (i.e. type is completed).

    Definition Classes
    Symbol
  152. final def infoString(tp: Type): String

    String representation of symbol's definition following its name

    String representation of symbol's definition following its name

    Definition Classes
    Symbol
  153. def info_=(tp: Type): Unit

    Definition Classes
    TypeSymbolSymbol
  154. def infosString: String

    Definition Classes
    Symbol
  155. def initFlags(mask: Long): TypeSymbol.this.type

    Set the symbol's flags to the given value, asserting that the previous value was 0.

    Set the symbol's flags to the given value, asserting that the previous value was 0.

    Definition Classes
    SymbolSymbolFlagLogic
  156. final def initialize: TypeSymbol.this.type

    Initialize the symbol

    Initialize the symbol

    Definition Classes
    Symbol
  157. def isAbstractClass: Boolean

    These are all tests for varieties of ClassSymbol, which has these subclasses:

    These are all tests for varieties of ClassSymbol, which has these subclasses:

    • ModuleClassSymbol
    • RefinementClassSymbol
    • PackageClassSymbol (extends ModuleClassSymbol)
    Definition Classes
    Symbol
  158. def isAbstractOverride: Boolean

    Definition Classes
    HasFlags
  159. def isAbstractType: Boolean

    Definition Classes
    TypeSymbolSymbol → AbsSymbol
  160. def isAccessor: Boolean

    Qualities of Terms, always false for TypeSymbols.

    Qualities of Terms, always false for TypeSymbols.

    Definition Classes
    Symbol
  161. def isAliasType: Boolean

    Definition Classes
    Symbol → AbsSymbol
  162. def isAnonOrRefinementClass: Boolean

    Definition Classes
    Symbol
  163. def isAnonymousClass: Boolean

    Definition Classes
    Symbol
  164. final def isAnonymousFunction: Boolean

    Definition Classes
    Symbol
  165. def isAnyOverride: Boolean

    Definition Classes
    HasFlags
  166. final def isAuxiliaryConstructor: Boolean

    Does this symbol denote an auxiliary constructor of its enclosing class?

    Does this symbol denote an auxiliary constructor of its enclosing class?

    Definition Classes
    Symbol
  167. def isBottomClass: Boolean

    The bottom classes are Nothing and Null, found in Definitions.

    The bottom classes are Nothing and Null, found in Definitions.

    Definition Classes
    Symbol
  168. def isBridge: Boolean

    Definition Classes
    Symbol
  169. def isCapturedVariable: Boolean

    Definition Classes
    Symbol
  170. def isCase: Boolean

    Definition Classes
    HasFlags
  171. def isCaseAccessor: Boolean

    Definition Classes
    HasFlags
  172. def isCaseAccessorMethod: Boolean

    Qualities of MethodSymbols, always false for TypeSymbols and other TermSymbols.

    Qualities of MethodSymbols, always false for TypeSymbols and other TermSymbols.

    Definition Classes
    Symbol
  173. final def isCaseApplyOrUnapply: Boolean

    Is this symbol a synthetic apply or unapply method in a companion object of a case class?

    Is this symbol a synthetic apply or unapply method in a companion object of a case class?

    Definition Classes
    Symbol
  174. def isCaseClass: Boolean

    Definition Classes
    Symbol
  175. def isClass: Boolean

    TypeSymbols fall into four named direct subclasses:

    TypeSymbols fall into four named direct subclasses:

    • ClassSymbol
    • AliasTypeSymbol
    • AbstractTypeSymbol
    • TypeSkolem
    Definition Classes
    Symbol → AbsSymbol
  176. def isClassConstructor: Boolean

    Definition Classes
    Symbol
  177. def isClassLocalToConstructor: Boolean

    Definition Classes
    Symbol
  178. def isClearing(f: Long, mask: Long): Boolean

    Attributes
    protected
    Definition Classes
    HasFlags
  179. def isCoDefinedWith(that: Symbol): Boolean

    Is this symbol defined in the same scope and compilation unit as that symbol?

    Is this symbol defined in the same scope and compilation unit as that symbol?

    Definition Classes
    Symbol
  180. def isConcreteClass: Boolean

    Definition Classes
    Symbol
  181. final def isConstant: Boolean

    Is this symbol a constant?

    Is this symbol a constant?

    Definition Classes
    Symbol
  182. def isConstructor: Boolean

    Definition Classes
    Symbol
  183. def isContravariant: Boolean

    Qualities of Types, always false for TermSymbols.

    Qualities of Types, always false for TermSymbols.

    Definition Classes
    TypeSymbolSymbol → AbsSymbol
  184. def isCovariant: Boolean

    Definition Classes
    TypeSymbolSymbol → AbsSymbol
  185. def isDeferred: Boolean

    Definition Classes
    HasFlags
  186. final def isDefinedInPackage: Boolean

    Definition Classes
    Symbol
  187. def isDeprecated: Boolean

    Definition Classes
    Symbol
  188. final def isDerivedValueClass: Boolean

    Definition Classes
    Symbol → AbsSymbol
  189. def isEarlyInitialized: Boolean

    Definition Classes
    Symbol
  190. def isEffectiveRoot: Boolean

    Is this symbol an effective root for fullname string?

    Is this symbol an effective root for fullname string?

    Definition Classes
    Symbol
  191. final def isEffectivelyFinal: Boolean

    Is this symbol effectively final? I.

    Is this symbol effectively final? I.e, it cannot be overridden

    Definition Classes
    Symbol
  192. def isEmptyPackage: Boolean

    Definition Classes
    Symbol
  193. def isEmptyPackageClass: Boolean

    Definition Classes
    Symbol
  194. def isEmptyPrefix: Boolean

    Definition Classes
    Symbol
  195. final def isErroneous: Boolean

    Definition Classes
    Symbol → AbsSymbol
  196. final def isError: Boolean

    Definition Classes
    Symbol
  197. def isExistential: Boolean

    Definition Classes
    AbsSymbolImpl → AbsSymbol
  198. def isExistentialQuantified: Boolean

    Definition Classes
    TypeSymbolSymbol
  199. def isExistentialSkolem: Boolean

    Definition Classes
    Symbol
  200. def isExistentiallyBound: Boolean

    Definition Classes
    TypeSymbolSymbol
  201. def isFBounded: Boolean

    Definition Classes
    Symbol
  202. def isFinal: Boolean

    Definition Classes
    HasFlags
  203. def isFreeTerm: Boolean

    Definition Classes
    Symbol → AbsSymbol
  204. def isFreeType: Boolean

    Definition Classes
    Symbol → AbsSymbolInternal
  205. def isGADTSkolem: Boolean

    Definition Classes
    Symbol
  206. def isGetter: Boolean

    Definition Classes
    Symbol
  207. def isHigherOrderTypeParameter: Boolean

    Definition Classes
    Symbol
  208. def isImplClass: Boolean

    Definition Classes
    Symbol
  209. final def isImplOnly: Boolean

    Is this a symbol which exists only in the implementation class, not in its trait?

    Is this a symbol which exists only in the implementation class, not in its trait?

    Definition Classes
    Symbol
  210. def isImplicit: Boolean

    Definition Classes
    HasFlags
  211. def isInDefaultNamespace: Boolean

    Definition Classes
    Symbol
  212. final def isIncompleteIn(base: Symbol): Boolean

    A a member of class base is incomplete if (1) it is declared deferred or (2) it is abstract override and its super symbol in base is nonexistent or incomplete.

    A a member of class base is incomplete if (1) it is declared deferred or (2) it is abstract override and its super symbol in base is nonexistent or incomplete.

    base

    ...

    returns

    ...

    Definition Classes
    Symbol
  213. final def isInitialized: Boolean

    Definition Classes
    Symbol
  214. final def isInitializedToDefault: Boolean

    Definition Classes
    Symbol
  215. final def isInstanceOf[T0]: Boolean

    Definition Classes
    Any
  216. def isInterface: Boolean

    Definition Classes
    HasFlags
  217. final def isInterpreterWrapper: Boolean

    Does this symbol denote a wrapper created by the repl?

    Does this symbol denote a wrapper created by the repl?

    Definition Classes
    Symbol
  218. def isJavaDefined: Boolean

    Definition Classes
    HasFlags
  219. def isJavaInterface: Boolean

    Definition Classes
    Symbol
  220. def isLabel: Boolean

    Definition Classes
    SymbolHasFlags
  221. def isLazy: Boolean

    Definition Classes
    HasFlags
  222. final def isLazyAccessor: Boolean

    Definition Classes
    Symbol
  223. final def isLess(that: Symbol): Boolean

    A total ordering between symbols that refines the class inheritance graph (i.

    A total ordering between symbols that refines the class inheritance graph (i.e. subclass.isLess(superclass) always holds). the ordering is given by: (_.isType, -_.baseTypeSeq.length) for type symbols, followed by id.

    Definition Classes
    Symbol
  224. def isLessAccessibleThan(other: Symbol): Boolean

    Definition Classes
    Symbol
  225. def isLifted: Boolean

    Definition Classes
    HasFlags
  226. def isLiftedMethod: Boolean

    Definition Classes
    Symbol
  227. final def isLocal: Boolean

    Is this symbol locally defined? I.

    Is this symbol locally defined? I.e. not accessed from outside this instance

    Definition Classes
    Symbol
  228. def isLocalClass: Boolean

    Is this class locally defined? A class is local, if

    Is this class locally defined? A class is local, if

    • it is anonymous, or
    • its owner is a value
    • it is defined within a local class
    Definition Classes
    Symbol
  229. def isLocalDummy: Boolean

    Definition Classes
    Symbol
  230. final def isLocatable: Boolean

    Determines whether this symbol can be loaded by subsequent reflective compilation

    Determines whether this symbol can be loaded by subsequent reflective compilation

    Definition Classes
    Symbol
  231. def isMemberOf(clazz: Symbol): Boolean

    Is this symbol a member of class clazz?

    Is this symbol a member of class clazz?

    Definition Classes
    Symbol
  232. def isMethod: Boolean

    Definition Classes
    Symbol → AbsSymbol
  233. final def isMethodWithExtension: Boolean

    Definition Classes
    Symbol
  234. def isMixinConstructor: Boolean

    Definition Classes
    Symbol
  235. def isModule: Boolean

    Definition Classes
    Symbol
  236. def isModuleClass: Boolean

    Definition Classes
    Symbol
  237. def isModuleOrModuleClass: Boolean

    Definition Classes
    Symbol
  238. final def isModuleVar: Boolean

    Definition Classes
    Symbol
  239. final def isMonomorphicType: Boolean

    Is symbol a monomorphic type? assumption: if a type starts out as monomorphic, it will not acquire type parameters in later phases.

    Is symbol a monomorphic type? assumption: if a type starts out as monomorphic, it will not acquire type parameters in later phases.

    Definition Classes
    Symbol
  240. def isMutable: Boolean

    Definition Classes
    HasFlags
  241. def isNestedClass: Boolean

    Is this class nested in another class or module (not a package)?

    Is this class nested in another class or module (not a package)?

    Definition Classes
    Symbol
  242. final def isNestedIn(that: Symbol): Boolean

    A partial ordering between symbols.

    A partial ordering between symbols. (this isNestedIn that) holds iff this symbol is defined within a class or method defining that symbol

    Definition Classes
    Symbol
  243. final def isNonBottomSubClass(that: Symbol): Boolean

    Is this class symbol a subclass of that symbol, and is this class symbol also different from Null or Nothing?

    Is this class symbol a subclass of that symbol, and is this class symbol also different from Null or Nothing?

    Definition Classes
    TypeSymbolSymbol
  244. def isNonClassType: Boolean

    A Type, but not a Class.

    A Type, but not a Class.

    Definition Classes
    TypeSymbolSymbol
  245. final def isNumericSubClass(that: Symbol): Boolean

    Definition Classes
    Symbol
  246. def isNumericValueClass: Boolean

    Definition Classes
    Symbol
  247. final def isOmittablePrefix: Boolean

    Conditions where we omit the prefix when printing a symbol, to avoid unpleasantries like Predef.

    Conditions where we omit the prefix when printing a symbol, to avoid unpleasantries like Predef.String, $iw.$iw.Foo and <empty>.Bippy.

    Definition Classes
    Symbol
  248. def isOnlyRefinementMember: Boolean

    Is this a term symbol only defined in a refinement (so that it needs to be accessed by reflection)?

    Is this a term symbol only defined in a refinement (so that it needs to be accessed by reflection)?

    Definition Classes
    Symbol
  249. final def isOuterAccessor: Boolean

    Is this symbol an accessor method for outer?

    Is this symbol an accessor method for outer?

    Definition Classes
    Symbol
  250. final def isOuterField: Boolean

    Is this symbol an accessor method for outer?

    Is this symbol an accessor method for outer?

    Definition Classes
    Symbol
  251. def isOverloaded: Boolean

    Definition Classes
    Symbol → AbsSymbol
  252. final def isOverridableMember: Boolean

    Definition Classes
    Symbol
  253. def isOverride: Boolean

    Definition Classes
    HasFlags
  254. def isOverridingSymbol: Boolean

    Equivalent to allOverriddenSymbols.

    Equivalent to allOverriddenSymbols.nonEmpty, but more efficient.

    Definition Classes
    Symbol
  255. def isPackage: Boolean

    Package/package object tests

    Package/package object tests

    Definition Classes
    Symbol → AbsSymbol
  256. def isPackageClass: Boolean

    Definition Classes
    Symbol → AbsSymbol
  257. def isPackageObject: Boolean

    Definition Classes
    Symbol
  258. def isPackageObjectClass: Boolean

    Definition Classes
    Symbol
  259. def isPackageObjectOrClass: Boolean

    Definition Classes
    Symbol
  260. def isParamAccessor: Boolean

    Definition Classes
    HasFlags
  261. final def isPossibleInRefinement: Boolean

    Definition Classes
    Symbol
  262. final def isPrimaryConstructor: Boolean

    Does this symbol denote the primary constructor of its enclosing class?

    Does this symbol denote the primary constructor of its enclosing class?

    Definition Classes
    Symbol
  263. def isPrimitiveValueClass: Boolean

    Definition Classes
    Symbol → AbsSymbol
  264. def isPrivate: Boolean

    Definition Classes
    HasFlags
  265. def isPrivateLocal: Boolean

    Definition Classes
    HasFlags
  266. def isProtected: Boolean

    Definition Classes
    HasFlags
  267. def isProtectedLocal: Boolean

    Definition Classes
    HasFlags
  268. def isPublic: Boolean

    Definition Classes
    HasFlags
  269. def isRefinementClass: Boolean

    Definition Classes
    Symbol
  270. def isRoot: Boolean

    Overridden in custom objects in Definitions

    Overridden in custom objects in Definitions

    Definition Classes
    Symbol
  271. def isRootPackage: Boolean

    Definition Classes
    Symbol
  272. def isRootSymbol: Boolean

    Definition Classes
    Symbol
  273. def isSealed: Boolean

    Definition Classes
    HasFlags
  274. def isSerializable: Boolean

    Definition Classes
    Symbol
  275. def isSetter: Boolean

    Definition Classes
    Symbol
  276. def isSetterParameter: Boolean

    Definition Classes
    Symbol
  277. def isSetting(f: Long, mask: Long): Boolean

    Attributes
    protected
    Definition Classes
    HasFlags
  278. def isSingletonExistential: Boolean

    Definition Classes
    Symbol
  279. def isSkolem: Boolean

    Definition Classes
    Symbol → AbsSymbolInternal
  280. def isSourceMethod: Boolean

    Definition Classes
    Symbol
  281. def isSpecialized: Boolean

    Definition Classes
    Symbol
  282. def isStable: Boolean

    Does this symbol denote a stable value?

    Does this symbol denote a stable value?

    Definition Classes
    Symbol
  283. def isStableClass: Boolean

    Definition Classes
    Symbol
  284. def isStatic: Boolean

    Is this symbol static (i.

    Is this symbol static (i.e. with no outer instance)? Q: When exactly is a sym marked as STATIC? A: If it's a member of a toplevel object, or of an object contained in a toplevel object, or any number of levels deep. http://groups.google.com/group/scala-internals/browse_thread/thread/d385bcd60b08faf6

    Definition Classes
    Symbol
  285. final def isStaticConstructor: Boolean

    Is this symbol a static constructor?

    Is this symbol a static constructor?

    Definition Classes
    Symbol
  286. final def isStaticMember: Boolean

    Is this symbol a static member of its class? (i.

    Is this symbol a static member of its class? (i.e. needs to be implemented as a Java static?)

    Definition Classes
    Symbol
  287. final def isStaticModule: Boolean

    Definition Classes
    Symbol
  288. final def isStaticOwner: Boolean

    Does this symbol denote a class that defines static symbols?

    Does this symbol denote a class that defines static symbols?

    Definition Classes
    Symbol
  289. def isStrictFP: Boolean

    Definition Classes
    Symbol
  290. final def isStructuralRefinement: Boolean

    Is this class or type defined as a structural refinement type?

    Is this class or type defined as a structural refinement type?

    Definition Classes
    Symbol
  291. final def isStructuralRefinementMember: Boolean

    Definition Classes
    Symbol
  292. def isSubClass(that: Symbol): Boolean

    Overridden in NullClass and NothingClass for custom behavior.

    Overridden in NullClass and NothingClass for custom behavior.

    Definition Classes
    Symbol
  293. def isSuperAccessor: Boolean

    Definition Classes
    HasFlags
  294. def isSynthetic: Boolean

    Definition Classes
    HasFlags
  295. def isTerm: Boolean

    All symbols are one of three categories: TermSymbol, TypeSymbol, or NoSymbol.

    All symbols are one of three categories: TermSymbol, TypeSymbol, or NoSymbol. There is only one NoSymbol.

    Definition Classes
    Symbol → AbsSymbol
  296. def isTermMacro: Boolean

    Definition Classes
    Symbol
  297. final def isThisSym: Boolean

    Definition Classes
    Symbol
  298. def isTopLevelModule: Boolean

    Definition Classes
    Symbol
  299. def isTrait: Boolean

    Definition Classes
    SymbolHasFlags
  300. final def isType: Boolean

    Definition Classes
    TypeSymbolSymbol → AbsSymbol
  301. def isTypeMacro: Boolean

    Definition Classes
    TypeSymbolSymbol
  302. def isTypeParameter: Boolean

    Definition Classes
    TypeSymbolSymbol
  303. def isTypeParameterOrSkolem: Boolean

    Definition Classes
    TypeSymbolSymbol
  304. def isTypeSkolem: Boolean

    Definition Classes
    Symbol
  305. final def isUpdatedAt(pid: Int): Boolean

    Was symbol's type updated during given phase?

    Was symbol's type updated during given phase?

    Definition Classes
    Symbol
  306. def isValue: Boolean

    Definition Classes
    Symbol
  307. def isValueParameter: Boolean

    Definition Classes
    Symbol
  308. def isVarargsMethod: Boolean

    Definition Classes
    Symbol
  309. def isVariable: Boolean

    Definition Classes
    Symbol
  310. final def isWeakSubClass(that: Symbol): Boolean

    Definition Classes
    Symbol
  311. def javaBinaryName: Name

    Definition Classes
    Symbol
  312. def javaClassName: String

    Definition Classes
    Symbol
  313. def javaSimpleName: Name

    These should be moved somewhere like JavaPlatform.

    These should be moved somewhere like JavaPlatform.

    Definition Classes
    Symbol
  314. final def keyString: String

    String representation of symbol's definition key word

    String representation of symbol's definition key word

    Definition Classes
    Symbol
  315. def kind: String

    Definition Classes
    AbsSymbolImpl → AbsSymbolInternal
  316. final def kindString: String

    Definition Classes
    Symbol
  317. def lazyAccessor: Symbol

    For a lazy value, its lazy accessor.

    For a lazy value, its lazy accessor. NoSymbol for all others.

    Definition Classes
    Symbol
  318. def lazyAccessorOrSelf: Symbol

    If this is a lazy value, the lazy accessor; otherwise this symbol.

    If this is a lazy value, the lazy accessor; otherwise this symbol.

    Definition Classes
    Symbol
  319. def linkedClassOfClass: Symbol

    For a module class: its linked class For a plain class: the module class of its linked module.

    For a module class: its linked class For a plain class: the module class of its linked module.

    class Foo <-- linkedClassOfClass --> class Foo$

    Definition Classes
    Symbol
  320. def locationString: String

    String representation of location, plus a preposition.

    String representation of location, plus a preposition. Doesn't do much, for backward compatibility reasons.

    Definition Classes
    Symbol
  321. def logicallyEnclosingMember: Symbol

    The method or class which logically encloses the current symbol.

    The method or class which logically encloses the current symbol. If the symbol is defined in the initialization part of a template this is the template's primary constructor, otherwise it is the physically enclosing method or class.

    Example 1:

    def f() { val x = { def g() = ...; g() } }

    In this case the owner chain of g is x, followed by f and g.logicallyEnclosingMember == f.

    Example 2:

    class C { def <init> = { ... } val x = { def g() = ...; g() } } }

    In this case the owner chain of g is x, followed by C but g.logicallyEnclosingMember is the primary constructor symbol <init> (or, for traits: $init) of C.

    Definition Classes
    Symbol
  322. final def makeNotPrivate(base: Symbol): Unit

    Remove private modifier from symbol syms definition.

    Remove private modifier from symbol syms definition. If sym is a is not a constructor nor a static module rename it by expanding its name to avoid name clashes

    base

    the fully qualified name of this class will be appended if name expansion is needed

    Definition Classes
    Symbol
  323. def makePublic: Symbol

    Remove any access boundary and clear flags PROTECTED | PRIVATE.

    Remove any access boundary and clear flags PROTECTED | PRIVATE.

    Definition Classes
    Symbol
  324. def makeSerializable(): Unit

    Adds the interface scala.

    Adds the interface scala.Serializable to the parents of a ClassInfoType. Note that the tree also has to be updated accordingly.

    Definition Classes
    Symbol
  325. final def matchingSymbol(site: Type, admit: Long = 0L): Symbol

    The non-private member of site whose type and name match the type of this symbol.

    The non-private member of site whose type and name match the type of this symbol.

    Definition Classes
    Symbol
  326. final def matchingSymbol(ofclazz: Symbol, site: Type): Symbol

    The non-private symbol whose type matches the type of this symbol in in given class.

    The non-private symbol whose type matches the type of this symbol in in given class.

    ofclazz

    The class containing the symbol's definition

    site

    The base type from which member types are computed

    Definition Classes
    Symbol
  327. def migrationMessage: Option[String]

    Definition Classes
    Symbol
  328. def migrationVersion: Option[String]

    Definition Classes
    Symbol
  329. def mixinClasses: List[Symbol]

    The directly or indirectly inherited mixins of this class except for mixin classes inherited by the superclass.

    The directly or indirectly inherited mixins of this class except for mixin classes inherited by the superclass. Mixin classes appear in linearization order.

    Definition Classes
    Symbol
  330. def modifiers: Set[Modifier]

    Definition Classes
    Symbol → AbsSymbol
  331. def modifyInfo(f: (Type) ⇒ Type): TypeSymbol.this.type

    Modifies this symbol's info in place.

    Modifies this symbol's info in place.

    Definition Classes
    Symbol
  332. def moduleClass: Symbol

    The module class corresponding to this module.

    The module class corresponding to this module.

    Definition Classes
    Symbol → AbsSymbol
  333. def moduleSuffix: String

    Definition Classes
    Symbol
  334. def name: TypeName

    Definition Classes
    TypeSymbol → TypeSymbolApi → Symbol → AbsSymbol
  335. def nameString: String

    String representation of symbol's simple name.

    String representation of symbol's simple name. If !settings.debug translates expansions of operators back to operator symbol. E.g. $eq => =. If settings.uniqid, adds id. If settings.Yshowsymkinds, adds abbreviated symbol kind.

    Definition Classes
    Symbol
  336. def name_=(name: Name): Unit

    Definition Classes
    TypeSymbolSymbol
  337. final def ne(arg0: AnyRef): Boolean

    Definition Classes
    AnyRef
  338. final def needsFlatClasses: Boolean

    Definition Classes
    Symbol
  339. final def needsImplClass: Boolean

    Is this symbol a trait which needs an implementation class?

    Is this symbol a trait which needs an implementation class?

    Definition Classes
    Symbol
  340. def needsModuleSuffix: Boolean

    Whether this symbol needs nme.

    Whether this symbol needs nme.MODULE_SUFFIX_STRING (aka $) appended on the java platform.

    Definition Classes
    Symbol
  341. def neverHasFlags: Long

    Attributes
    protected
    Definition Classes
    SymbolFlagLogic
  342. final def newAbstractType(name: TypeName, pos: Position = NoPosition, newFlags: Long = 0L): AbstractTypeSymbol

    Symbol of an abstract type type T >: .

    Symbol of an abstract type type T >: ... <: ...

    Definition Classes
    Symbol
  343. final def newAliasType(name: TypeName, pos: Position = NoPosition, newFlags: Long = 0L): AliasTypeSymbol

    Symbol of a type definition type T = .

    Symbol of a type definition type T = ...

    Definition Classes
    Symbol
  344. final def newAnonymousFunctionClass(pos: Position = NoPosition, newFlags: Long = 0L): ClassSymbol

    Definition Classes
    Symbol
  345. final def newAnonymousFunctionValue(pos: Position, newFlags: Long = 0L): TermSymbol

    Definition Classes
    Symbol
  346. final def newClass(name: TypeName, pos: Position = NoPosition, newFlags: Long = 0L): ClassSymbol

    Definition Classes
    Symbol
  347. def newClassConstructor(pos: Position): MethodSymbol

    Instance constructor with info set.

    Instance constructor with info set.

    Definition Classes
    Symbol
  348. final def newClassSymbol(name: TypeName, pos: Position = NoPosition, newFlags: Long = 0L): ClassSymbol

    Definition Classes
    SymbolCreator
  349. def newClassWithInfo(name: TypeName, parents: List[Type], scope: Scope, pos: Position = NoPosition, newFlags: Long = 0L): ClassSymbol

    A new class with its info set to a ClassInfoType with given scope and parents.

    A new class with its info set to a ClassInfoType with given scope and parents.

    Definition Classes
    Symbol
  350. final def newConstructor(pos: Position, newFlags: Long = 0L): MethodSymbol

    Propagates ConstrFlags (JAVA, specifically) from owner to constructor.

    Propagates ConstrFlags (JAVA, specifically) from owner to constructor.

    Definition Classes
    Symbol
  351. final def newErrorClass(name: TypeName): ClassSymbol

    Definition Classes
    Symbol
  352. final def newErrorSymbol(name: Name): Symbol

    Definition Classes
    Symbol
  353. final def newErrorValue(name: TermName): TermSymbol

    Definition Classes
    Symbol
  354. final def newExistential(name: TypeName, pos: Position = NoPosition, newFlags: Long = 0L): TypeSymbol

    Symbol of an existential type T forSome { .

    Symbol of an existential type T forSome { ... }

    Definition Classes
    Symbol
  355. def newExistentialSkolem(basis: Symbol, origin: AnyRef): TypeSkolem

    Create a new existential type skolem with this symbol its owner, based on the given symbol and origin.

    Create a new existential type skolem with this symbol its owner, based on the given symbol and origin.

    Definition Classes
    Symbol
  356. def newGADTSkolem(name: TypeName, origin: Symbol, info: Type): TypeSkolem

    Definition Classes
    Symbol
  357. final def newGetter: MethodSymbol

    Create a new getter for current symbol (which must be a field)

    Create a new getter for current symbol (which must be a field)

    Definition Classes
    Symbol
  358. def newImplClass(name: TypeName, pos: Position = NoPosition, newFlags: Long = 0L): ClassSymbol

    Definition Classes
    Symbol
  359. final def newImport(pos: Position): TermSymbol

    Definition Classes
    Symbol
  360. final def newLabel(name: TermName, pos: Position = NoPosition): MethodSymbol

    Definition Classes
    Symbol
  361. def newLinkedModule(clazz: Symbol, newFlags: Long = 0L): ModuleSymbol

    Definition Classes
    Symbol
  362. final def newLocalDummy(pos: Position): TermSymbol

    Create local dummy for template (owner of local blocks)

    Create local dummy for template (owner of local blocks)

    Definition Classes
    Symbol
  363. final def newMethod(name: TermName, pos: Position = NoPosition, newFlags: Long = 0L): MethodSymbol

    Definition Classes
    Symbol
  364. final def newModule(name: TermName, pos: Position = NoPosition, newFlags: Long = 0L): ModuleSymbol

    Definition Classes
    Symbol
  365. final def newModuleClass(name: TypeName, pos: Position = NoPosition, newFlags: Long = 0L): ModuleClassSymbol

    Definition Classes
    Symbol
  366. final def newModuleClassSymbol(name: TypeName, pos: Position = NoPosition, newFlags: Long = 0L): ModuleClassSymbol

    Definition Classes
    Symbol
  367. final def newModuleSymbol(name: TermName, pos: Position = NoPosition, newFlags: Long = 0L): ModuleSymbol

    Definition Classes
    Symbol
  368. def newNestedSymbol(name: Name, pos: Position, newFlags: Long, isClass: Boolean): Symbol

    Definition Classes
    AbsSymbolImpl → AbsSymbolInternal
  369. final def newNonClassSymbol(name: TypeName, pos: Position = NoPosition, newFlags: Long = 0L): TypeSymbol

    Definition Classes
    SymbolCreator
  370. final def newOverloaded(pre: Type, alternatives: List[Symbol]): TermSymbol

    pre

    type relative to which alternatives are seen. for instance: class C[T] { def m(x: T): T def m'(): T } val v: C[Int]

    Then v.m has symbol TermSymbol(flags = {OVERLOADED}, tpe = OverloadedType(C[Int], List(m, m'))) You recover the type of m doing a

    m.tpe.asSeenFrom(pre, C) (generally, owner of m, which is C here).

    or:

    pre.memberType(m)

    Definition Classes
    Symbol
  371. final def newPackage(name: TermName, pos: Position = NoPosition, newFlags: Long = 0L): ModuleSymbol

    Definition Classes
    Symbol
  372. final def newRefinementClass(pos: Position): RefinementClassSymbol

    Refinement types P { val x: String; type T <: Number } also have symbols, they are refinementClasses

    Refinement types P { val x: String; type T <: Number } also have symbols, they are refinementClasses

    Definition Classes
    Symbol
  373. def newStaticConstructor(pos: Position): MethodSymbol

    Static constructor with info set.

    Static constructor with info set.

    Definition Classes
    Symbol
  374. def newSyntheticTypeParam(name: String, newFlags: Long): TypeSymbol

    Definition Classes
    Symbol
  375. def newSyntheticTypeParam(): TypeSymbol

    Definition Classes
    Symbol
  376. def newSyntheticTypeParams(num: Int): List[TypeSymbol]

    Definition Classes
    Symbol
  377. final def newSyntheticValueParam(argtype: Type): Symbol

    Synthetic value parameter when parameter symbol is not available.

    Synthetic value parameter when parameter symbol is not available. Calling this method multiple times will re-use the same parameter name.

    Definition Classes
    Symbol
  378. final def newSyntheticValueParams(argtypes: List[Type]): List[TermSymbol]

    Synthetic value parameters when parameter symbols are not available.

    Synthetic value parameters when parameter symbols are not available. Calling this method multiple times will re-use the same parameter names.

    Definition Classes
    Symbol
  379. final def newSyntheticValueParamss(argtypess: List[List[Type]]): List[List[TermSymbol]]

    Synthetic value parameters when parameter symbols are not available

    Synthetic value parameters when parameter symbols are not available

    Definition Classes
    Symbol
  380. final def newTermSymbol(name: TermName, pos: Position = NoPosition, newFlags: Long = 0L): TermSymbol

    * Predictable symbol creation.

    * Predictable symbol creation.

    newTermSymbol, newClassSymbol, and newNonClassSymbol all create symbols based only on the flags (for reconstruction after reification.) It would be nice to combine the last two into newTypeSymbol, but this requires some flag which allows us to distinguish classes and type aliases, which as yet does not exist.

    The fundamental flags used to determine which Symbol subclass to instantiate are: METHOD, PACKAGE, MODULE, PARAM, DEFERRED.

    Definition Classes
    SymbolCreator
  381. final def newThisSym(name: TermName = nme.this_, pos: Position = NoPosition): TermSymbol

    Definition Classes
    Symbol
  382. final def newTypeParameter(name: TypeName, pos: Position = NoPosition, newFlags: Long = 0L): TypeSymbol

    Symbol of a type parameter

    Symbol of a type parameter

    Definition Classes
    Symbol
  383. final def newTypeSkolem: TypeSkolem

    Type skolems are type parameters seen from the inside Assuming a polymorphic method m[T], its type is a PolyType which has a TypeParameter with name T in its typeParams list.

    Type skolems are type parameters seen from the inside Assuming a polymorphic method m[T], its type is a PolyType which has a TypeParameter with name T in its typeParams list. While type checking the parameters, result type and body of the method, there's a local copy of T which is a TypeSkolem.

    Definition Classes
    Symbol
  384. final def newTypeSkolemSymbol(name: TypeName, origin: AnyRef, pos: Position = NoPosition, newFlags: Long = 0L): TypeSkolem

    Definition Classes
    Symbol
  385. def newTypeSymbol(name: TypeName, pos: Position = NoPosition, newFlags: Long = 0L): TypeSymbol

    Definition Classes
    SymbolCreator
  386. final def newValue(name: TermName, pos: Position = NoPosition, newFlags: Long = 0L): TermSymbol

    Definition Classes
    Symbol
  387. final def newValueParameter(name: TermName, pos: Position = NoPosition, newFlags: Long = 0L): TermSymbol

    Definition Classes
    Symbol
  388. final def newVariable(name: TermName, pos: Position = NoPosition, newFlags: Long = 0L): TermSymbol

    Definition Classes
    Symbol
  389. def nextOverriddenSymbol: Symbol

    Equivalent to allOverriddenSymbols.

    Equivalent to allOverriddenSymbols.head (or NoSymbol if no overrides) but more efficient.

    Definition Classes
    Symbol
  390. final def notify(): Unit

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

    Definition Classes
    AnyRef
  392. final def orElse[T](alt: ⇒ Symbol): Symbol

    Definition Classes
    Symbol → AbsSymbol
    Annotations
    @inline()
  393. def originalEnclosingMethod: Symbol

    Return the original enclosing method of this symbol.

    Return the original enclosing method of this symbol. It should return the same thing as enclMethod when called before lambda lift, but it preserves the original nesting when called afterwards.

    Definition Classes
    Symbol
    Note

    This method is NOT available in the presentation compiler run. The originalOwner map is not populated for memory considerations (the symbol may hang on to lazy types and in turn to whole (outdated) compilation units.

  394. def originalInfo: Type

    Definition Classes
    Symbol
  395. def originalName: Name

    If this symbol has an expanded name, its original name, otherwise its name itself.

    If this symbol has an expanded name, its original name, otherwise its name itself.

    Definition Classes
    Symbol
    See also

    expandName

  396. def originalOwnerChain: List[Symbol]

    Definition Classes
    Symbol
  397. final def outerClass: Symbol

    The class that is logically an outer class of given clazz.

    The class that is logically an outer class of given clazz. This is the enclosing class, except for classes defined locally to constructors, where it is the outer class of the enclosing class.

    Definition Classes
    Symbol
  398. def outerSource: Symbol

    For an outer accessor: The class from which the outer originates.

    For an outer accessor: The class from which the outer originates. For all other symbols: NoSymbol

    Definition Classes
    Symbol
  399. final def overriddenSymbol(ofclazz: Symbol): Symbol

    The symbol, in class ofclazz, that is overridden by this symbol.

    The symbol, in class ofclazz, that is overridden by this symbol.

    ofclazz

    is a base class of this symbol's owner.

    Definition Classes
    Symbol
  400. final def overridingSymbol(ofclazz: Symbol): Symbol

    The symbol overriding this symbol in given subclass ofclazz.

    The symbol overriding this symbol in given subclass ofclazz.

    ofclazz

    is a subclass of this symbol's owner

    Definition Classes
    Symbol
  401. def owner: Symbol

    Definition Classes
    Symbol → AbsSymbol
  402. def ownerChain: List[Symbol]

    Definition Classes
    Symbol
  403. def ownerOfNewSymbols: Symbol

    For RootClass, this is EmptyPackageClass.

    For RootClass, this is EmptyPackageClass. For all other symbols, the symbol itself.

    Definition Classes
    Symbol
  404. def owner_=(owner: Symbol): Unit

    Definition Classes
    Symbol
  405. def ownersIterator: Iterator[Symbol]

    Definition Classes
    Symbol
  406. def ownsString: String

    String representation of location.

    String representation of location.

    Definition Classes
    Symbol
  407. def paramPos: Int

    The sequence number of this parameter symbol among all type and value parameters of symbol's owner.

    The sequence number of this parameter symbol among all type and value parameters of symbol's owner. -1 if symbol does not appear among the parameters of its owner.

    Definition Classes
    Symbol
  408. def paramss: List[List[Symbol]]

    The value parameter sections of this symbol.

    The value parameter sections of this symbol.

    Definition Classes
    Symbol
  409. def parentSymbols: List[Symbol]

    Definition Classes
    Symbol
  410. def pos: Position

    Definition Classes
    Symbol → AbsSymbol
  411. def primaryConstructor: Symbol

    The primary constructor of a class.

    The primary constructor of a class.

    Definition Classes
    Symbol
  412. def privateWithin: Symbol

    Access level encoding: there are three scala flags (PRIVATE, PROTECTED, and LOCAL) which combine with value privateWithin (the "foo" in private[foo]) to define from where an entity can be accessed.

    Access level encoding: there are three scala flags (PRIVATE, PROTECTED, and LOCAL) which combine with value privateWithin (the "foo" in private[foo]) to define from where an entity can be accessed. The meanings are as follows:

    PRIVATE access restricted to class only. PROTECTED access restricted to class and subclasses only. LOCAL can only be set in conjunction with PRIVATE or PROTECTED. Further restricts access to the same object instance.

    In addition, privateWithin can be used to set a visibility barrier. When set, everything contained in the named enclosing package or class has access. It is incompatible with PRIVATE or LOCAL, but is additive with PROTECTED (i.e. if either the flags or privateWithin allow access, then it is allowed.)

    The java access levels translate as follows:

    java private: hasFlag(PRIVATE) && !hasAccessBoundary java package: !hasFlag(PRIVATE | PROTECTED) && (privateWithin == enclosing package) java protected: hasFlag(PROTECTED) && (privateWithin == enclosing package) java public: !hasFlag(PRIVATE | PROTECTED) && !hasAccessBoundary

    Definition Classes
    SymbolHasFlags → AbsSymbol
  413. def privateWithinString: String

    Definition Classes
    HasFlags
  414. def privateWithin_=(sym: Symbol): Unit

    Definition Classes
    Symbol
  415. def rawFlagString: String

    Definition Classes
    SymbolFlagLogic
  416. def rawFlagString(mask: Long): String

    Definition Classes
    SymbolFlagLogic
  417. def rawInfo: Type

    Return info without checking for initialization or completing

    Return info without checking for initialization or completing

    Definition Classes
    Symbol
  418. def rawflags: Long

    Definition Classes
    Symbol
  419. def rawflags_=(x: Long): Unit

    Definition Classes
    Symbol
  420. def rawname: TypeName

    Definition Classes
    TypeSymbolSymbol
  421. def rawowner: Symbol

    Definition Classes
    Symbol
  422. def removeAnnotation(cls: Symbol): Symbol

    Definition Classes
    Annotatable
  423. def reset(completer: Type): Unit

    Reset symbol to initial state

    Reset symbol to initial state

    Definition Classes
    TypeSymbolSymbol
  424. def resetFlag(mask: Long): TypeSymbol.this.type

    Definition Classes
    SymbolSymbolFlagLogic
  425. def resetFlags(): Unit

    Definition Classes
    SymbolSymbolFlagLogic
  426. def resolveOverloaded(pre: Type, targs: Seq[Type], actuals: Seq[Type]): Symbol

    Definition Classes
    AbsSymbolImpl → AbsSymbol
  427. def resolveOverloadedFlag(flag: Long): String

    Default implementation calls the generic string function, which will print overloaded flags as <flag1/flag2/flag3>.

    Default implementation calls the generic string function, which will print overloaded flags as <flag1/flag2/flag3>. Subclasses of Symbol refine.

    Definition Classes
    TypeSymbolSymbolSymbolFlagLogicHasFlags
  428. def sealedDescendants: Set[Symbol]

    Recursively assemble all children of this symbol.

    Recursively assemble all children of this symbol.

    Definition Classes
    Symbol
  429. final def sealedSortName: String

    The String used to order otherwise identical sealed symbols.

    The String used to order otherwise identical sealed symbols. This uses data which is stable across runs and variable classpaths (the initial Name) before falling back on id, which varies depending on exactly when a symbol is loaded.

    Definition Classes
    Symbol
  430. val self: Any

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

    Implicit information
    This member is added by an implicit conversion from TypeSymbol to StringAdd performed by method any2stringadd in scala.Predef.
    Definition Classes
    StringAdd
  432. def selfType: Type

    Definition Classes
    AbsSymbolImpl → AbsSymbol
  433. def setAnnotations(annots: List[AnnotationInfo]): TypeSymbol.this.type

    Definition Classes
    SymbolAnnotatable
  434. def setAnnotations(annots: AnnotationInfo*): TypeSymbol.this.type

    Definition Classes
    AbsSymbolImpl → AbsSymbolInternal
  435. def setFlag(mask: Long): TypeSymbol.this.type

    Definition Classes
    SymbolSymbolFlagLogic
  436. def setInfo(info: Type): TypeSymbol.this.type

    Set initial info.

    Set initial info.

    Definition Classes
    Symbol
  437. def setInfoAndEnter(info: Type): TypeSymbol.this.type

    Set the info and enter this symbol into the owner's scope.

    Set the info and enter this symbol into the owner's scope.

    Definition Classes
    Symbol
  438. def setInfoOwnerAdjusted(info: Type): TypeSymbol.this.type

    Definition Classes
    Symbol
  439. def setInternalFlags(flag: Long): TypeSymbol.this.type

    Definition Classes
    AbsSymbolImpl → AbsSymbolInternal
  440. def setName(name: Name): TypeSymbol.this.type

    Definition Classes
    Symbol
  441. final def setNotFlag(flag: Int): Any

    If the given flag is set on this symbol, also set the corresponding notFLAG.

    If the given flag is set on this symbol, also set the corresponding notFLAG. For instance if flag is PRIVATE, the notPRIVATE flag will be set if PRIVATE is currently set.

    Definition Classes
    SymbolFlagLogic
  442. def setPos(pos: Position): TypeSymbol.this.type

    Definition Classes
    Symbol
  443. def setPrivateWithin(sym: Symbol): TypeSymbol.this.type

    Definition Classes
    Symbol
  444. def setTypeSignature(tpe: Type): TypeSymbol.this.type

    Definition Classes
    AbsSymbolImpl → AbsSymbolInternal
  445. final def setter(base: Symbol, hasExpandedName: Boolean): Symbol

    Definition Classes
    Symbol
  446. final def setter(base: Symbol): Symbol

    The setter of this value or getter definition, or NoSymbol if none exists

    The setter of this value or getter definition, or NoSymbol if none exists

    Definition Classes
    Symbol
  447. def shortSymbolClass: String

    Attributes
    protected
    Definition Classes
    SymbolFlagLogic
  448. def signatureString: String

    Definition Classes
    Symbol
  449. final def simpleName: Name

    The simple name of this Symbol

    The simple name of this Symbol

    Definition Classes
    Symbol
  450. final def skipConstructor: Symbol

    If this is a constructor, its owner: otherwise this.

    If this is a constructor, its owner: otherwise this.

    Definition Classes
    Symbol
  451. def skipPackageObject: Symbol

    If this is a package object or its implementing class, its owner: otherwise this.

    If this is a package object or its implementing class, its owner: otherwise this.

    Definition Classes
    Symbol
  452. def sourceFile: AbstractFileType

    Definition Classes
    Symbol
  453. def sourceFile_=(f: AbstractFileType): Unit

    Definition Classes
    Symbol
  454. def sourceModule: Symbol

    The module corresponding to this module class (note that this is not updated when a module is cloned), or NoSymbol if this is not a ModuleClass.

    The module corresponding to this module class (note that this is not updated when a module is cloned), or NoSymbol if this is not a ModuleClass.

    Definition Classes
    Symbol
  455. def sourceModule_=(sym: Symbol): Unit

    Definition Classes
    Symbol
  456. def substInfo(syms0: List[Symbol], syms1: List[Symbol]): TypeSymbol.this.type

    Substitute second list of symbols for first in current info.

    Substitute second list of symbols for first in current info.

    Definition Classes
    Symbol
  457. def suchThat(cond: (Symbol) ⇒ Boolean): Symbol

    Definition Classes
    Symbol → AbsSymbol
  458. def superClass: Symbol

    The superclass of this class.

    The superclass of this class.

    Definition Classes
    Symbol
  459. final def superSymbol(base: Symbol): Symbol

    The symbol accessed by a super in the definition of this symbol when seen from class base.

    The symbol accessed by a super in the definition of this symbol when seen from class base. This symbol is always concrete. pre: this.owner is in the base class sequence of base.

    Definition Classes
    Symbol
  460. def symbolCreationString: String

    Definition Classes
    SymbolFlagLogic
  461. final def synchronized[T0](arg0: ⇒ T0): T0

    Definition Classes
    AnyRef
  462. final def tag: Int

    A tag which (in the ideal case) uniquely identifies class symbols

    A tag which (in the ideal case) uniquely identifies class symbols

    Definition Classes
    Symbol
  463. def thisPrefix: Type

    Definition Classes
    AbsSymbolImpl → AbsSymbol
  464. def thisSym: Symbol

    The self symbol (a TermSymbol) of a class with explicit self type, or else the symbol itself (a TypeSymbol).

    The self symbol (a TermSymbol) of a class with explicit self type, or else the symbol itself (a TypeSymbol).

    WARNING: you're probably better off using typeOfThis, as it's more uniform across classes with and without self variables.

    Example by Paul: scala> trait Foo1 { } scala> trait Foo2 { self => } scala> intp("Foo1").thisSym res0: $r.intp.global.Symbol = trait Foo1

    scala> intp("Foo2").thisSym res1: $r.intp.global.Symbol = value self

    Martin says: The reason thisSym' is this' is so that thisType can be this.thisSym.tpe. It's a trick to shave some cycles off.

    Morale: DO: if (clazz.typeOfThis.typeConstructor ne clazz.typeConstructor) ... DON'T: if (clazz.thisSym ne clazz) ...

    Definition Classes
    Symbol
  465. def thisType: Type

    If symbol is a class, the type this.type in this class, otherwise NoPrefix.

    If symbol is a class, the type this.type in this class, otherwise NoPrefix. We always have: thisType <:< typeOfThis

    Definition Classes
    Symbol
  466. def throwsAnnotations(): List[Symbol]

    Symbols of any @throws annotations on this symbol.

    Symbols of any @throws annotations on this symbol.

    Definition Classes
    Annotatable
  467. def toInterface: Symbol

    If this symbol is an implementation class, its interface, otherwise the symbol itself The method follows two strategies to determine the interface.

    If this symbol is an implementation class, its interface, otherwise the symbol itself The method follows two strategies to determine the interface.

    • during or after erasure, it takes the last parent of the implementation class (which is always the interface, by convention)
    • before erasure, it looks up the interface name in the scope of the owner of the class. This only works for implementation classes owned by other classes or traits. !!! Why?
    Definition Classes
    Symbol
  468. def toString(): String

    String representation, including symbol's kind e.

    String representation, including symbol's kind e.g., "class Foo", "method Bar". If hasMeaninglessName is true, uses the owner's name to disambiguate identity.

    Definition Classes
    Symbol → AnyRef → Any
  469. def tpe: Type

    Let's say you have a type definition

    Let's say you have a type definition

    type T <: Number

    and tsym is the symbol corresponding to T. Then

    tsym.info = TypeBounds(Nothing, Number)
    tsym.tpe  = TypeRef(NoPrefix, T, List())
    Definition Classes
    TypeSymbolSymbol
  470. def tpeHK: Type

    Definition Classes
    TypeSymbolSymbol
  471. def typeConstructor: Type

    The type constructor of a symbol is: For a type symbol, the type corresponding to the symbol itself, excluding parameters.

    The type constructor of a symbol is: For a type symbol, the type corresponding to the symbol itself, excluding parameters. Not applicable for term symbols.

    Definition Classes
    TypeSymbolSymbol
  472. def typeOfThis: Type

    The type of this in a class, or else the type of the symbol itself.

    The type of this in a class, or else the type of the symbol itself.

    Definition Classes
    Symbol
  473. def typeOfThis_=(tp: Type): Unit

    Definition Classes
    Symbol
  474. def typeParams: List[Symbol]

    The type parameters of this symbol.

    The type parameters of this symbol. assumption: if a type starts out as monomorphic, it will not acquire type parameters later.

    Definition Classes
    Symbol
  475. def typeSignature: Type

    Definition Classes
    AbsSymbolImpl → AbsSymbolInternal
  476. def typeSignatureIn(site: Type): Type

    Definition Classes
    AbsSymbolImpl → AbsSymbol
  477. def unpackLocation: AnyRef

    If this symbol is an existential skolem the location (a Tree or null) where it was unpacked.

    If this symbol is an existential skolem the location (a Tree or null) where it was unpacked. Resulttype is AnyRef because trees are not visible here.

    Definition Classes
    Symbol
  478. def unsafeTypeParams: List[Symbol]

    The type parameters of this symbol, without ensuring type completion.

    The type parameters of this symbol, without ensuring type completion. assumption: if a type starts out as monomorphic, it will not acquire type parameters later.

    Definition Classes
    Symbol
  479. def updateInfo(info: Type): Symbol

    Set new info valid from start of this phase.

    Set new info valid from start of this phase.

    Definition Classes
    Symbol
  480. def validTo: Period

    Definition Classes
    Symbol
  481. def validTo_=(x: Period): Unit

    Definition Classes
    Symbol
  482. final def variance: Int

    The variance of this symbol as an integer

    The variance of this symbol as an integer

    Definition Classes
    Symbol
  483. def varianceString: String

    String representation of symbol's variance

    String representation of symbol's variance

    Definition Classes
    SymbolFlagLogic
  484. final def wait(): Unit

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

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

    Definition Classes
    AnyRef
    Annotations
    @throws()
  487. final def withAnnotation(annot: AnnotationInfo): Symbol

    Definition Classes
    Annotatable
  488. def withAnnotations(annots: List[AnnotationInfo]): TypeSymbol.this.type

    Definition Classes
    SymbolAnnotatable
  489. def withoutAnnotations: TypeSymbol.this.type

    Definition Classes
    SymbolAnnotatable
  490. def [B](y: B): (TypeSymbol, B)

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

Deprecated Value Members

  1. def defaultFlagString: String

    Definition Classes
    HasFlags
    Annotations
    @deprecated
    Deprecated

    (Since version 2.10.0) Use flagString

  2. def hasDefaultFlag: Boolean

    Definition Classes
    HasFlags
    Annotations
    @deprecated
    Deprecated

    (Since version 2.10.0) Use hasDefault

  3. def hasFlagsToString(mask: Long): String

    Definition Classes
    HasFlags
    Annotations
    @deprecated
    Deprecated

    (Since version 2.10.0) Use flagString(mask)

  4. def hasTraitFlag: Boolean

    Definition Classes
    HasFlags
    Annotations
    @deprecated
    Deprecated

    (Since version 2.10.0) Use isTrait

  5. def isAbstract: Boolean

    Definition Classes
    HasFlags
    Annotations
    @deprecated
    Deprecated

    (Since version 2.9.0)

  6. def isParameter: Boolean

    Definition Classes
    HasFlags
    Annotations
    @deprecated
    Deprecated

    (Since version 2.10.0) Use isValueParameter or isTypeParameter

  7. def newAbstractType(pos: Position, name: TypeName): Symbol

    Definition Classes
    Symbol
    Annotations
    @deprecated
    Deprecated

    (Since version 2.10.0) Use the other signature

  8. def newAliasType(pos: Position, name: TypeName): Symbol

    Definition Classes
    Symbol
    Annotations
    @deprecated
    Deprecated

    (Since version 2.10.0) Use the other signature

  9. def newClass(pos: Position, name: TypeName): Symbol

    Definition Classes
    Symbol
    Annotations
    @deprecated
    Deprecated

    (Since version 2.10.0) Use the other signature

  10. def newExistential(pos: Position, name: TypeName): Symbol

    Definition Classes
    Symbol
    Annotations
    @deprecated
    Deprecated

    (Since version 2.10.0) Use the other signature

  11. def newLabel(pos: Position, name: TermName): MethodSymbol

    Definition Classes
    Symbol
    Annotations
    @deprecated
    Deprecated

    (Since version 2.10.0) Use the other signature

  12. def newMethod(pos: Position, name: TermName): MethodSymbol

    Definition Classes
    Symbol
    Annotations
    @deprecated
    Deprecated

    (Since version 2.10.0) Use the other signature

  13. def newModuleClass(pos: Position, name: TypeName): Symbol

    Definition Classes
    Symbol
    Annotations
    @deprecated
    Deprecated

    (Since version 2.10.0) Use the other signature

  14. def newValue(pos: Position, name: TermName): TermSymbol

    Definition Classes
    Symbol
    Annotations
    @deprecated
    Deprecated

    (Since version 2.10.0) Use the other signature

  15. def toplevelClass: Symbol

    Kept for source compatibility with 2.

    Kept for source compatibility with 2.9. Scala IDE for Eclipse relies on this.

    Definition Classes
    Symbol
    Annotations
    @deprecated
    Deprecated

    (Since version 2.10.0) Use enclosingTopLevelClass

  16. def x: TypeSymbol

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

    (Since version 2.10.0) Use leftOfArrow instead

  17. def x: TypeSymbol

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

    (Since version 2.10.0) Use resultOfEnsuring instead

Inherited from TypeSymbolApi

Inherited from Symbol

Inherited from Annotatable[Symbol]

Inherited from SymbolCreator

Inherited from SymbolCreatorInterface

Inherited from SymbolFlagLogic

Inherited from HasFlags

Inherited from AbsSymbolImpl

Inherited from AbsSymbol

Inherited from AbsSymbolInternal

Inherited from AnyRef

Inherited from Any

Inherited by implicit conversion any2stringfmt from TypeSymbol to StringFormat

Inherited by implicit conversion any2stringadd from TypeSymbol to StringAdd

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

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