scala.reflect.internal.Symbols

Symbol

abstract class Symbol extends SymbolTable.SymbolContextApiImpl with HasFlags with SymbolTable.Annotatable[SymbolTable.Symbol] with SymbolTable.Attachable

The class for all symbols

Definition Classes
SymbolsSymbolsSymbols
Source
Symbols.scala
Linear Supertypes
Known Subclasses
Type Hierarchy Learn more about scaladoc diagrams
Ordering
  1. Alphabetic
  2. By inheritance
Inherited
  1. Symbol
  2. Attachable
  3. Annotatable
  4. HasFlags
  5. SymbolContextApiImpl
  6. SymbolContextApi
  7. AttachableApi
  8. SymbolApi
  9. HasFlagsApi
  10. SymbolBase
  11. AnyRef
  12. Any
Implicitly
  1. by any2stringadd
  2. by any2stringfmt
  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 Symbol(initOwner: SymbolTable.Symbol, initPos: SymbolTable.Position, initName: SymbolTable.Name)

    Attributes
    protected[scala.reflect.internal.Symbols]

Type Members

  1. type AccessBoundaryType = SymbolTable.Symbol

    Definition Classes
    SymbolHasFlags
  2. type AnnotationType = SymbolTable.AnnotationInfo

    Definition Classes
    SymbolHasFlags
  3. abstract type NameType >: Null <: SymbolTable.Name

    The type of the symbol name.

    The type of the symbol name. Can be either TermName or TypeName depending on whether this is a TermSymbol or a TypeSymbol.

    Type name namespaces do not intersect with term name namespaces. This fact is reflected in different types for names of TermSymbol and TypeSymbol.

    Definition Classes
    SymbolBase
  4. abstract type TypeOfClonedSymbol >: Null <: SymbolTable.Symbol { type NameType = Symbol.this.NameType }

Abstract Value Members

  1. abstract def asNameType(n: SymbolTable.Name): NameType

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

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

  3. abstract def doCookJavaRawInfo(): Unit

    Attributes
    protected
  4. abstract def existentialBound: SymbolTable.Type

    If we quantify existentially over this symbol, the bound of the type variable that stands for it pre: symbol is a term, a class, or an abstract type (no alias type allowed)

  5. abstract def name: NameType

    The name of the symbol as a member of the Name type.

    The name of the symbol as a member of the Name type.

    Definition Classes
    SymbolSymbolBase
  6. abstract def name_=(n: SymbolTable.Name): Unit

  7. abstract def rawname: NameType

Concrete Value Members

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

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

    Test two objects for inequality.

    Test two objects for inequality.

    returns

    true if !(this == that), false otherwise.

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

    Equivalent to x.hashCode except for boxed numeric types and null.

    Equivalent to x.hashCode except for boxed numeric types and null. For numerics, it returns a hash value which is consistent with value equality: if two value type instances compare as true, then ## will produce the same hash value for each of them. For null returns a hashcode where null.hashCode throws a NullPointerException.

    returns

    a hash value consistent with ==

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

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

    Implicit information
    This member is added by an implicit conversion from SymbolTable.Symbol to ArrowAssoc[SymbolTable.Symbol] 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

    Test two objects for equality.

    Test two objects for equality. The expression x == that is equivalent to if (x eq null) that eq null else x.equals(that).

    returns

    true if the receiver object is equivalent to the argument; false otherwise.

    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]
  9. def accessBoundary(base: SymbolTable.Symbol): SymbolTable.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.

  10. def accessString: String

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

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

  12. final def accessed: SymbolTable.Symbol

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

  13. def accessedOrSelf: SymbolTable.Symbol

    If this is an accessor, the accessed symbol.

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

  14. final def accurateKindString: String

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

  15. def addAnnotation(sym: SymbolTable.Symbol, args: SymbolTable.Tree*): Symbol.this.type

  16. def addAnnotation(annot: SymbolTable.AnnotationInfo): Symbol.this.type

  17. def addAttachment(attachment: Any): Symbol.this.type

    Definition Classes
    Attachable
  18. def addChild(sym: SymbolTable.Symbol): Unit

  19. def alias: SymbolTable.Symbol

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

  20. final def allOverriddenSymbols: List[SymbolTable.Symbol]

    Returns all symbols overriden by this symbol.

  21. def alternatives: List[SymbolTable.Symbol]

  22. def ancestors: List[SymbolTable.Symbol]

    All directly or indirectly inherited classes.

  23. final def andAlso(f: (SymbolTable.Symbol) ⇒ Unit): SymbolTable.Symbol

    Annotations
    @inline()
  24. def annotations: List[SymbolTable.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
  25. def annotationsString: String

  26. def asClassSymbol: SymbolTable.ClassSymbol

    This symbol cast to a ClassSymbol representing a class or trait.

    This symbol cast to a ClassSymbol representing a class or trait. Returns ClassCastException if isClass is false.

    Definition Classes
    SymbolBase
  27. def asFreeTermSymbol: SymbolTable.FreeTermSymbol

    This symbol cast to a free term symbol.

    This symbol cast to a free term symbol. Returns ClassCastException if isFreeTerm is false.

    Definition Classes
    SymbolBase
  28. def asFreeTypeSymbol: SymbolTable.FreeTypeSymbol

    This symbol cast to a free type symbol.

    This symbol cast to a free type symbol. Returns ClassCastException if isFreeType is false.

    Definition Classes
    SymbolBase
  29. final def asInstanceOf[T0]: T0

    Cast the receiver object to be of type T0.

    Cast the receiver object to be of type T0.

    Note that the success of a cast at runtime is modulo Scala's erasure semantics. Therefore the expression 1.asInstanceOf[String] will throw a ClassCastException at runtime, while the expression List(1).asInstanceOf[List[String]] will not. In the latter example, because the type argument is erased as part of compilation it is not possible to check whether the contents of the list are of the requested type.

    returns

    the receiver object.

    Definition Classes
    Any
    Exceptions thrown
    ClassCastException

    if the receiver object is not an instance of the erasure of type T0.

  30. def asMethodSymbol: SymbolTable.MethodSymbol

    This symbol cast to a MethodSymbol.

    This symbol cast to a MethodSymbol. Returns ClassCastException if isMethod is false.

    Definition Classes
    SymbolBase
  31. def asModuleSymbol: SymbolTable.ModuleSymbol

    This symbol cast to a ModuleSymbol defined by an object definition.

    This symbol cast to a ModuleSymbol defined by an object definition. Returns ClassCastException if isModule is false.

    Definition Classes
    SymbolBase
  32. def asTermSymbol: SymbolTable.TermSymbol

    This symbol cast to a TermSymbol.

    This symbol cast to a TermSymbol. Returns ClassCastException if isTerm is false.

    Definition Classes
    SymbolBase
  33. def asType: SymbolTable.Type

    Definition Classes
    SymbolContextApiImpl
  34. def asTypeConstructor: SymbolTable.Type

    Definition Classes
    SymbolContextApiImpl
  35. def asTypeIn(site: SymbolTable.Type): SymbolTable.Type

    Definition Classes
    SymbolContextApiImpl
  36. def asTypeSymbol: SymbolTable.TypeSymbol

    This symbol cast to a TypeSymbol.

    This symbol cast to a TypeSymbol. Returns ClassCastException if isType is false.

    Definition Classes
    SymbolBase
  37. def associatedFile: SymbolTable.AbstractFileType

    Overridden in ModuleSymbols to delegate to the module class.

  38. def associatedFile_=(f: SymbolTable.AbstractFileType): Unit

  39. def attachments: Attachments { type Pos = Symbols.this.Position }

    Definition Classes
    Attachable
  40. final def binaryFile: SymbolTable.AbstractFileType

  41. def calculateFlagString(basis: Long): String

    Attributes
    protected
    Definition Classes
    HasFlags
  42. final def caseFieldAccessors: List[SymbolTable.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.

  43. final def caseModule: SymbolTable.Symbol

    The case module corresponding to this case class

  44. def changeNameInOwners(name: SymbolTable.Name): Unit

    Attributes
    protected[this]
  45. def children: Set[SymbolTable.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.

  46. def classBound: SymbolTable.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 }

  47. def clone(): AnyRef

    Create a copy of the receiver object.

    Create a copy of the receiver object.

    The default implementation of the clone method is platform dependent.

    returns

    a copy of the receiver object.

    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws()
    Note

    not specified by SLS as a member of AnyRef

  48. final def cloneSymbol(newOwner: SymbolTable.Symbol, newFlags: Long, newName: SymbolTable.Name): TypeOfClonedSymbol

  49. final def cloneSymbol(newOwner: SymbolTable.Symbol, newFlags: Long): TypeOfClonedSymbol

  50. final def cloneSymbol(newOwner: SymbolTable.Symbol): TypeOfClonedSymbol

    A clone of this symbol, but with given owner.

  51. final def cloneSymbol: TypeOfClonedSymbol

    A clone of this symbol.

  52. def companionClass: SymbolTable.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.

  53. def companionModule: SymbolTable.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

  54. def companionSymbol: SymbolTable.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
    SymbolSymbolApi
  55. final def constrParamAccessors: List[SymbolTable.Symbol]

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

  57. def createAbstractTypeSymbol(name: SymbolTable.TypeName, pos: SymbolTable.Position, newFlags: Long): SymbolTable.AbstractTypeSymbol

    Symbol creation implementations.

    Symbol creation implementations.

    Attributes
    protected
  58. def createAliasTypeSymbol(name: SymbolTable.TypeName, pos: SymbolTable.Position, newFlags: Long): SymbolTable.AliasTypeSymbol

    Attributes
    protected
  59. def createClassSymbol(name: SymbolTable.TypeName, pos: SymbolTable.Position, newFlags: Long): SymbolTable.ClassSymbol

    Attributes
    protected
  60. def createImplClassSymbol(name: SymbolTable.TypeName, pos: SymbolTable.Position, newFlags: Long): SymbolTable.ClassSymbol

    Attributes
    protected
  61. def createMethodSymbol(name: SymbolTable.TermName, pos: SymbolTable.Position, newFlags: Long): SymbolTable.MethodSymbol

    Attributes
    protected
  62. def createModuleClassSymbol(name: SymbolTable.TypeName, pos: SymbolTable.Position, newFlags: Long): SymbolTable.ModuleClassSymbol

    Attributes
    protected
  63. def createModuleSymbol(name: SymbolTable.TermName, pos: SymbolTable.Position, newFlags: Long): SymbolTable.ModuleSymbol

    Attributes
    protected
  64. def createPackageClassSymbol(name: SymbolTable.TypeName, pos: SymbolTable.Position, newFlags: Long): SymbolTable.PackageClassSymbol

    Attributes
    protected
  65. def createPackageObjectClassSymbol(pos: SymbolTable.Position, newFlags: Long): SymbolTable.PackageObjectClassSymbol

    Attributes
    protected
  66. def createPackageSymbol(name: SymbolTable.TermName, pos: SymbolTable.Position, newFlags: Long): SymbolTable.ModuleSymbol

    Attributes
    protected
  67. def createRefinementClassSymbol(pos: SymbolTable.Position, newFlags: Long): SymbolTable.RefinementClassSymbol

    Attributes
    protected
  68. def createTermSymbol(name: SymbolTable.TermName, pos: SymbolTable.Position, newFlags: Long): SymbolTable.TermSymbol

    Attributes
    protected
  69. def createTypeSkolemSymbol(name: SymbolTable.TypeName, origin: AnyRef, pos: SymbolTable.Position, newFlags: Long): SymbolTable.TypeSkolem

    Attributes
    protected
  70. def createValueMemberSymbol(name: SymbolTable.TermName, pos: SymbolTable.Position, newFlags: Long): SymbolTable.TermSymbol

    Attributes
    protected
  71. def createValueParameterSymbol(name: SymbolTable.TermName, pos: SymbolTable.Position, newFlags: Long): SymbolTable.TermSymbol

    Attributes
    protected
  72. def deSkolemize: SymbolTable.Symbol

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

  73. def debugFlagString: String

  74. def debugLocationString: String

  75. def decodedName: String

    The decoded name of the symbol, e.

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

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

  77. def defStringSeenAs(info: SymbolTable.Type): String

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

  78. def deprecatedParamName: Option[SymbolTable.TermName]

  79. def deprecationMessage: Option[String]

  80. def deprecationVersion: Option[String]

  81. def derivedValueClassUnbox: SymbolTable.Symbol

    If this is a derived value class, return its unbox method or NoSymbol if it does not exist.

  82. def effectiveOwner: SymbolTable.Symbol

    The owner, skipping package objects.

  83. def elisionLevel: Option[Int]

  84. def enclClass: SymbolTable.Symbol

    The next enclosing class.

  85. def enclClassChain: List[SymbolTable.Symbol]

  86. def enclMethod: SymbolTable.Symbol

    The next enclosing method.

  87. def enclosingClass: SymbolTable.Symbol

    If this symbol is a class, this symbol; otherwise the next enclosing class, or NoSymbol if none exists.

    If this symbol is a class, this symbol; otherwise the next enclosing class, or NoSymbol if none exists.

    Definition Classes
    SymbolBase
  88. def enclosingMethod: SymbolTable.Symbol

    If this symbol is a method, this symbol; otherwise the next enclosing method, or NoSymbol if none exists.

    If this symbol is a method, this symbol; otherwise the next enclosing method, or NoSymbol if none exists.

    Definition Classes
    SymbolBase
  89. def enclosingPackage: SymbolTable.Symbol

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

  90. def enclosingPackageClass: SymbolTable.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. TODO: formulate as enclosingSuchThat, after making sure we can start with current symbol rather than onwner. TODO: Also harmonize with enclClass, enclMethod etc.

    Definition Classes
    SymbolSymbolApi
  91. def enclosingRootClass: SymbolTable.Symbol

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

  92. final def enclosingSuchThat(p: (SymbolTable.Symbol) ⇒ Boolean): SymbolTable.Symbol

    Annotations
    @inline()
  93. def enclosingTopLevelClass: SymbolTable.Symbol

    The top-level class containing this symbol.

    The top-level class containing this symbol.

    Definition Classes
    SymbolSymbolApi
  94. def encodedName: String

    The name of the symbol before decoding, e.

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

  95. def ensuring(cond: (SymbolTable.Symbol) ⇒ Boolean, msg: ⇒ Any): SymbolTable.Symbol

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

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

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

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

    Tests whether the argument (arg0) is a reference to the receiver object (this).

    Tests whether the argument (arg0) is a reference to the receiver object (this).

    The eq method implements an equivalence relation on non-null instances of AnyRef, and has three additional properties:

    • It is consistent: for any non-null instances x and y of type AnyRef, multiple invocations of x.eq(y) consistently returns true or consistently returns false.
    • For any non-null instance x of type AnyRef, x.eq(null) and null.eq(x) returns false.
    • null.eq(null) returns true.

    When overriding the equals or hashCode methods, it is important to ensure that their behavior is consistent with reference equality. Therefore, if two objects are references to each other (o1 eq o2), they should be equal to each other (o1 == o2) and they should hash to the same value (o1.hashCode == o2.hashCode).

    returns

    true if the argument is a reference to the receiver object; false otherwise.

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

    The equality method for reference types.

    The equality method for reference types. Default implementation delegates to eq.

    See also equals in scala.Any.

    returns

    true if the receiver object is equivalent to the argument; false otherwise.

    Definition Classes
    AnyRef → Any
  101. def existentialToString: String

    String representation of existentially bound variable

  102. def exists: Boolean

  103. def expandName(base: SymbolTable.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.

  104. final def extendedOverriddenSymbols: List[SymbolTable.Symbol]

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

  105. def filter(cond: (SymbolTable.Symbol) ⇒ Boolean): SymbolTable.Symbol

    .

    ...

    Definition Classes
    SymbolSymbolApi
  106. def filterAnnotations(p: (SymbolTable.AnnotationInfo) ⇒ Boolean): Symbol.this.type

    Definition Classes
    SymbolAnnotatable
  107. def finalize(): Unit

    Called by the garbage collector on the receiver object when there are no more references to the object.

    Called by the garbage collector on the receiver object when there are no more references to the object.

    The details of when and if the finalize method is invoked, as well as the interaction between finalize and non-local returns and exceptions, are all platform dependent.

    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws()
    Note

    not specified by SLS as a member of AnyRef

  108. def firstParam: SymbolTable.Symbol

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

  109. def flagBitsToString(bits: Long): String

    Definition Classes
    HasFlags
  110. def flagMask: Long

    The default mask determining which flags to display.

    The default mask determining which flags to display.

    Definition Classes
    SymbolHasFlags
  111. def flagString(mask: Long): String

    Definition Classes
    HasFlags
  112. 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
  113. 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
    SymbolHasFlagsHasFlagsApi
  114. def flagsExplanationString: String

  115. def flags_=(fs: Long): Unit

  116. final def flatOwnerInfo: SymbolTable.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
  117. def formatted(fmtstr: String): String

    Returns string formatted according to given format string.

    Returns string formatted according to given format string. Format strings are as for String.format (@see java.lang.String.format).

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

  119. def fullLocationString: String

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

  122. def fullNameAsName(separator: Char): SymbolTable.Name

  123. def fullNameString: String

  124. def getAnnotation(cls: SymbolTable.Symbol): Option[SymbolTable.AnnotationInfo]

    Definition Classes
    Annotatable
  125. def getAnnotations: List[SymbolTable.AnnotationInfo]

    A list of annotations attached to this Symbol.

    A list of annotations attached to this Symbol.

    Definition Classes
    SymbolContextApiImplSymbolApi
  126. final def getClass(): Class[_]

    A representation that corresponds to the dynamic class of the receiver object.

    A representation that corresponds to the dynamic class of the receiver object.

    The nature of the representation is platform dependent.

    returns

    a representation that corresponds to the dynamic class of the receiver object.

    Definition Classes
    AnyRef → Any
    Note

    not specified by SLS as a member of AnyRef

  127. final def getFlag(mask: Long): Long

    Annotations
    @inline()
  128. final def getter(base: SymbolTable.Symbol): SymbolTable.Symbol

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

  129. def getterName: SymbolTable.TermName

  130. def hasAbstractFlag: Boolean

    Definition Classes
    HasFlags
  131. 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
  132. def hasAccessorFlag: Boolean

    Definition Classes
    HasFlags
  133. 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
    SymbolHasFlagsHasFlagsApi
    Annotations
    @inline()
  134. def hasAnnotation(cls: SymbolTable.Symbol): Boolean

    Test for, get, or remove an annotation

    Test for, get, or remove an annotation

    Definition Classes
    Annotatable
  135. def hasBridgeAnnotation: Boolean

  136. def hasCompleteInfo: Boolean

  137. def hasDefault: Boolean

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

    Does symbol have ANY flag in mask set?

    Does symbol have ANY flag in mask set?

    Definition Classes
    SymbolHasFlagsHasFlagsApi
    Annotations
    @inline()
  139. final def hasGetter: Boolean

  140. def hasLocalFlag: Boolean

    Definition Classes
    HasFlags
  141. 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.

  142. def hasMigrationAnnotation: Boolean

  143. def hasModuleFlag: Boolean

    Definition Classes
    HasFlags
  144. 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
  145. def hasPackageFlag: Boolean

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

  147. def hasRawInfo: Boolean

  148. def hasStableFlag: Boolean

    Definition Classes
    HasFlags
  149. def hasStaticAnnotation: Boolean

  150. def hasStaticFlag: Boolean

    Definition Classes
    HasFlags
  151. def hasTransOwner(sym: SymbolTable.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.)

  152. final def hasTypeAt(pid: Int): Boolean

    Was symbol's type updated during given phase?

  153. def hashCode(): Int

    The hashCode method for reference types.

    The hashCode method for reference types. See hashCode in scala.Any.

    returns

    the hash code value for this object.

    Definition Classes
    AnyRef → Any
  154. val id: Int

    An id number which is unique for all symbols in this universe

    An id number which is unique for all symbols in this universe

    Definition Classes
    SymbolSymbolBase
  155. final def idString: String

    If settings.

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

  156. final def implClass: SymbolTable.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.

  157. def implicitNotFoundMsg: Option[String]

  158. def info: SymbolTable.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).

  159. final def infoString(tp: SymbolTable.Type): String

    String representation of symbol's definition following its name

  160. def info_=(info: SymbolTable.Type): Unit

  161. def infosString: String

  162. def initFlags(mask: Long): Symbol.this.type

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

  163. final def initialize: Symbol.this.type

    Initialize the symbol

  164. 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)
  165. def isAbstractOverride: Boolean

    Definition Classes
    HasFlags
  166. def isAbstractType: Boolean

    Does this symbol represent the definition of an abstract type? If yes, isType is also guaranteed to be true.

    Does this symbol represent the definition of an abstract type? If yes, isType is also guaranteed to be true.

    Definition Classes
    SymbolSymbolApi
  167. def isAccessor: Boolean

    Qualities of Terms, always false for TypeSymbols.

    Qualities of Terms, always false for TypeSymbols.

    Definition Classes
    SymbolSymbolApi
  168. def isAliasType: Boolean

    Does this symbol represent the definition of a type alias? If yes, isType is also guaranteed to be true.

    Does this symbol represent the definition of a type alias? If yes, isType is also guaranteed to be true.

    Definition Classes
    SymbolSymbolApi
  169. def isAnonOrRefinementClass: Boolean

  170. def isAnonymousClass: Boolean

  171. final def isAnonymousFunction: Boolean

  172. def isAnyOverride: Boolean

    Definition Classes
    HasFlags
  173. final def isAuxiliaryConstructor: Boolean

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

  174. def isBottomClass: Boolean

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

  175. def isBridge: Boolean

  176. def isCapturedVariable: Boolean

  177. def isCase: Boolean

    Definition Classes
    HasFlags
  178. def isCaseAccessor: Boolean

    Definition Classes
    HasFlags
  179. def isCaseAccessorMethod: Boolean

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

  180. final def isCaseApplyOrUnapply: Boolean

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

  181. def isCaseClass: Boolean

  182. def isClass: Boolean

    Does this symbol represent the definition of a class or trait? If yes, isType is also guaranteed to be true.

    Does this symbol represent the definition of a class or trait? If yes, isType is also guaranteed to be true.

    Definition Classes
    SymbolBase
  183. def isClassConstructor: Boolean

  184. def isClassLocalToConstructor: Boolean

  185. def isCoDefinedWith(that: SymbolTable.Symbol): Boolean

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

  186. def isConcreteClass: Boolean

  187. final def isConstant: Boolean

    Is this symbol a constant?

  188. def isConstructor: Boolean

  189. def isContravariant: Boolean

    Qualities of Types, always false for TermSymbols.

  190. def isCovariant: Boolean

  191. def isDeferred: Boolean

    Definition Classes
    HasFlags
  192. final def isDefinedInPackage: Boolean

  193. def isDeprecated: Boolean

  194. final def isDerivedValueClass: Boolean

    Does this symbol represent the definition of a custom value class? Namely, is AnyVal among its parent classes? TODO: Why not just have in reflect.

    Does this symbol represent the definition of a custom value class? Namely, is AnyVal among its parent classes? TODO: Why not just have in reflect.internal? [Eugene++] because it's useful for macros

    Definition Classes
    SymbolSymbolApi
  195. def isEarlyInitialized: Boolean

  196. def isEffectiveRoot: Boolean

    Is this symbol an effective root for fullname string?

  197. final def isEffectivelyFinal: Boolean

    Is this symbol effectively final? I.

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

  198. def isEmptyPackage: Boolean

  199. def isEmptyPackageClass: Boolean

  200. def isEmptyPrefix: Boolean

  201. final def isErroneous: Boolean

    Does this symbol or its underlying type represent a typechecking error?

    Does this symbol or its underlying type represent a typechecking error?

    Definition Classes
    SymbolSymbolApi
  202. final def isError: Boolean

  203. def isExistential: Boolean

    Does this symbol represent an existentially bound type? If yes, isType is also guaranteed to be true.

    Does this symbol represent an existentially bound type? If yes, isType is also guaranteed to be true.

    Definition Classes
    SymbolContextApiImplSymbolApi
  204. def isExistentialQuantified: Boolean

  205. def isExistentialSkolem: Boolean

  206. def isExistentiallyBound: Boolean

  207. def isFBounded: Boolean

  208. def isFinal: Boolean

    Definition Classes
    HasFlags
  209. def isFreeTerm: Boolean

    Does this symbol represent a free term captured by reification? If yes, isTerm is also guaranteed to be true.

    Does this symbol represent a free term captured by reification? If yes, isTerm is also guaranteed to be true.

    Definition Classes
    SymbolBase
  210. def isFreeType: Boolean

    Does this symbol represent a free type captured by reification? If yes, isType is also guaranteed to be true.

    Does this symbol represent a free type captured by reification? If yes, isType is also guaranteed to be true.

    Definition Classes
    SymbolBase
  211. def isGADTSkolem: Boolean

  212. def isGetter: Boolean

    Does this symbol represent a getter of a field? If yes, isTerm and isMethod are also guaranteed to be true.

    Does this symbol represent a getter of a field? If yes, isTerm and isMethod are also guaranteed to be true.

    Definition Classes
    SymbolSymbolApi
  213. def isHidden: Boolean

    Definition Classes
    HasFlags
  214. def isHigherOrderTypeParameter: Boolean

  215. def isImplClass: Boolean

  216. final def isImplOnly: Boolean

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

  217. def isImplicit: Boolean

    Definition Classes
    HasFlags
  218. def isInDefaultNamespace: Boolean

  219. final def isIncompleteIn(base: SymbolTable.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

    ...

  220. final def isInitialized: Boolean

  221. final def isInitializedToDefault: Boolean

  222. final def isInstanceOf[T0]: Boolean

    Test whether the dynamic type of the receiver object is T0.

    Test whether the dynamic type of the receiver object is T0.

    Note that the result of the test is modulo Scala's erasure semantics. Therefore the expression 1.isInstanceOf[String] will return false, while the expression List(1).isInstanceOf[List[String]] will return true. In the latter example, because the type argument is erased as part of compilation it is not possible to check whether the contents of the list are of the specified type.

    returns

    true if the receiver object is an instance of erasure of type T0; false otherwise.

    Definition Classes
    Any
  223. def isInterface: Boolean

    Definition Classes
    HasFlags
  224. final def isInterpreterWrapper: Boolean

    Does this symbol denote a wrapper created by the repl?

  225. def isJavaDefined: Boolean

    Definition Classes
    HasFlags
  226. def isJavaInterface: Boolean

  227. def isLabel: Boolean

    Definition Classes
    SymbolHasFlags
  228. def isLazy: Boolean

    Definition Classes
    HasFlags
  229. final def isLazyAccessor: Boolean

  230. final def isLess(that: SymbolTable.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.

  231. def isLessAccessibleThan(other: SymbolTable.Symbol): Boolean

  232. def isLifted: Boolean

    Definition Classes
    HasFlags
  233. def isLiftedMethod: Boolean

  234. final def isLocal: Boolean

    Is this symbol locally defined? I.

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

  235. 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
  236. def isLocalDummy: Boolean

  237. 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
    SymbolSymbolApi
  238. def isMemberOf(clazz: SymbolTable.Symbol): Boolean

    Is this symbol a member of class clazz?

  239. def isMethod: Boolean

    Does this symbol represent the definition of a method? If yes, isTerm is also guaranteed to be true.

    Does this symbol represent the definition of a method? If yes, isTerm is also guaranteed to be true.

    Definition Classes
    SymbolBase
  240. final def isMethodWithExtension: Boolean

  241. def isMixinConstructor: Boolean

  242. def isModule: Boolean

    Does this symbol represent the definition of a module (i.

    Does this symbol represent the definition of a module (i.e. it results from an object definition?). If yes, isTerm is also guaranteed to be true.

    Definition Classes
    SymbolBase
  243. def isModuleClass: Boolean

    Does this symbol represent the definition of a class implicitly associated with an object definition (module class in scala compiler parlance).

    Does this symbol represent the definition of a class implicitly associated with an object definition (module class in scala compiler parlance). If yes, isType is also guaranteed to be true.

    Definition Classes
    SymbolBase
  244. def isModuleOrModuleClass: Boolean

  245. final def isModuleVar: Boolean

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

  247. def isMutable: Boolean

    Definition Classes
    HasFlags
  248. def isNestedClass: Boolean

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

  249. final def isNestedIn(that: SymbolTable.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

  250. def isNonBottomSubClass(that: SymbolTable.Symbol): Boolean

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

  251. def isNonClassType: Boolean

    A Type, but not a Class.

  252. final def isNumericSubClass(that: SymbolTable.Symbol): Boolean

  253. def isNumericValueClass: Boolean

    Does this symbol represent the definition of a numeric value class? Namely, is it one of scala.Double, scala.Float, scala.Long, scala.Int, scala.Char, scala.Short, scala.Byte, scala.Unit or scala.Boolean?

    Does this symbol represent the definition of a numeric value class? Namely, is it one of scala.Double, scala.Float, scala.Long, scala.Int, scala.Char, scala.Short, scala.Byte, scala.Unit or scala.Boolean?

    Definition Classes
    SymbolSymbolApi
  254. 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.

  255. def isOnlyRefinementMember: Boolean

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

  256. final def isOuterAccessor: Boolean

    Is this symbol an accessor method for outer?

  257. final def isOuterField: Boolean

    Is this symbol an accessor method for outer?

  258. def isOverloaded: Boolean

    Is this symbol an overloaded method?

    Is this symbol an overloaded method?

    Definition Classes
    SymbolSymbolApi
  259. final def isOverridableMember: Boolean

  260. def isOverride: Boolean

    Definition Classes
    HasFlags
  261. def isOverridingSymbol: Boolean

    Equivalent to allOverriddenSymbols.

    Equivalent to allOverriddenSymbols.nonEmpty, but more efficient.

  262. def isPackage: Boolean

    Definition Classes
    HasFlags
  263. def isPackageClass: Boolean

    Package/package object tests

    Package/package object tests

    Definition Classes
    SymbolSymbolApi
  264. def isPackageObject: Boolean

  265. def isPackageObjectClass: Boolean

  266. def isPackageObjectOrClass: Boolean

  267. def isParamAccessor: Boolean

    Definition Classes
    HasFlags
  268. final def isPossibleInRefinement: Boolean

  269. final def isPrimaryConstructor: Boolean

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

  270. def isPrimitiveValueClass: Boolean

    Does this symbol represent the definition of a primitive class? Namely, is it one of scala.Double, scala.Float, scala.Long, scala.Int, scala.Char, scala.Short, scala.Byte, scala.Unit or scala.Boolean?

    Does this symbol represent the definition of a primitive class? Namely, is it one of scala.Double, scala.Float, scala.Long, scala.Int, scala.Char, scala.Short, scala.Byte, scala.Unit or scala.Boolean?

    Definition Classes
    SymbolSymbolApi
  271. def isPrivate: Boolean

    Definition Classes
    HasFlags
  272. def isPrivateLocal: Boolean

    Definition Classes
    HasFlags
  273. def isProtected: Boolean

    Definition Classes
    HasFlags
  274. def isProtectedLocal: Boolean

    Definition Classes
    HasFlags
  275. def isPublic: Boolean

    Definition Classes
    HasFlags
  276. def isRefinementClass: Boolean

  277. def isRoot: Boolean

    Overridden in custom objects in Definitions

  278. def isRootPackage: Boolean

  279. def isRootSymbol: Boolean

  280. def isSealed: Boolean

    Definition Classes
    HasFlags
  281. def isSerializable: Boolean

  282. def isSetter: Boolean

    Does this symbol represent a setter of a field? If yes, isTerm and isMethod are also guaranteed to be true.

    Does this symbol represent a setter of a field? If yes, isTerm and isMethod are also guaranteed to be true.

    Definition Classes
    SymbolSymbolApi
  283. def isSetterParameter: Boolean

  284. def isSingletonExistential: Boolean

  285. def isSkolem: Boolean

  286. def isSourceMethod: Boolean

  287. def isSpecialized: Boolean

  288. def isStable: Boolean

    Does this symbol denote a stable value?

    Does this symbol denote a stable value?

    Definition Classes
    SymbolSymbolApi
  289. def isStableClass: Boolean

  290. 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
    SymbolSymbolApi
  291. final def isStaticConstructor: Boolean

    Is this symbol a static constructor?

  292. 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?)

  293. final def isStaticModule: Boolean

  294. final def isStaticOwner: Boolean

    Does this symbol denote a class that defines static symbols?

  295. def isStrictFP: Boolean

  296. final def isStructuralRefinement: Boolean

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

  297. final def isStructuralRefinementMember: Boolean

  298. def isSubClass(that: SymbolTable.Symbol): Boolean

    Overridden in NullClass and NothingClass for custom behavior.

  299. def isSuperAccessor: Boolean

    Definition Classes
    HasFlags
  300. def isSynthetic: Boolean

    Definition Classes
    HasFlags
  301. def isTerm: Boolean

    Does this symbol represent the definition of a term? Note that every symbol is either a term or a term.

    Does this symbol represent the definition of a term? Note that every symbol is either a term or a term. So for every symbol sym, either sym.isTerm is true or sym.isTerm is true.

    Definition Classes
    SymbolBase
  302. def isTermMacro: Boolean

  303. final def isThisSym: Boolean

  304. def isTopLevelModule: Boolean

  305. def isTrait: Boolean

    Definition Classes
    SymbolHasFlags
  306. def isType: Boolean

    Does this symbol represent the definition of a type? Note that every symbol is either a term or a type.

    Does this symbol represent the definition of a type? Note that every symbol is either a term or a type. So for every symbol sym, either sym.isTerm is true or sym.isType is true.

    Definition Classes
    SymbolBase
  307. def isTypeMacro: Boolean

  308. def isTypeParameter: Boolean

  309. def isTypeParameterOrSkolem: Boolean

  310. def isTypeSkolem: Boolean

  311. final def isUpdatedAt(pid: Int): Boolean

    Was symbol's type updated during given phase?

  312. def isValue: Boolean

    Does this symbol represent a value, i.

    Does this symbol represent a value, i.e. not a module and not a method? If yes, isTerm is also guaranteed to be true. [Eugene++] I need a review of the implementation

    Definition Classes
    SymbolSymbolApi
  313. def isValueParameter: Boolean

  314. def isVarargsMethod: Boolean

  315. def isVariable: Boolean

    Does this symbol represent a mutable value? If yes, isTerm and isValue are also guaranteed to be true.

    Does this symbol represent a mutable value? If yes, isTerm and isValue are also guaranteed to be true.

    Definition Classes
    SymbolSymbolApi
  316. final def isWeakSubClass(that: SymbolTable.Symbol): Boolean

  317. def javaBinaryName: SymbolTable.Name

  318. def javaClassName: String

  319. def javaSimpleName: SymbolTable.Name

    These should be moved somewhere like JavaPlatform.

  320. final def keyString: String

    String representation of symbol's definition key word

  321. def kind: String

    The string discriminator of this symbol; useful for debugging

    The string discriminator of this symbol; useful for debugging

    Definition Classes
    SymbolContextApiImplSymbolApi
  322. final def kindString: String

  323. def lazyAccessor: SymbolTable.Symbol

    For a lazy value, its lazy accessor.

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

  324. def lazyAccessorOrSelf: SymbolTable.Symbol

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

  325. def linkedClassOfClass: SymbolTable.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$

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

  327. def logicallyEnclosingMember: SymbolTable.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.

  328. final def makeNotPrivate(base: SymbolTable.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

  329. def makePublic: SymbolTable.Symbol

    Remove any access boundary and clear flags PROTECTED | PRIVATE.

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

  331. final def map(f: (SymbolTable.Symbol) ⇒ SymbolTable.Symbol): SymbolTable.Symbol

    If this is a NoSymbol, returns NoSymbol, otherwise returns the result of applying f to this symbol.

    If this is a NoSymbol, returns NoSymbol, otherwise returns the result of applying f to this symbol.

    Definition Classes
    SymbolSymbolApi
    Annotations
    @inline()
  332. final def matchingSymbol(site: SymbolTable.Type, admit: Long = 0L): SymbolTable.Symbol

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

  333. final def matchingSymbol(ofclazz: SymbolTable.Symbol, site: SymbolTable.Type): SymbolTable.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

  334. def migrationMessage: Option[String]

  335. def migrationVersion: Option[String]

  336. def mixinClasses: List[SymbolTable.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.

  337. def modifyInfo(f: (SymbolTable.Type) ⇒ SymbolTable.Type): Symbol.this.type

    Modifies this symbol's info in place.

  338. def moduleClass: SymbolTable.Symbol

    The module class corresponding to this module.

  339. def moduleSuffix: String

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

  341. final def ne(arg0: AnyRef): Boolean

    Equivalent to !(this eq that).

    Equivalent to !(this eq that).

    returns

    true if the argument is not a reference to the receiver object; false otherwise.

    Definition Classes
    AnyRef
  342. final def needsFlatClasses: Boolean

  343. final def needsImplClass: Boolean

    Is this symbol a trait which needs an implementation class?

  344. def needsModuleSuffix: Boolean

    Whether this symbol needs nme.

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

  345. final def newAbstractType(name: SymbolTable.TypeName, pos: SymbolTable.Position = NoPosition, newFlags: Long = 0L): SymbolTable.AbstractTypeSymbol

    Symbol of an abstract type type T >: .

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

  346. final def newAliasType(name: SymbolTable.TypeName, pos: SymbolTable.Position = NoPosition, newFlags: Long = 0L): SymbolTable.AliasTypeSymbol

    Symbol of a type definition type T = .

    Symbol of a type definition type T = ...

  347. final def newAnonymousFunctionClass(pos: SymbolTable.Position = NoPosition, newFlags: Long = 0L): SymbolTable.ClassSymbol

  348. final def newAnonymousFunctionValue(pos: SymbolTable.Position, newFlags: Long = 0L): SymbolTable.TermSymbol

  349. final def newClass(name: SymbolTable.TypeName, pos: SymbolTable.Position = NoPosition, newFlags: Long = 0L): SymbolTable.ClassSymbol

  350. def newClassConstructor(pos: SymbolTable.Position): SymbolTable.MethodSymbol

    Instance constructor with info set.

  351. final def newClassSymbol(name: SymbolTable.TypeName, pos: SymbolTable.Position = NoPosition, newFlags: Long = 0L): SymbolTable.ClassSymbol

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

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

  353. final def newConstructor(pos: SymbolTable.Position, newFlags: Long = 0L): SymbolTable.MethodSymbol

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

  354. final def newErrorClass(name: SymbolTable.TypeName): SymbolTable.ClassSymbol

  355. final def newErrorSymbol(name: SymbolTable.Name): SymbolTable.Symbol

  356. final def newErrorValue(name: SymbolTable.TermName): SymbolTable.TermSymbol

  357. final def newExistential(name: SymbolTable.TypeName, pos: SymbolTable.Position = NoPosition, newFlags: Long = 0L): SymbolTable.TypeSymbol

    Symbol of an existential type T forSome { .

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

  358. def newExistentialSkolem(basis: SymbolTable.Symbol, origin: AnyRef): SymbolTable.TypeSkolem

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

  359. def newGADTSkolem(name: SymbolTable.TypeName, origin: SymbolTable.Symbol, info: SymbolTable.Type): SymbolTable.TypeSkolem

  360. final def newGetter: SymbolTable.MethodSymbol

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

  361. def newImplClass(name: SymbolTable.TypeName, pos: SymbolTable.Position = NoPosition, newFlags: Long = 0L): SymbolTable.ClassSymbol

  362. final def newImport(pos: SymbolTable.Position): SymbolTable.TermSymbol

  363. final def newLabel(name: SymbolTable.TermName, pos: SymbolTable.Position = NoPosition): SymbolTable.MethodSymbol

  364. def newLinkedModule(clazz: SymbolTable.Symbol, newFlags: Long = 0L): SymbolTable.ModuleSymbol

  365. final def newLocalDummy(pos: SymbolTable.Position): SymbolTable.TermSymbol

    Create local dummy for template (owner of local blocks)

  366. final def newMethod(name: SymbolTable.TermName, pos: SymbolTable.Position = NoPosition, newFlags: Long = 0L): SymbolTable.MethodSymbol

  367. final def newMethodSymbol(name: SymbolTable.TermName, pos: SymbolTable.Position = NoPosition, newFlags: Long = 0L): SymbolTable.MethodSymbol

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

  369. final def newModuleAndClassSymbol(name: SymbolTable.Name, pos: SymbolTable.Position, flags: SymbolTable.FlagSet): (SymbolTable.ModuleSymbol, SymbolTable.ClassSymbol)

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

  371. final def newModuleClassSymbol(name: SymbolTable.TypeName, pos: SymbolTable.Position = NoPosition, newFlags: Long = 0L): SymbolTable.ModuleClassSymbol

  372. final def newModuleSymbol(name: SymbolTable.TermName, pos: SymbolTable.Position = NoPosition, newFlags: Long = 0L): SymbolTable.ModuleSymbol

  373. def newNestedSymbol(name: SymbolTable.Name, pos: SymbolTable.Position, newFlags: Long, isClass: Boolean): SymbolTable.Symbol

    Definition Classes
    SymbolContextApiImpl
  374. final def newNonClassSymbol(name: SymbolTable.TypeName, pos: SymbolTable.Position = NoPosition, newFlags: Long = 0L): SymbolTable.TypeSymbol

  375. final def newOverloaded(pre: SymbolTable.Type, alternatives: List[SymbolTable.Symbol]): SymbolTable.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)

  376. final def newPackage(name: SymbolTable.TermName, pos: SymbolTable.Position = NoPosition, newFlags: Long = 0L): SymbolTable.ModuleSymbol

  377. final def newPackageSymbol(name: SymbolTable.TermName, pos: SymbolTable.Position = NoPosition, newFlags: Long = 0L): SymbolTable.ModuleSymbol

  378. final def newRefinementClass(pos: SymbolTable.Position): SymbolTable.RefinementClassSymbol

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

  379. def newStaticConstructor(pos: SymbolTable.Position): SymbolTable.MethodSymbol

    Static constructor with info set.

  380. def newSyntheticTypeParam(name: String, newFlags: Long): SymbolTable.TypeSymbol

  381. def newSyntheticTypeParam(): SymbolTable.TypeSymbol

  382. def newSyntheticTypeParams(num: Int): List[SymbolTable.TypeSymbol]

  383. final def newSyntheticValueParam(argtype: SymbolTable.Type): SymbolTable.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.

  384. final def newSyntheticValueParams(argtypes: List[SymbolTable.Type]): List[SymbolTable.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.

  385. final def newSyntheticValueParamss(argtypess: List[List[SymbolTable.Type]]): List[List[SymbolTable.TermSymbol]]

    Synthetic value parameters when parameter symbols are not available

  386. final def newTermSymbol(name: SymbolTable.TermName, pos: SymbolTable.Position = NoPosition, newFlags: Long = 0L): SymbolTable.TermSymbol

    Definition Classes
    SymbolSymbolBase
  387. final def newThisSym(name: SymbolTable.TermName = nme.this_, pos: SymbolTable.Position = NoPosition): SymbolTable.TermSymbol

  388. final def newTypeParameter(name: SymbolTable.TypeName, pos: SymbolTable.Position = NoPosition, newFlags: Long = 0L): SymbolTable.TypeSymbol

    Symbol of a type parameter

  389. final def newTypeSkolem: SymbolTable.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.

  390. final def newTypeSkolemSymbol(name: SymbolTable.TypeName, origin: AnyRef, pos: SymbolTable.Position = NoPosition, newFlags: Long = 0L): SymbolTable.TypeSkolem

  391. def newTypeSymbol(name: SymbolTable.TypeName, pos: SymbolTable.Position = NoPosition, newFlags: Long = 0L): SymbolTable.TypeSymbol

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

  393. final def newValueParameter(name: SymbolTable.TermName, pos: SymbolTable.Position = NoPosition, newFlags: Long = 0L): SymbolTable.TermSymbol

  394. final def newVariable(name: SymbolTable.TermName, pos: SymbolTable.Position = NoPosition, newFlags: Long = 0L): SymbolTable.TermSymbol

  395. def nextOverriddenSymbol: SymbolTable.Symbol

    Equivalent to allOverriddenSymbols.

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

  396. final def notify(): Unit

    Wakes up a single thread that is waiting on the receiver object's monitor.

    Wakes up a single thread that is waiting on the receiver object's monitor.

    Definition Classes
    AnyRef
    Note

    not specified by SLS as a member of AnyRef

  397. final def notifyAll(): Unit

    Wakes up all threads that are waiting on the receiver object's monitor.

    Wakes up all threads that are waiting on the receiver object's monitor.

    Definition Classes
    AnyRef
    Note

    not specified by SLS as a member of AnyRef

  398. final def orElse(alt: ⇒ SymbolTable.Symbol): SymbolTable.Symbol

    .

    ...

    Definition Classes
    SymbolSymbolApi
    Annotations
    @inline()
  399. def originalEnclosingMethod: SymbolTable.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.

    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.

  400. def originalInfo: SymbolTable.Type

  401. def originalName: SymbolTable.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.

    See also

    expandName

  402. def originalOwnerChain: List[SymbolTable.Symbol]

  403. final def outerClass: SymbolTable.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.

  404. def outerSource: SymbolTable.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

  405. final def overriddenSymbol(ofclazz: SymbolTable.Symbol): SymbolTable.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.

  406. final def overridingSymbol(ofclazz: SymbolTable.Symbol): SymbolTable.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

  407. def owner: SymbolTable.Symbol

    The owner of this symbol.

    The owner of this symbol. This is the symbol that directly contains the current symbol's definition. The NoSymbol symbol does not have an owner, and calling this method on one causes an internal error. The owner of the Scala root class scala.reflect.api.mirror.RootClass and the Scala root object scala.reflect.api.mirror.RootPackage is NoSymbol. Every other symbol has a chain of owners that ends in scala.reflect.api.mirror.RootClass.

    Definition Classes
    SymbolSymbolBase
  408. def ownerChain: List[SymbolTable.Symbol]

  409. def owner_=(owner: SymbolTable.Symbol): Unit

  410. def ownersIterator: Iterator[SymbolTable.Symbol]

  411. def ownsString: String

    String representation of location.

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

  413. def paramss: List[List[SymbolTable.Symbol]]

    The value parameter sections of this symbol.

  414. def parentSymbols: List[SymbolTable.Symbol]

  415. def pos: SymbolTable.Position

    Definition Classes
    Attachable
  416. def pos_=(pos: SymbolTable.Position): Unit

    Definition Classes
    Attachable
  417. def primaryConstructor: SymbolTable.Symbol

    The primary constructor of a class.

  418. def privateWithin: SymbolTable.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
    SymbolHasFlagsSymbolApi
  419. def privateWithin_=(sym: SymbolTable.Symbol): Unit

  420. def rawFlagString: String

  421. def rawFlagString(mask: Long): String

  422. def rawInfo: SymbolTable.Type

    Return info without checking for initialization or completing

  423. var rawatt: Attachments { type Pos = Symbols.this.Position }

    Attributes
    protected
    Definition Classes
    Attachable
  424. def rawflags: Long

  425. def rawflags_=(x: Long): Unit

  426. def rawowner: SymbolTable.Symbol

  427. def removeAnnotation(cls: SymbolTable.Symbol): SymbolTable.Symbol

    Definition Classes
    Annotatable
  428. def removeAttachment[T](implicit arg0: ClassTag[T]): Symbol.this.type

    Definition Classes
    Attachable
  429. def reset(completer: SymbolTable.Type): Symbol.this.type

    Reset symbol to initial state

  430. def resetFlag(mask: Long): Symbol.this.type

  431. def resetFlags(): Unit

  432. def resolveOverloaded(pre: SymbolTable.Type, targs: Seq[SymbolTable.Type], posVargTypes: Seq[SymbolTable.Type], nameVargTypes: Seq[(SymbolTable.TermName, SymbolTable.Type)], expected: SymbolTable.Type): SymbolTable.Symbol

    Definition Classes
    SymbolContextApiImpl
  433. 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
    SymbolHasFlags
  434. def sealedDescendants: Set[SymbolTable.Symbol]

    Recursively assemble all children of this symbol.

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

  436. def selfType: SymbolTable.Type

    Definition Classes
    SymbolContextApiImpl
  437. def setAnnotations(annots: List[SymbolTable.AnnotationInfo]): Symbol.this.type

    Definition Classes
    SymbolAnnotatable
  438. def setAnnotations(annots: SymbolTable.AnnotationInfo*): Symbol.this.type

    Definition Classes
    SymbolContextApiImplSymbolContextApi
  439. def setFlag(mask: Long): Symbol.this.type

  440. def setFlags(flags: SymbolTable.FlagSet): Symbol.this.type

    Definition Classes
    SymbolContextApiImplSymbolContextApi
  441. def setInfo(info: SymbolTable.Type): Symbol.this.type

    Set initial info.

  442. def setInfoAndEnter(info: SymbolTable.Type): Symbol.this.type

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

  443. def setInfoOwnerAdjusted(info: SymbolTable.Type): Symbol.this.type

  444. def setInternalFlags(flag: Long): Symbol.this.type

    Definition Classes
    SymbolContextApiImpl
  445. def setName(name: SymbolTable.Name): Symbol.this.type

    Definition Classes
    SymbolSymbolContextApi
  446. def setPos(newpos: SymbolTable.Position): Symbol.this.type

    Definition Classes
    Attachable
  447. def setPrivateWithin(sym: SymbolTable.Symbol): Symbol.this.type

    Definition Classes
    SymbolSymbolContextApi
  448. def setTypeSignature(tpe: SymbolTable.Type): Symbol.this.type

    Definition Classes
    SymbolContextApiImplSymbolContextApi
  449. final def setter(base: SymbolTable.Symbol, hasExpandedName: Boolean): SymbolTable.Symbol

  450. final def setter(base: SymbolTable.Symbol): SymbolTable.Symbol

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

  451. def shortSymbolClass: String

  452. def signatureString: String

  453. final def simpleName: SymbolTable.Name

    The simple name of this Symbol

  454. final def skipConstructor: SymbolTable.Symbol

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

  455. def skipPackageObject: SymbolTable.Symbol

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

  456. final def sourceFile: SymbolTable.AbstractFileType

  457. def sourceModule: SymbolTable.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.

  458. def sourceModule_=(sym: SymbolTable.Symbol): Unit

  459. def substInfo(syms0: List[SymbolTable.Symbol], syms1: List[SymbolTable.Symbol]): Symbol.this.type

    Substitute second list of symbols for first in current info.

  460. def suchThat(cond: (SymbolTable.Symbol) ⇒ Boolean): SymbolTable.Symbol

    .

    ...

    Definition Classes
    SymbolSymbolApi
  461. def superClass: SymbolTable.Symbol

    The superclass of this class.

  462. final def superSymbol(base: SymbolTable.Symbol): SymbolTable.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.

  463. def symbolCreationString: String

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

    Definition Classes
    AnyRef
  465. final def tag: Int

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

  466. def thisPrefix: SymbolTable.Type

    Definition Classes
    SymbolContextApiImpl
  467. def thisSym: SymbolTable.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) ...

  468. def thisType: SymbolTable.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

  469. def throwsAnnotations(): List[SymbolTable.Symbol]

    Symbols of any @throws annotations on this symbol.

    Symbols of any @throws annotations on this symbol.

    Definition Classes
    Annotatable
  470. def toInterface: SymbolTable.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?
  471. 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.

    returns

    a String representation of the object.

    Definition Classes
    Symbol → AnyRef → Any
  472. def tpe: SymbolTable.Type

    Get type.

    Get type. The type of a symbol is: for a type symbol, the type corresponding to the symbol itself,

  473. def tpeHK: SymbolTable.Type

  474. def typeConstructor: SymbolTable.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.

  475. def typeOfThis: SymbolTable.Type

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

  476. def typeOfThis_=(tp: SymbolTable.Type): Unit

  477. def typeParams: List[SymbolTable.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.

  478. def typeSignature: SymbolTable.Type

    The type signature of this symbol.

    The type signature of this symbol. Note if the symbol is a member of a class, one almost always is interested in typeSignatureIn with a site type instead.

    Definition Classes
    SymbolContextApiImplSymbolApi
  479. def typeSignatureIn(site: SymbolTable.Type): SymbolTable.Type

    The type signature of this symbol seen as a member of given type site.

    The type signature of this symbol seen as a member of given type site.

    Definition Classes
    SymbolContextApiImplSymbolApi
  480. 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.

  481. def unsafeTypeParams: List[SymbolTable.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.

  482. def updateInfo(info: SymbolTable.Type): SymbolTable.Symbol

    Set new info valid from start of this phase.

  483. def validTo: Period

  484. def validTo_=(x: Period): Unit

  485. final def variance: Int

    The variance of this symbol as an integer

  486. def varianceString: String

    String representation of symbol's variance

  487. final def wait(): Unit

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

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

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

    Definition Classes
    Annotatable
  491. def withAnnotations(annots: List[SymbolTable.AnnotationInfo]): Symbol.this.type

    Definition Classes
    SymbolAnnotatable
  492. def withoutAnnotations: Symbol.this.type

    Definition Classes
    SymbolAnnotatable
  493. def [B](y: B): (SymbolTable.Symbol, B)

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

Shadowed Implict Value Members

  1. val self: Any

    Implicit information
    This member is added by an implicit conversion from SymbolTable.Symbol to StringAdd performed by method any2stringadd in scala.Predef.
    Shadowing
    This implicitly inherited member is ambiguous. One or more implicitly inherited members have similar signatures, so calling this member may produce an ambiguous implicit conversion compiler error.
    To access this member you can use a type ascription:
    (symbol: StringAdd).self
    Definition Classes
    StringAdd
  2. val self: Any

    Implicit information
    This member is added by an implicit conversion from SymbolTable.Symbol to StringFormat performed by method any2stringfmt in scala.Predef.
    Shadowing
    This implicitly inherited member is ambiguous. One or more implicitly inherited members have similar signatures, so calling this member may produce an ambiguous implicit conversion compiler error.
    To access this member you can use a type ascription:
    (symbol: StringFormat).self
    Definition Classes
    StringFormat

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 isParameter: Boolean

    Definition Classes
    HasFlags
    Annotations
    @deprecated
    Deprecated

    (Since version 2.10.0) Use isValueParameter or isTypeParameter

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

    Annotations
    @deprecated
    Deprecated

    (Since version 2.10.0) Use the other signature

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

    Annotations
    @deprecated
    Deprecated

    (Since version 2.10.0) Use the other signature

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

    Annotations
    @deprecated
    Deprecated

    (Since version 2.10.0) Use the other signature

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

    Annotations
    @deprecated
    Deprecated

    (Since version 2.10.0) Use the other signature

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

    Annotations
    @deprecated
    Deprecated

    (Since version 2.10.0) Use the other signature

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

    Annotations
    @deprecated
    Deprecated

    (Since version 2.10.0) Use the other signature

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

    Annotations
    @deprecated
    Deprecated

    (Since version 2.10.0) Use the other signature

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

    Annotations
    @deprecated
    Deprecated

    (Since version 2.10.0) Use the other signature

  14. def sourceFile_=(f: SymbolTable.AbstractFileType): Unit

    Annotations
    @deprecated
    Deprecated

    (Since version 2.10.0) Use associatedFile_= instead

  15. def toplevelClass: SymbolTable.Symbol

    Kept for source compatibility with 2.

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

    Annotations
    @deprecated
    Deprecated

    (Since version 2.10.0) Use enclosingTopLevelClass

  16. def x: SymbolTable.Symbol

    Implicit information
    This member is added by an implicit conversion from SymbolTable.Symbol to ArrowAssoc[SymbolTable.Symbol] performed by method any2ArrowAssoc in scala.Predef.
    Shadowing
    This implicitly inherited member is ambiguous. One or more implicitly inherited members have similar signatures, so calling this member may produce an ambiguous implicit conversion compiler error.
    To access this member you can use a type ascription:
    (symbol: ArrowAssoc[SymbolTable.Symbol]).x
    Definition Classes
    ArrowAssoc
    Annotations
    @deprecated
    Deprecated

    (Since version 2.10.0) Use leftOfArrow instead

  17. def x: SymbolTable.Symbol

    Implicit information
    This member is added by an implicit conversion from SymbolTable.Symbol to Ensuring[SymbolTable.Symbol] performed by method any2Ensuring in scala.Predef.
    Shadowing
    This implicitly inherited member is ambiguous. One or more implicitly inherited members have similar signatures, so calling this member may produce an ambiguous implicit conversion compiler error.
    To access this member you can use a type ascription:
    (symbol: Ensuring[SymbolTable.Symbol]).x
    Definition Classes
    Ensuring
    Annotations
    @deprecated
    Deprecated

    (Since version 2.10.0) Use resultOfEnsuring instead

Inherited from SymbolTable.Attachable

Inherited from HasFlags

Inherited from SymbolTable.AttachableApi

Inherited from SymbolTable.SymbolApi

Inherited from SymbolTable.HasFlagsApi

Inherited from SymbolTable.SymbolBase

Inherited from AnyRef

Inherited from Any

Inherited by implicit conversion any2stringadd from SymbolTable.Symbol to StringAdd

Inherited by implicit conversion any2stringfmt from SymbolTable.Symbol to StringFormat

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

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

No Group