scala.tools.nsc.symtab.Symbols

Symbol

class Symbol extends AbsSymbol

The class for all symbols

Attributes
abstract
Definition Classes
Symbols → Symbols
Source
Symbols.scala
Linear Supertypes
AbsSymbol, HasFlags, AnyRef, Any
Known Subclasses
Ordering
  1. Alphabetic
  2. By inheritance
Inherited
  1. Hide All
  2. Show all
  1. Symbol
  2. AbsSymbol
  3. HasFlags
  4. AnyRef
  5. Any
Visibility
  1. Public
  2. All

Instance Constructors

  1. new Symbol (initOwner: Symbol, initPos: Position, initName: Name)

Type Members

  1. type AccessBoundaryType = Symbol

    Definition Classes
    AbsSymbol → HasFlags
  2. type AnnotationType = AnnotationInfo

    Definition Classes
    AbsSymbol → HasFlags
  3. type FlagsType = Long

    Definition Classes
    AbsSymbol → HasFlags

Abstract Value Members

  1. def cloneSymbolImpl (owner: Symbol): Symbol

    Internal method to clone a symbol's implementation without flags or type

    Internal method to clone a symbol's implementation without flags or type

    Attributes
    abstract
  2. def doCookJavaRawInfo (): Unit

    Attributes
    protected abstract

Concrete Value Members

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

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

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

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

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

    Attributes
    final
    Definition Classes
    Any
  6. def accessBoundary (base: Symbol): Symbol

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

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

    Attributes
    final
  8. def accessed : Symbol

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

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

    Attributes
    final
  9. def accurateKindString : String

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

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

    Attributes
    final
  10. def addAnnotation (annot: AnnotationInfo): Unit

    Definition Classes
    Symbol → AbsSymbol
  11. def addChild (sym: Symbol): Unit

    Definition Classes
    AbsSymbol
  12. def alias : Symbol

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

  13. def allOverriddenSymbols : List[Symbol]

    Returns all symbols overriden by this symbol

    Returns all symbols overriden by this symbol

    Attributes
    final
  14. def alternatives : List[Symbol]

  15. def ancestors : List[Symbol]

    All directly or indirectly inherited classes.

  16. 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
    Symbol → HasFlags
  17. def asInstanceOf [T0] : T0

    Attributes
    final
    Definition Classes
    Any
  18. def caseFieldAccessors : List[Symbol]

    Return every accessor of a primary constructor parameter in this case class.

    Return every accessor of a primary constructor parameter in this case class. The scope declarations may be out of order because fields with less than private access are first given a regular getter, then a new renamed getter which comes later in the declaration list. For this reason we have to pinpoint the right accessors by starting with the original fields (which will be in the right order) and looking for getters with applicable names. The getters may have the standard name "foo" or may have been renamed to "foo$\d+" in SyntheticMethods. See ticket #1373.

    Attributes
    final
  19. def caseModule : Symbol

    The case module corresponding to this case class

    The case module corresponding to this case class

    Attributes
    final
  20. def children : List[Symbol]

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

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

  21. 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 }

  22. def clone (): AnyRef

    Attributes
    protected[lang]
    Definition Classes
    AnyRef
    Annotations
    @throws()
  23. def cloneSymbol (owner: Symbol): Symbol

    A clone of this symbol, but with given owner

    A clone of this symbol, but with given owner

    Attributes
    final
  24. def cloneSymbol : Symbol

    A clone of this symbol

    A clone of this symbol

    Attributes
    final
  25. def companionClass : Symbol

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

    For a module or case factory: 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

    Attributes
    final
  26. 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

    Attributes
    final
  27. 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

    Attributes
    final
  28. def constrParamAccessors : List[Symbol]

    Attributes
    final
  29. 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.

    Attributes
    final
  30. def deSkolemize : Symbol

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

  31. def decodedName : String

    Definition Classes
    AbsSymbol
  32. def defString : String

    String representation of symbol's definition

  33. def defaultFlagMask : Long

  34. def defaultFlagString : String

  35. def definedInPackage : Boolean

    Attributes
    final
  36. def deprecationMessage : Option[String]

  37. def deprecationVersion : Option[String]

  38. def elisionLevel : Option[Int]

  39. def enclClass : Symbol

    Definition Classes
    AbsSymbol
  40. def enclClassChain : List[Symbol]

  41. def enclMethod : Symbol

    Definition Classes
    AbsSymbol
  42. def enclosingPackage : Symbol

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

  43. def enclosingPackageClass : Symbol

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

  44. def encodedName : String

    Definition Classes
    AbsSymbol
  45. def eq (arg0: AnyRef): Boolean

    Attributes
    final
    Definition Classes
    AnyRef
  46. def equals (arg0: Any): Boolean

    Definition Classes
    AnyRef → Any
  47. def existentialBound : 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)

  48. def existentialToString : String

    String representation of existentially bound variable

  49. def exists : Boolean

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

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

    Attributes
    final
  52. def filter (cond: (Symbol) ⇒ Boolean): Symbol

  53. def finalize (): Unit

    Attributes
    protected[lang]
    Definition Classes
    AnyRef
    Annotations
    @throws()
  54. def flags : Long

    Attributes
    final
    Definition Classes
    Symbol → AbsSymbol → HasFlags
  55. def flags_= (fs: Long): Unit

    Attributes
    final
    Definition Classes
    Symbol → AbsSymbol
  56. def freshExistential (suffix: String): Symbol

    Attributes
    final
  57. def fullLocationString : String

  58. def fullName : String

    Attributes
    final
    Definition Classes
    AbsSymbol
  59. def fullName (separator: Char): String

    Attributes
    final
    Definition Classes
    AbsSymbol
  60. def getAnnotation (cls: Symbol): Option[AnnotationInfo]

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

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

    Attributes
    final
  63. 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.

    Attributes
    final
  64. def hasAbstractFlag : Boolean

    Definition Classes
    HasFlags
  65. def hasAccessBoundary : Boolean

    Attributes
    final
    Definition Classes
    AbsSymbol → HasFlags
  66. def hasAccessorFlag : Boolean

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

    Attributes
    final
    Definition Classes
    AbsSymbol → HasFlags
  68. def hasAnnotation (cls: Symbol): Boolean

    Does this symbol have an annotation of the given class?

  69. def hasAssignedAnnotations : Boolean

  70. def hasBridgeAnnotation : Boolean

  71. def hasContravariantFlag : Boolean

    Definition Classes
    HasFlags
  72. def hasDefault : Boolean

    Definition Classes
    HasFlags
  73. def hasDefaultFlag : Boolean

    Definition Classes
    HasFlags
  74. def hasFlag (mask: Long): Boolean

    Attributes
    final
    Definition Classes
    AbsSymbol → HasFlags
  75. def hasFlagsToString (mask: Long): String

    Definition Classes
    Symbol → HasFlags
  76. def hasGetter : Boolean

    Attributes
    final
  77. def hasInConstructorFlag : Boolean

    Definition Classes
    HasFlags
  78. def hasLocalFlag : Boolean

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

  80. def hasModuleFlag : Boolean

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

    Definition Classes
    HasFlags
  82. def hasPackageFlag : Boolean

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

  84. def hasPreSuperFlag : Boolean

    Definition Classes
    HasFlags
  85. def hasRawInfo : Boolean

  86. def hasStableFlag : Boolean

    Definition Classes
    HasFlags
  87. def hasStaticFlag : Boolean

    Definition Classes
    HasFlags
  88. def hasTraitFlag : Boolean

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

    same as ownerChain contains sym, but more efficient, and with a twist for refinement classes.

    same as ownerChain contains sym, but more efficient, and with a twist for refinement classes. A refinement class has a transowner X if an of its parents has transowner X.

  90. def hasTypeAt (pid: Int): Boolean

    Was symbol's type updated during given phase?

    Was symbol's type updated during given phase?

    Attributes
    final
  91. def hashCode (): Int

    Definition Classes
    AnyRef → Any
  92. val id : Int

  93. def idString : String

    If settings.

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

    Attributes
    final
  94. def implClass : Symbol

    The implementation class of a trait

    The implementation class of a trait

    Attributes
    final
  95. def implicitNotFoundMsg : Option[String]

  96. 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 → AbsSymbol
  97. def infoString (tp: Type): String

    String representation of symbol's definition following its name

    String representation of symbol's definition following its name

    Attributes
    final
  98. def info_= (info: Type): Unit

    Definition Classes
    Symbol → AbsSymbol
  99. def infosString : String

  100. def initialize : Symbol.this.type

    Initialize the symbol

    Initialize the symbol

    Attributes
    final
  101. def isAbstractClass : Boolean

    Attributes
    final
    Definition Classes
    AbsSymbol
  102. def isAbstractOverride : Boolean

    Definition Classes
    HasFlags
  103. def isAbstractType : Boolean

    Definition Classes
    AbsSymbol
  104. def isAliasType : Boolean

    Definition Classes
    AbsSymbol
  105. def isAnonOrRefinementClass : Boolean

    Attributes
    final
  106. def isAnonymousClass : Boolean

    Attributes
    final
  107. def isAnonymousFunction : Boolean

    Attributes
    final
  108. 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?

    Attributes
    final
  109. def isBridge : Boolean

    Attributes
    final
    Definition Classes
    AbsSymbol
  110. def isByNameParam : Boolean

    Definition Classes
    HasFlags
  111. def isCapturedVariable : Boolean

    Attributes
    final
  112. def isCase : Boolean

    Definition Classes
    HasFlags
  113. def isCaseAccessor : Boolean

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

    Attributes
    final
  115. def isCaseClass : Boolean

  116. def isClass : Boolean

    Definition Classes
    AbsSymbol
  117. def isClassConstructor : Boolean

    Attributes
    final
  118. def isClassLocalToConstructor : Boolean

    Attributes
    final
  119. def isCoDefinedWith (that: Symbol): Boolean

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

  120. def isConstant : Boolean

    Is this symbol a constant?

    Is this symbol a constant?

    Attributes
    final
  121. def isConstructor : Boolean

    Attributes
    final
  122. def isContravariant : Boolean

    Attributes
    final
    Definition Classes
    AbsSymbol
  123. def isCovariant : Boolean

    Attributes
    final
    Definition Classes
    AbsSymbol
  124. def isDefaultInit : Boolean

    Definition Classes
    HasFlags
  125. def isDeferred : Boolean

    Definition Classes
    HasFlags
  126. def isDeprecated : Boolean

  127. def isEarlyInitialized : Boolean

    Attributes
    final
    Definition Classes
    AbsSymbol
  128. def isEffectiveRoot : Boolean

    Definition Classes
    AbsSymbol
  129. def isEffectivelyFinal : Boolean

    Is this symbol effectively final? I.

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

    Attributes
    final
  130. def isEmptyPackage : Boolean

    Attributes
    final
    Definition Classes
    AbsSymbol
  131. def isEmptyPackageClass : Boolean

    Attributes
    final
    Definition Classes
    AbsSymbol
  132. def isErroneous : Boolean

    Attributes
    final
  133. def isError : Boolean

    Attributes
    final
  134. def isExistentialQuantified : Boolean

    Attributes
    final
  135. def isExistentialSkolem : Boolean

    Attributes
    final
  136. def isExistentiallyBound : Boolean

    Attributes
    final
    Definition Classes
    AbsSymbol
  137. def isFinal : Boolean

    Definition Classes
    HasFlags
  138. def isGetter : Boolean

    Attributes
    final
  139. def isHigherOrderTypeParameter : Boolean

    Attributes
    final
  140. def isImplClass : Boolean

    Attributes
    final
    Definition Classes
    AbsSymbol
  141. 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?

    Attributes
    final
  142. def isImplicit : Boolean

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

    ...

    Attributes
    final
  144. def isInitialized : Boolean

    Attributes
    final
  145. def isInitializedToDefault : Boolean

    Attributes
    final
  146. def isInstanceOf [T0] : Boolean

    Attributes
    final
    Definition Classes
    Any
  147. def isInterface : Boolean

    Definition Classes
    HasFlags
  148. def isInterpreterWrapper : Boolean

    Does this symbol denote a wrapper object of the interpreter or its class?

    Does this symbol denote a wrapper object of the interpreter or its class?

    Attributes
    final
  149. def isJavaDefined : Boolean

    Definition Classes
    HasFlags
  150. def isJavaInterface : Boolean

    Attributes
    final
  151. def isLabel : Boolean

    Definition Classes
    HasFlags
  152. def isLazy : Boolean

    Definition Classes
    HasFlags
  153. def isLazyAccessor : Boolean

    Attributes
    final
    Definition Classes
    AbsSymbol
  154. 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'.

    Attributes
    final
  155. def isLessAccessibleThan (other: Symbol): Boolean

  156. def isLifted : Boolean

    Definition Classes
    HasFlags
  157. def isLiftedMethod : Boolean

  158. def isLocal : Boolean

    Is this symbol locally defined? I.

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

    Attributes
    final
  159. 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
    Attributes
    final
  160. def isLocalDummy : Boolean

    Attributes
    final
  161. def isMemberOf (clazz: Symbol): Boolean

    Is this symbol a member of class clazz'

  162. def isMethod : Boolean

    Attributes
    final
    Definition Classes
    AbsSymbol
  163. def isMixinConstructor : Boolean

    Attributes
    final
  164. def isModule : Boolean

    Attributes
    final
    Definition Classes
    AbsSymbol
  165. def isModuleClass : Boolean

    Attributes
    final
    Definition Classes
    AbsSymbol
  166. def isModuleVar : Boolean

    Is this symbol a module variable? This used to have to test for MUTABLE to distinguish the overloaded MODULEVAR/SYNTHETICMETH flag, but now SYNTHETICMETH is gone.

    Is this symbol a module variable? This used to have to test for MUTABLE to distinguish the overloaded MODULEVAR/SYNTHETICMETH flag, but now SYNTHETICMETH is gone.

    Attributes
    final
  167. 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.

    Attributes
    final
  168. def isMutable : Boolean

    Definition Classes
    HasFlags
  169. 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)?

    Attributes
    final
  170. 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

    Attributes
    final
  171. def isNonBottomSubClass (that: Symbol): Boolean

    Is this class symbol a subclass of that symbol?

    Is this class symbol a subclass of that symbol?

    Attributes
    final
  172. def isNonClassType : Boolean

    Is this symbol a type but not a class?

  173. def isNumericSubClass (that: Symbol): Boolean

    Attributes
    final
  174. def isOuterAccessor : Boolean

    Is this symbol an accessor method for outer?

    Is this symbol an accessor method for outer?

    Attributes
    final
  175. def isOuterField : Boolean

    Is this symbol an accessor method for outer?

    Is this symbol an accessor method for outer?

    Attributes
    final
  176. def isOverloaded : Boolean

    Attributes
    final
    Definition Classes
    AbsSymbol
  177. def isOverride : Boolean

    Definition Classes
    HasFlags
  178. def isPackage : Boolean

    Attributes
    final
    Definition Classes
    AbsSymbol
  179. def isPackageClass : Boolean

    Attributes
    final
    Definition Classes
    AbsSymbol
  180. def isPackageObject : Boolean

    Attributes
    final
  181. def isPackageObjectClass : Boolean

    Attributes
    final
  182. def isParamAccessor : Boolean

    Definition Classes
    HasFlags
  183. def isParameter : Boolean

    Definition Classes
    HasFlags
  184. def isPredefModule : Boolean

    Attributes
    final
  185. 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?

    Attributes
    final
  186. def isPrivate : Boolean

    Definition Classes
    HasFlags
  187. def isPrivateLocal : Boolean

    Definition Classes
    HasFlags
  188. def isProtected : Boolean

    Definition Classes
    HasFlags
  189. def isProtectedLocal : Boolean

    Definition Classes
    HasFlags
  190. def isPublic : Boolean

    Definition Classes
    HasFlags
  191. def isRefinementClass : Boolean

    Attributes
    final
    Definition Classes
    AbsSymbol
  192. def isRoot : Boolean

    Attributes
    final
    Definition Classes
    AbsSymbol
  193. def isRootPackage : Boolean

    Attributes
    final
    Definition Classes
    AbsSymbol
  194. def isScalaPackage : Boolean

    Attributes
    final
  195. def isScalaPackageClass : Boolean

    Attributes
    final
  196. def isSealed : Boolean

    Definition Classes
    HasFlags
  197. def isSerializable : Boolean

  198. def isSetter : Boolean

    Attributes
    final
  199. def isSetterParameter : Boolean

  200. def isSingletonExistential : Boolean

  201. def isSourceMethod : Boolean

    Attributes
    final
    Definition Classes
    AbsSymbol
  202. def isStable : Boolean

    Does this symbol denote a stable value?

    Does this symbol denote a stable value?

    Attributes
    final
  203. def isStableClass : Boolean

    Attributes
    final
  204. def isStatic : Boolean

    Is this symbol static (i.

    Is this symbol static (i.e. with no outer instance)?

    Attributes
    final
  205. def isStaticConstructor : Boolean

    Is this symbol a static constructor?

    Is this symbol a static constructor?

    Attributes
    final
  206. 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?)

    Attributes
    final
  207. def isStaticModule : Boolean

    Attributes
    final
  208. def isStaticOwner : Boolean

    Does this symbol denote a class that defines static symbols?

    Does this symbol denote a class that defines static symbols?

    Attributes
    final
  209. def isStrictFP : Boolean

  210. 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?

    Attributes
    final
  211. def isSubClass (that: Symbol): Boolean

    Attributes
    final
  212. def isSuperAccessor : Boolean

    Definition Classes
    HasFlags
  213. def isSynthetic : Boolean

    Definition Classes
    HasFlags
  214. def isTerm : Boolean

    Definition Classes
    AbsSymbol
  215. def isThisSym : Boolean

    Attributes
    final
  216. def isTrait : Boolean

    Attributes
    final
    Definition Classes
    Symbol → AbsSymbol → HasFlags
  217. def isType : Boolean

    Definition Classes
    AbsSymbol
  218. def isTypeParameter : Boolean

    Attributes
    final
    Definition Classes
    AbsSymbol
  219. def isTypeParameterOrSkolem : Boolean

    Attributes
    final
  220. def isTypeSkolem : Boolean

    Attributes
    final
  221. def isUpdatedAt (pid: Int): Boolean

    Was symbol's type updated during given phase?

    Was symbol's type updated during given phase?

    Attributes
    final
  222. def isValue : Boolean

    Term symbols with the exception of static parts of Java classes and packages.

    Term symbols with the exception of static parts of Java classes and packages.

    Attributes
    final
  223. def isValueParameter : Boolean

    Attributes
    final
  224. def isVarargsMethod : Boolean

    Attributes
    final
    Definition Classes
    AbsSymbol
  225. def isVariable : Boolean

    Attributes
    final
  226. def isVirtualClass : Boolean

  227. def isVirtualTrait : Boolean

  228. def keyString : String

    String representation of symbol's definition key word

    String representation of symbol's definition key word

    Attributes
    final
  229. def kindString : String

    Attributes
    final
  230. def lazyAccessor : Symbol

    For a lazy value, its lazy accessor.

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

    Definition Classes
    Symbol → AbsSymbol
  231. def lazyAccessorOrSelf : Symbol

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

  232. 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$

    Attributes
    final
    Definition Classes
    Symbol → AbsSymbol
  233. 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.

  234. def lock (handler: ⇒ Unit): Unit

  235. def lockOK : Boolean

  236. 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'.

  237. def makeNotPrivate (base: Symbol): Unit

    Remove private modifier from symbol sym's definition. If sym' is a term symbol rename it by expanding its name to avoid name clashes

    Remove private modifier from symbol sym's definition. If sym' is a term symbol rename it by expanding its name to avoid name clashes

    Attributes
    final
  238. 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.

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

    Attributes
    final
  240. 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

    Attributes
    final
  241. def migrationMessage : Option[String]

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

  243. def moduleClass : Symbol

    The module class corresponding to this module.

    The module class corresponding to this module.

    Definition Classes
    Symbol → AbsSymbol
  244. def name : Name

    Definition Classes
    Symbol → AbsSymbol
  245. 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.

  246. def name_= (name: Name): Unit

    Attributes
    final
  247. def ne (arg0: AnyRef): Boolean

    Attributes
    final
    Definition Classes
    AnyRef
  248. def needsFlatClasses : Boolean

    Attributes
    final
  249. def needsImplClass : Boolean

    Is this symbol a trait which needs an implementation class?

    Is this symbol a trait which needs an implementation class?

    Attributes
    final
  250. def newAbstractType (name: TypeName, pos: Position = NoPosition): TypeSymbol

    Attributes
    final
    Definition Classes
    Symbol → AbsSymbol
  251. def newAbstractType (pos: Position, name: TypeName): TypeSymbol

    Symbol of an abstract type type T >: .

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

    Attributes
    final
  252. def newAliasType (name: TypeName, pos: Position = NoPosition): TypeSymbol

    Attributes
    final
    Definition Classes
    Symbol → AbsSymbol
  253. def newAliasType (pos: Position, name: TypeName): TypeSymbol

    Symbol of a type definition type T = .

    Symbol of a type definition type T = ...

    Attributes
    final
  254. def newAnonymousClass (pos: Position): ClassSymbol

    Attributes
    final
  255. def newAnonymousFunctionClass (pos: Position): ClassSymbol

    Attributes
    final
  256. def newClass (name: TypeName, pos: Position = NoPosition): ClassSymbol

    Attributes
    final
    Definition Classes
    Symbol → AbsSymbol
  257. def newClass (pos: Position, name: TypeName): ClassSymbol

    Attributes
    final
  258. def newConstructor (pos: Position): MethodSymbol

    Attributes
    final
  259. def newErrorClass (name: TypeName): ClassSymbol

    Attributes
    final
  260. def newErrorSymbol (name: Name): Symbol

    Attributes
    final
  261. def newErrorValue (name: TermName): TermSymbol

    Attributes
    final
  262. def newExistential (pos: Position, name: TypeName): Symbol

    Attributes
    final
  263. def newGetter : Symbol

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

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

    Attributes
    final
  264. def newImport (pos: Position): TermSymbol

    Attributes
    final
  265. def newLabel (pos: Position, name: TermName): MethodSymbol

    Attributes
    final
  266. def newLocalDummy (pos: Position): TermSymbol

    Create local dummy for template (owner of local blocks)

    Create local dummy for template (owner of local blocks)

    Attributes
    final
  267. def newMethod (name: TermName, pos: Position = NoPosition): MethodSymbol

    Attributes
    final
    Definition Classes
    Symbol → AbsSymbol
  268. def newMethod (pos: Position, name: TermName): MethodSymbol

    Attributes
    final
  269. def newModule (pos: Position, name: TermName): TermSymbol

    Attributes
    final
  270. def newModule (name: TermName, clazz: Symbol, pos: Position = NoPosition): TermSymbol

    Attributes
    final
    Definition Classes
    Symbol → AbsSymbol
  271. def newModule (pos: Position, name: TermName, clazz: ClassSymbol): TermSymbol

    Attributes
    final
  272. def newModuleClass (name: TypeName, pos: Position = NoPosition): ModuleClassSymbol

    Attributes
    final
    Definition Classes
    Symbol → AbsSymbol
  273. def newModuleClass (pos: Position, name: TypeName): ModuleClassSymbol

    Attributes
    final
  274. def newOuterAccessor (pos: Position): MethodSymbol

    for explicit outer phase

    for explicit outer phase

    Attributes
    final
  275. def newOverloaded (pre: Type, alternatives: List[Symbol]): Symbol

    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)

    Attributes
    final
  276. def newPackage (pos: Position, name: TermName): TermSymbol

    Attributes
    final
  277. def newRefinementClass (pos: Position): ClassSymbol

    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

    Attributes
    final
  278. 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.

    Attributes
    final
  279. def newSyntheticValueParams (argtypes: List[Type]): List[Symbol]

    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.

    Attributes
    final
  280. def newSyntheticValueParamss (argtypess: List[List[Type]]): List[List[Symbol]]

    Synthetic value parameters when parameter symbols are not available

    Synthetic value parameters when parameter symbols are not available

    Attributes
    final
  281. def newThisSym (pos: Position): TermSymbol

    Attributes
    final
  282. def newTypeParameter (pos: Position, name: TypeName): TypeSymbol

    Symbol of a type parameter

    Symbol of a type parameter

    Attributes
    final
  283. def newTypeSkolem : Symbol

    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.

    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.

    Attributes
    final
  284. def newValue (name: TermName, pos: Position = NoPosition): TermSymbol

    Attributes
    final
    Definition Classes
    Symbol → AbsSymbol
  285. def newValue (pos: Position, name: TermName): TermSymbol

    Attributes
    final
  286. def newValueParameter (pos: Position, name: TermName): TermSymbol

    Attributes
    final
  287. def newVariable (pos: Position, name: TermName): TermSymbol

    Attributes
    final
  288. def notify (): Unit

    Attributes
    final
    Definition Classes
    AnyRef
  289. def notifyAll (): Unit

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

    Definition Classes
    AbsSymbol
  291. 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.

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

    See also

    expandName

  293. def outerClass : Symbol

    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

    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

    Attributes
    final
  294. 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

  295. def overriddenSymbol (ofclazz: Symbol): Symbol

    The symbol overridden by this symbol in given class ofclazz'.

    The symbol overridden by this symbol in given class ofclazz'.

    Attributes
    final
  296. def overridingSymbol (ofclazz: Symbol): Symbol

    The symbol overriding this symbol in given subclass ofclazz'

    The symbol overriding this symbol in given subclass ofclazz'

    Attributes
    final
  297. def owner : Symbol

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

  299. def owner_= (owner: Symbol): Unit

    Attributes
    final
    Definition Classes
    Symbol → AbsSymbol
  300. def ownersIterator : Iterator[Symbol]

  301. def ownsString : String

    String representation of location.

  302. def paramss : List[List[Symbol]]

    The value parameter sections of this symbol.

  303. def pos : Position

  304. def primaryConstructor : Symbol

    The primary constructor of a class

  305. def printWithoutPrefix : 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.

    Attributes
    final
  306. def privateWithin : Symbol

    Definition Classes
    Symbol → AbsSymbol → HasFlags
  307. def privateWithin_= (sym: Symbol): Unit

    Definition Classes
    Symbol → AbsSymbol
  308. def rawAnnotations : List[AnnotationInfoBase]

  309. def rawInfo : Type

    Return info without checking for initialization or completing

    Return info without checking for initialization or completing

    Definition Classes
    Symbol → AbsSymbol
  310. var rawflags : Long

  311. var rawname : Name

  312. var rawowner : Symbol

  313. def removeAnnotation (cls: Symbol): Unit

    Remove all annotations matching the given class.

  314. def reset (completer: Type): Unit

    Reset symbol to initial state

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

    Attributes
    final
  316. def resetFlags (): Unit

    Attributes
    final
  317. def sealedDescendants : List[Symbol]

    Recursively finds all sealed descendants and returns a sorted list.

    Recursively finds all sealed descendants and returns a sorted list. Includes this symbol unless it is abstract, but as value classes are marked abstract so they can't be instantiated, they are special cased.

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

    Attributes
    final
  319. def setAnnotations (annots: List[AnnotationInfoBase]): Symbol.this.type

  320. def setFlag (mask: Long): Symbol.this.type

    Attributes
    final
  321. def setInfo (info: Type): Symbol.this.type

    Set initial info.

  322. def setInfoOwnerAdjusted (info: Type): Symbol.this.type

  323. def setPos (pos: Position): Symbol.this.type

  324. def setter (base: Symbol, hasExpandedName: Boolean): Symbol

    Attributes
    final
  325. 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

    Attributes
    final
  326. def simpleName : Name

    The simple name of this Symbol

    The simple name of this Symbol

    Attributes
    final
  327. def skipConstructor : Symbol

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

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

    Attributes
    final
  328. def skipPackageObject : Symbol

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

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

    Attributes
    final
  329. def sourceFile : AbstractFile

  330. def sourceFile_= (f: AbstractFile): Unit

  331. def sourceModule : Symbol

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

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

  334. def superClass : Symbol

    The superclass of this class

  335. def superSymbol (base: Symbol): Symbol

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

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

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

    Attributes
    final
    Definition Classes
    AnyRef
  337. 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

    Attributes
    final
  338. def thisSym : Symbol

    The self symbol of a class with explicit self type, or else the symbol itself.

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

  340. 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.
    Attributes
    final
  341. 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
  342. def toplevelClass : Symbol

    The top-level class containing this symbol

  343. def tpe : Type

    Get type.

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

    Definition Classes
    Symbol → AbsSymbol
  344. def tpeHK : Type

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

  346. 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 → AbsSymbol
  347. def typeOfThis_= (tp: Type): Unit

    Definition Classes
    AbsSymbol
  348. 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.

  349. def unlock (): Unit

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

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

  352. def updateInfo (info: Type): Symbol

    Set new info valid from start of this phase.

    Set new info valid from start of this phase.

    Attributes
    final
  353. var validTo : Period

  354. def variance : Int

    The variance of this symbol as an integer

    The variance of this symbol as an integer

    Attributes
    final
  355. def varianceString : String

    String representation of symbol's variance

  356. def wait (): Unit

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

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

    Attributes
    final
    Definition Classes
    AnyRef
    Annotations
    @throws()

Deprecated Value Members

  1. def isAbstract : Boolean

    Definition Classes
    HasFlags
    Annotations
    @deprecated
    Deprecated

Inherited from AbsSymbol

Inherited from HasFlags

Inherited from AnyRef

Inherited from Any