dotty.tools.dotc.core.SymDenotations

ClassDenotation

Related Doc: package SymDenotations

class ClassDenotation extends SymDenotation

The contents of a class definition during a period

Linear Supertypes
Known Subclasses
Ordering
  1. Alphabetic
  2. By inheritance
Inherited
  1. ClassDenotation
  2. SymDenotation
  3. SingleDenotation
  4. PreDenotation
  5. Denotation
  6. Showable
  7. DotClass
  8. AnyRef
  9. Any
  1. Hide All
  2. Show all
Learn more about member selection
Visibility
  1. Public
  2. All

Type Members

  1. type AsSeenFromResult = SingleDenotation

    Definition Classes
    SingleDenotationPreDenotation

Value Members

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

    Definition Classes
    AnyRef → Any
  2. final def ##(): Int

    Definition Classes
    AnyRef → Any
  3. def &(that: Denotation, pre: Type, safeIntersection: Boolean = false)(implicit ctx: Context): Denotation

    Form a denotation by conjoining with denotation that.

    Form a denotation by conjoining with denotation that.

    NoDenotations are dropped. MultiDenotations are handled by merging parts with same signatures. SingleDenotations with equal signatures are joined as follows:

    In a first step, consider only those denotations which have symbols that are accessible from prefix pre.

    If there are several such denotations, try to pick one by applying the following three precedence rules in decreasing order of priority:

    1. Prefer denotations with more specific infos. 2. If infos are equally specific, prefer denotations with concrete symbols over denotations with abstract symbols. 3. If infos are equally specific and symbols are equally concrete, prefer denotations with symbols defined in subclasses over denotations with symbols defined in proper superclasses.

    If there is exactly one (preferred) accessible denotation, return it.

    If there is no preferred accessible denotation, return a JointRefDenotation with one of the operand symbols (unspecified which one), and an info which is the intersection (using & or safe_& if safeIntersection is true) of the infos of the operand denotations.

    If SingleDenotations with different signatures are joined, return NoDenotation.

    Definition Classes
    Denotation
  4. final def ==(arg0: Any): Boolean

    Definition Classes
    AnyRef → Any
  5. final def accessBoundary(base: Symbol)(implicit ctx: Context): Symbol

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

    The class or term symbol 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.

    base

    The access boundary to assume if this symbol is protected

    Definition Classes
    SymDenotation
  6. def accessedFieldOrGetter(implicit ctx: Context): Symbol

    The field accessed by this getter or setter, or if it does not exist, the getter

    The field accessed by this getter or setter, or if it does not exist, the getter

    Definition Classes
    SymDenotation
  7. def accessibleFrom(pre: Type, superAccess: Boolean)(implicit ctx: Context): Denotation

    The denotation made up from the alternatives of this denotation that are accessible from prefix pre, or NoDenotation if no accessible alternative exists.

    The denotation made up from the alternatives of this denotation that are accessible from prefix pre, or NoDenotation if no accessible alternative exists.

    Definition Classes
    SingleDenotationDenotation
  8. final def addAnnotation(annot: Annotation): Unit

    Add given annotation to the annotations of this denotation

    Add given annotation to the annotations of this denotation

    Definition Classes
    SymDenotation
  9. final def addAnnotations(annots: TraversableOnce[Annotation])(implicit ctx: Context): Unit

    Add all given annotations to this symbol

    Add all given annotations to this symbol

    Definition Classes
    SymDenotation
  10. final def allOverriddenSymbols(implicit ctx: Context): Iterator[Symbol]

    All symbols overriden by this denotation.

    All symbols overriden by this denotation.

    Definition Classes
    SymDenotation
  11. final def alternatives: List[SingleDenotation]

    The set of alternative single-denotations making up this denotation

    The set of alternative single-denotations making up this denotation

    Definition Classes
    Denotation
  12. def altsWith(p: (Symbol) ⇒ Boolean): List[SingleDenotation]

    The alternatives of this denotation that satisfy the predicate p.

    The alternatives of this denotation that satisfy the predicate p.

    Definition Classes
    SingleDenotationDenotation
  13. final def annotations(implicit ctx: Context): List[Annotation]

    The annotations of this denotation

    The annotations of this denotation

    Definition Classes
    SymDenotation
  14. final def asClass: ClassDenotation

    Cast to class denotation

    Cast to class denotation

    Definition Classes
    SymDenotation
  15. final def asInstanceOf[T0]: T0

    Definition Classes
    Any
  16. final def asSeenFrom(pre: Type)(implicit ctx: Context): AsSeenFromResult

    The denotation with info(s) as seen from prefix type

    The denotation with info(s) as seen from prefix type

    Definition Classes
    PreDenotation
  17. final def asSingleDenotation: SingleDenotation

    Definition Classes
    Denotation
  18. final def asSymDenotation: SymDenotation

    Definition Classes
    Denotation
  19. def assertNoSkolems(tp: Type): Unit

    Definition Classes
    SymDenotation
  20. def atSignature(sig: Signature, site: Type, relaxed: Boolean)(implicit ctx: Context): SingleDenotation

    Resolve overloaded denotation to pick the ones with the given signature when seen from prefix site.

    Resolve overloaded denotation to pick the ones with the given signature when seen from prefix site.

    relaxed

    When true, consider only parameter signatures for a match.

    Definition Classes
    SingleDenotationDenotation
  21. def baseClasses(implicit ctx: Context): List[ClassSymbol]

    The base classes of this class in linearization order, with the class itself as first element.

  22. final def baseTypeRefOf(tp: Type)(implicit ctx: Context): Type

    Compute tp.baseTypeRef(this)

  23. final def canMatchInheritedSymbols(implicit ctx: Context): Boolean

    If false, this symbol cannot possibly participate in an override, either as overrider or overridee.

    If false, this symbol cannot possibly participate in an override, either as overrider or overridee.

    Definition Classes
    SymDenotation
  24. def checkUnique(implicit ctx: Context): SingleDenotation

    If this is a SingleDenotation, return it, otherwise throw a TypeError

    If this is a SingleDenotation, return it, otherwise throw a TypeError

    Definition Classes
    Denotation
  25. def classInfo(implicit ctx: Context): ClassInfo

    The info asserted to have type ClassInfo

  26. def classParents(implicit ctx: Context): List[TypeRef]

    The denotations of all parents in this class.

  27. def classSymbol: ClassSymbol

    The symbol asserted to have type ClassSymbol

  28. def clone(): AnyRef

    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  29. final def companionClass(implicit ctx: Context): Symbol

    The class with the same (type-) name as this module or module class, and which is also defined in the same scope and compilation unit.

    The class with the same (type-) name as this module or module class, and which is also defined in the same scope and compilation unit. NoSymbol if this class does not exist.

    Definition Classes
    SymDenotation
  30. final def companionModule(implicit ctx: Context): Symbol

    The module object with the same (term-) name as this class or module class, and which is also defined in the same scope and compilation unit.

    The module object with the same (term-) name as this class or module class, and which is also defined in the same scope and compilation unit. NoSymbol if this module does not exist.

    Definition Classes
    SymDenotation
  31. final def completer: LazyType

    The completer of this denotation.

    The completer of this denotation. @pre: Denotation is not yet completed

    Definition Classes
    SymDenotation
  32. def computeAsSeenFrom(pre: Type)(implicit ctx: Context): SingleDenotation

    Attributes
    protected
    Definition Classes
    SingleDenotationPreDenotation
  33. final def containsSym(sym: Symbol): Boolean

    Group contains a denotation that refers to given symbol

    Group contains a denotation that refers to given symbol

    Definition Classes
    SingleDenotationPreDenotation
  34. final def copySymDenotation(symbol: Symbol = this.symbol, owner: Symbol = this.owner, name: Name = this.name, initFlags: FlagSet = UndefinedFlags, info: Type = null, privateWithin: Symbol = null, annotations: List[Annotation] = null)(implicit ctx: Context): SymDenotation

    Copy this denotation, overriding selective fields

    Copy this denotation, overriding selective fields

    Definition Classes
    SymDenotation
  35. def coveredInterval(implicit ctx: Context): Period

    The period (interval of phases) for which there exists a valid denotation in this flock.

    The period (interval of phases) for which there exists a valid denotation in this flock.

    Definition Classes
    SingleDenotation
  36. def current(implicit ctx: Context): SingleDenotation

    Produce a denotation that is valid for the given context.

    Produce a denotation that is valid for the given context. Usually called when !(validFor contains ctx.period) (even though this is not a precondition). If the runId of the context is the same as runId of this denotation, the right flock member is located, or, if it does not exist yet, created by invoking a transformer (@See Transformers). If the runId's differ, but this denotation is a SymDenotation and its toplevel owner class or module is still a member of its enclosing package, then the whole flock is brought forward to be valid in the new runId. Otherwise the symbol is stale, which constitutes an internal error.

    Definition Classes
    SingleDenotationDenotation
  37. def debugString: String

    Definition Classes
    SymDenotation
  38. def definedPeriodsString: String

    Definition Classes
    SingleDenotation
  39. def delete(sym: Symbol)(implicit ctx: Context): Unit

    Delete symbol from current scope.

    Delete symbol from current scope. Note: We require that this does not happen after the first time someone does a findMember on a subclass.

  40. def derivedSingleDenotation(symbol: Symbol, info: Type)(implicit ctx: Context): SingleDenotation

    Definition Classes
    SingleDenotation
  41. final def derivesFrom(base: Symbol)(implicit ctx: Context): Boolean

    Is this a subclass of base, and is the denoting symbol also different from Null or Nothing?

    Is this a subclass of base, and is the denoting symbol also different from Null or Nothing?

    Definition Classes
    ClassDenotationSymDenotation
    Note

    erroneous classes are assumed to derive from all other classes and all classes derive from them.

  42. def disambiguate(p: (Symbol) ⇒ Boolean)(implicit ctx: Context): SingleDenotation

    If this denotation is overloaded, filter with given predicate.

    If this denotation is overloaded, filter with given predicate. If result is still overloaded throw a TypeError. Note: disambiguate is slightly different from suchThat in that single-denotations that do not satisfy the predicate are left alone (whereas suchThat would map them to NoDenotation).

    Definition Classes
    Denotation
  43. def effectiveName(implicit ctx: Context): Name

    The name, except

    The name, except

    • if this is a module class, strip the module class suffix
    • if this is a companion object with a clash-avoiding name, strip the "avoid clash" suffix
    Definition Classes
    SymDenotation
  44. final def effectiveOwner(implicit ctx: Context): Symbol

    The owner, skipping package objects, labels and non-lazy valdefs.

    The owner, skipping package objects, labels and non-lazy valdefs.

    Definition Classes
    SymDenotation
  45. final def enclosingClass(implicit ctx: Context): Symbol

    The class containing this denotation.

    The class containing this denotation. If this denotation is already a class, return itself Definitions flagged with InSuperCall are treated specially. Their enclosing class is not the lexically enclosing class, but in turn the enclosing class of the latter. This reflects the context created by Context#superCallContext, Context#thisCallArgContext for these definitions.

    Note, that as packages have ClassSymbols, top level classes will have an enclosingClass with Package flag set.

    Definition Classes
    SymDenotation
  46. final def enclosingClassNamed(name: Name)(implicit ctx: Context): Symbol

    The class containing this denotation which has the given effective name.

    The class containing this denotation which has the given effective name.

    Definition Classes
    SymDenotation
  47. final def enclosingMethod(implicit ctx: Context): Symbol

    The closest enclosing method containing this definition.

    The closest enclosing method containing this definition. A local dummy owner is mapped to the primary constructor of the class.

    Definition Classes
    SymDenotation
  48. final def enclosingPackageClass(implicit ctx: Context): Symbol

    The package class containing this denotation

    The package class containing this denotation

    Definition Classes
    SymDenotation
  49. final def enclosingSubClass(implicit ctx: Context): Symbol

    The class that encloses the owner of the current context and that is a subclass of this class.

    The class that encloses the owner of the current context and that is a subclass of this class. NoSymbol if no such class exists.

    Definition Classes
    SymDenotation
  50. final def ensureCompleted()(implicit ctx: Context): Unit

    Make sure this denotation is completed

    Make sure this denotation is completed

    Definition Classes
    SymDenotation
  51. def ensureFreshScopeAfter(phase: DenotTransformer)(implicit ctx: Context): Unit

    If this class has the same decls scope reference in phase and phase.next, install a new denotation with a cloned scope in phase.next.

  52. def ensureNotPrivate(implicit ctx: Context): SymDenotation

    If denotation is private, remove the Private flag and expand the name if necessary

    If denotation is private, remove the Private flag and expand the name if necessary

    Definition Classes
    SymDenotation
  53. def ensureTypeParamsInCorrectOrder()(implicit ctx: Context): Unit

    Make sure the type parameters of this class appear in the order given by typeParams in the scope of the class.

    Make sure the type parameters of this class appear in the order given by typeParams in the scope of the class. Reorder definitions in scope if necessary.

  54. def enter(sym: Symbol, scope: Scope = EmptyScope)(implicit ctx: Context): Unit

    Enter a symbol in current scope, and future scopes of same denotation.

    Enter a symbol in current scope, and future scopes of same denotation. Note: We require that this does not happen after the first time someone does a findMember on a subclass.

    scope

    The scope in which symbol should be entered. If this is EmptyScope, the scope is decls.

  55. def enterNoReplace(sym: Symbol, scope: MutableScope)(implicit ctx: Context): Unit

    Enter a symbol in given scope without potentially replacing the old copy.

  56. final def eq(arg0: AnyRef): Boolean

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

    Definition Classes
    AnyRef → Any
  58. def exists: Boolean

    Is this denotation different from NoDenotation or an ErrorDenotation?

    Is this denotation different from NoDenotation or an ErrorDenotation?

    Definition Classes
    Denotation
  59. final def expandedName(implicit ctx: Context): Name

    The expanded name of this denotation.

    The expanded name of this denotation.

    Definition Classes
    SymDenotation
  60. final def extendedOverriddenSymbols(implicit ctx: Context): Iterator[Symbol]

    Returns all matching symbols defined in parents of the selftype.

    Returns all matching symbols defined in parents of the selftype.

    Definition Classes
    SymDenotation
  61. def fallbackToText(printer: Printer): Text

    A fallback text representation, if the pattern matching in Printers does not have a case for this showable element

    A fallback text representation, if the pattern matching in Printers does not have a case for this showable element

    Definition Classes
    Showable
  62. final def filterAnnotations(p: (Annotation) ⇒ Boolean)(implicit ctx: Context): Unit

    Keep only those annotations that satisfy p

    Keep only those annotations that satisfy p

    Definition Classes
    SymDenotation
  63. final def filterDisjoint(denots: PreDenotation)(implicit ctx: Context): SingleDenotation

    Keep only those denotations in this group which have a signature that's not already defined by denots.

    Keep only those denotations in this group which have a signature that's not already defined by denots.

    Definition Classes
    SingleDenotationPreDenotation
  64. final def filterExcluded(excluded: FlagSet)(implicit ctx: Context): SingleDenotation

    Keep only those denotations in this group whose flags do not intersect with excluded.

    Keep only those denotations in this group whose flags do not intersect with excluded.

    Definition Classes
    SingleDenotationPreDenotation
  65. final def filterWithPredicate(p: (SingleDenotation) ⇒ Boolean): SingleDenotation

    Keep only those denotations in this group which satisfy predicate p.

    Keep only those denotations in this group which satisfy predicate p.

    Definition Classes
    SingleDenotationPreDenotation
  66. def finalize(): Unit

    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( classOf[java.lang.Throwable] )
  67. final def findMember(name: Name, pre: Type, excluded: FlagSet)(implicit ctx: Context): Denotation

    Find member of this denotation with given name and produce a denotation that contains the type of the member as seen from given prefix pre.

    Find member of this denotation with given name and produce a denotation that contains the type of the member as seen from given prefix pre. Exclude all members that have flags in excluded from consideration.

    Definition Classes
    ClassDenotationDenotation
  68. final def first: SingleDenotation

    First/last denotation in the group

    First/last denotation in the group

    Definition Classes
    SingleDenotationPreDenotation
  69. final def flags(implicit ctx: Context): FlagSet

    The flag set

    The flag set

    Definition Classes
    SymDenotation
  70. final def flags_=(flags: FlagSet): Unit

    Update the flag set

    Update the flag set

    Definition Classes
    SymDenotation
  71. def flatName(implicit ctx: Context): Name

    The encoded flat name of this denotation, where joined names are separated by separator characters.

    The encoded flat name of this denotation, where joined names are separated by separator characters.

    Definition Classes
    SymDenotation
  72. def fullName(implicit ctx: Context): Name

    fullName where .' is the separator character

    fullName where .' is the separator character

    Definition Classes
    ClassDenotationSymDenotation
  73. final def fullNameSeparated(separator: String)(implicit ctx: Context): Name

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

    The encoded full path name of this denotation, where outer names and inner names are separated by separator strings. Never translates expansions of operators back to operator symbol. Drops package objects. Represents terms in the owner chain by a simple ~. (Note: scalac uses nothing to represent terms, which can cause name clashes between same-named definitions in different enclosing methods. Before this commit we used $' but this can cause ambiguities with the class separator '$'). A separator "" means "flat name"; the real separator in this case is "$" and enclosing packages do not form part of the name.

    Definition Classes
    ClassDenotationSymDenotation
  74. final def getAnnotation(cls: Symbol)(implicit ctx: Context): Option[Annotation]

    Optionally, the annotation matching the given class symbol

    Optionally, the annotation matching the given class symbol

    Definition Classes
    SymDenotation
  75. final def getClass(): Class[_]

    Definition Classes
    AnyRef → Any
  76. def hasAltWith(p: (SingleDenotation) ⇒ Boolean): Boolean

    Does this denotation have an alternative that satisfies the predicate p?

    Does this denotation have an alternative that satisfies the predicate p?

    Definition Classes
    SingleDenotationDenotation
  77. final def hasAnnotation(cls: Symbol)(implicit ctx: Context): Boolean

    Does this denotation have an annotation matching the given class symbol?

    Does this denotation have an annotation matching the given class symbol?

    Definition Classes
    SymDenotation
  78. def hasDefaultParams(implicit ctx: Context): Boolean

    Does this symbol have defined or inherited default parameters?

    Does this symbol have defined or inherited default parameters?

    Definition Classes
    SymDenotation
  79. def hasSkolems(tp: Type): Boolean

    Definition Classes
    SymDenotation
  80. def hasUniqueSym: Boolean

    Definition Classes
    SymDenotationSingleDenotation
  81. def hashCode(): Int

    Definition Classes
    AnyRef → Any
  82. def history: List[SingleDenotation]

    Definition Classes
    SingleDenotation
  83. final def info(implicit ctx: Context): Type

    The type info.

    The type info. The info is an instance of TypeType iff this is a type denotation Uncompleted denotations set myInfo to a LazyType.

    Definition Classes
    SymDenotationDenotation
  84. final def infoOrCompleter: Type

    The type info, or, if symbol is not yet completed, the completer

    The type info, or, if symbol is not yet completed, the completer

    Definition Classes
    SymDenotationDenotation
  85. final def info_=(tp: Type): Unit

    Attributes
    protected[dotty.tools.dotc]
    Definition Classes
    ClassDenotationSymDenotation
  86. final val initInfo: Type

    Definition Classes
    SymDenotation
  87. def initial: SymDenotation

    The version of this SingleDenotation that was valid in the first phase of this run.

    The version of this SingleDenotation that was valid in the first phase of this run.

    Definition Classes
    SymDenotationSingleDenotation
  88. def installAfter(phase: DenotTransformer)(implicit ctx: Context): Unit

    Install this denotation as the result of the given denotation transformer.

    Install this denotation as the result of the given denotation transformer.

    Definition Classes
    SymDenotationSingleDenotation
  89. def invalidateInheritedInfo(): Unit

    Invalidate all caches and fields that depend on base classes and their contents

    Invalidate all caches and fields that depend on base classes and their contents

    Definition Classes
    ClassDenotationSingleDenotation
  90. final def is(fs: FlagConjunction, butNot: FlagSet)(implicit ctx: Context): Boolean

    Has this denotation all of the flags in fs set, whereas none of the flags in butNot are set?

    Has this denotation all of the flags in fs set, whereas none of the flags in butNot are set?

    Definition Classes
    SymDenotation
  91. final def is(fs: FlagConjunction)(implicit ctx: Context): Boolean

    Has this denotation all of the flags in fs set?

    Has this denotation all of the flags in fs set?

    Definition Classes
    SymDenotation
  92. final def is(fs: FlagSet, butNot: FlagSet)(implicit ctx: Context): Boolean

    Has this denotation one of the flags in fs set, whereas none of the flags in butNot are set?

    Has this denotation one of the flags in fs set, whereas none of the flags in butNot are set?

    Definition Classes
    SymDenotation
  93. final def is(fs: FlagSet)(implicit ctx: Context): Boolean

    Has this denotation one of the flags in fs set?

    Has this denotation one of the flags in fs set?

    Definition Classes
    SymDenotation
  94. final def isAbsent(implicit ctx: Context): Boolean

    Is symbol known to not exist?

    Is symbol known to not exist?

    Definition Classes
    SymDenotation
  95. final def isAbstractOrAliasType: Boolean

    Is this symbol an abstract or alias type?

    Is this symbol an abstract or alias type?

    Definition Classes
    SymDenotation
  96. final def isAbstractType(implicit ctx: Context): Boolean

    Is this symbol an abstract type?

    Is this symbol an abstract type?

    Definition Classes
    SymDenotation
  97. final def isAccessibleFrom(pre: Type, superAccess: Boolean = false, whyNot: StringBuffer = null)(implicit ctx: Context): Boolean

    Is this definition accessible as a member of tree with type pre?

    Is this definition accessible as a member of tree with type pre?

    pre

    The type of the tree from which the selection is made

    superAccess

    Access is via super Everything is accessible if pre is NoPrefix. A symbol with type NoType is not accessible for any other prefix.

    Definition Classes
    SymDenotation
  98. final def isAliasType(implicit ctx: Context): Boolean

    Is this symbol an alias type?

    Is this symbol an alias type?

    Definition Classes
    SymDenotation
  99. final def isAnonymousClass(implicit ctx: Context): Boolean

    Is this symbol an anonymous class?

    Is this symbol an anonymous class?

    Definition Classes
    SymDenotation
  100. final def isAnonymousFunction(implicit ctx: Context): Boolean

    Definition Classes
    SymDenotation
  101. final def isAnonymousModuleVal(implicit ctx: Context): Boolean

    Definition Classes
    SymDenotation
  102. def isAsConcrete(that: Symbol)(implicit ctx: Context): Boolean

    Is this symbol concrete, or that symbol deferred?

    Is this symbol concrete, or that symbol deferred?

    Definition Classes
    SymDenotation
  103. final def isClass: Boolean

    Is this denotation a class?

    Is this denotation a class?

    Definition Classes
    SymDenotation
  104. final def isClassConstructor: Boolean

    is this the constructor of a class?

    is this the constructor of a class?

    Definition Classes
    SymDenotation
  105. final def isCoDefinedWith(that: Symbol)(implicit ctx: Context): Boolean

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

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

    Definition Classes
    SymDenotation
  106. final def isCompanionMethod(implicit ctx: Context): Boolean

    Is this a companion class method or companion object method? These methods are generated by Symbols#synthesizeCompanionMethod and used in SymDenotations#companionClass and SymDenotations#companionModule .

    Is this a companion class method or companion object method? These methods are generated by Symbols#synthesizeCompanionMethod and used in SymDenotations#companionClass and SymDenotations#companionModule .

    Definition Classes
    SymDenotation
  107. final def isCompleted: Boolean

    The denotation is completed: info is not a lazy type and attributes have defined values

    The denotation is completed: info is not a lazy type and attributes have defined values

    Definition Classes
    SymDenotation
  108. final def isCompleting: Boolean

    The denotation is in train of being completed

    The denotation is in train of being completed

    Definition Classes
    SymDenotation
  109. final def isConstructor: Boolean

    Is this the constructor of a trait or a class

    Is this the constructor of a trait or a class

    Definition Classes
    SymDenotation
  110. final def isContainedIn(boundary: Symbol)(implicit ctx: Context): Boolean

    Is this definition contained in boundary? Same as ownersIterator contains boundary but more efficient.

    Is this definition contained in boundary? Same as ownersIterator contains boundary but more efficient.

    Definition Classes
    SymDenotation
  111. final def isEffectiveRoot(implicit ctx: Context): Boolean

    Is this symbol the empty package class or its companion object?

    Is this symbol the empty package class or its companion object?

    Definition Classes
    SymDenotation
  112. final def isEffectivelyFinal(implicit ctx: Context): Boolean

    A symbol is effectively final if it cannot be overridden in a subclass

    A symbol is effectively final if it cannot be overridden in a subclass

    Definition Classes
    SymDenotation
  113. final def isEmptyPackage(implicit ctx: Context): Boolean

    Is this symbol the empty package class or its companion object?

    Is this symbol the empty package class or its companion object?

    Definition Classes
    SymDenotation
  114. def isError: Boolean

    is this symbol the result of an erroneous definition?

    is this symbol the result of an erroneous definition?

    Definition Classes
    SymDenotation
  115. final def isGetter(implicit ctx: Context): Boolean

    Is this a getter?

    Is this a getter?

    Definition Classes
    SymDenotation
  116. final def isImplClassConstructor: Boolean

    Is this the constructor of a trait?

    Is this the constructor of a trait?

    Definition Classes
    SymDenotation
  117. final def isImport: Boolean

    is this a symbol representing an import?

    is this a symbol representing an import?

    Definition Classes
    SymDenotation
  118. final def isIncompleteIn(base: Symbol)(implicit ctx: Context): Boolean

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

    Definition Classes
    SymDenotation
  119. def isInlineMethod(implicit ctx: Context): Boolean

    Definition Classes
    SymDenotation
  120. final def isInstanceOf[T0]: Boolean

    Definition Classes
    Any
  121. final def isLocalDummy: Boolean

    Is this a local template dummmy?

    Is this a local template dummmy?

    Definition Classes
    SymDenotation
  122. final def isNullableClass(implicit ctx: Context): Boolean

    Is this symbol a class references to which that are supertypes of null?

    Is this symbol a class references to which that are supertypes of null?

    Definition Classes
    SymDenotation
  123. def isNumericValueClass(implicit ctx: Context): Boolean

    Is symbol a primitive numeric value class?

    Is symbol a primitive numeric value class?

    Definition Classes
    SymDenotation
  124. final def isOverloaded: Boolean

    Is this denotation overloaded?

    Is this denotation overloaded?

    Definition Classes
    Denotation
  125. def isPackageObject(implicit ctx: Context): Boolean

    Is this symbol a package object or its module class?

    Is this symbol a package object or its module class?

    Definition Classes
    SymDenotation
  126. def isPhantomClass(implicit ctx: Context): Boolean

    Is symbol a phantom class for which no runtime representation exists?

    Is symbol a phantom class for which no runtime representation exists?

    Definition Classes
    SymDenotation
  127. final def isPrimaryConstructor(implicit ctx: Context): Boolean

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

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

    Definition Classes
    SymDenotation
  128. def isPrimitiveValueClass(implicit ctx: Context): Boolean

    Is symbol a primitive value class?

    Is symbol a primitive value class?

    Definition Classes
    SymDenotation
  129. final def isProperlyContainedIn(boundary: Symbol)(implicit ctx: Context): Boolean

    Definition Classes
    SymDenotation
  130. final def isRealClass(implicit ctx: Context): Boolean

    Is this denotation a non-trait class?

    Is this denotation a non-trait class?

    Definition Classes
    SymDenotation
  131. final def isRealMethod(implicit ctx: Context): Boolean

    Is this a "real" method? A real method is a method which is:

    Is this a "real" method? A real method is a method which is:

    • not an accessor
    • not a label
    • not an anonymous function
    • not a companion method
    Definition Classes
    SymDenotation
  132. final def isRefinementClass(implicit ctx: Context): Boolean

    Is this symbol a class representing a refinement? These classes are used only temporarily in Typer and Unpickler as an intermediate step for creating Refinement types.

    Is this symbol a class representing a refinement? These classes are used only temporarily in Typer and Unpickler as an intermediate step for creating Refinement types.

    Definition Classes
    SymDenotation
  133. final def isRoot: Boolean

    Is this symbol the root class or its companion object?

    Is this symbol the root class or its companion object?

    Definition Classes
    SymDenotation
  134. final def isSelfSym(implicit ctx: Context): Boolean

    Is this the denotation of a self symbol of some class? This is the case if one of two conditions holds:

    Is this the denotation of a self symbol of some class? This is the case if one of two conditions holds:

    1. It is the symbol referred to in the selfInfo part of the ClassInfo which is the type of this symbol's owner. 2. This symbol is owned by a class, it's selfInfo field refers to a type (indicating the self definition does not introduce a name), and the symbol's name is "_". TODO: Find a more robust way to characterize self symbols, maybe by spending a Flag on them?
    Definition Classes
    SymDenotation
  135. final def isSetter(implicit ctx: Context): Boolean

    Is this a setter?

    Is this a setter?

    Definition Classes
    SymDenotation
  136. def isSkolem: Boolean

    Definition Classes
    SymDenotation
  137. final def isStable(implicit ctx: Context): Boolean

    Is this a denotation of a stable term (or an arbitrary type)?

    Is this a denotation of a stable term (or an arbitrary type)?

    Definition Classes
    SymDenotation
  138. final def isStatic(implicit ctx: Context): Boolean

    Is this denotation static (i.e.

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

    Definition Classes
    SymDenotation
  139. final def isStaticConstructor(implicit ctx: Context): Boolean

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

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

    Definition Classes
    SymDenotation
  140. final def isStaticOwner(implicit ctx: Context): Boolean

    Is this a package class or module class that defines static symbols?

    Is this a package class or module class that defines static symbols?

    Definition Classes
    SymDenotation
  141. final def isSubClass(base: Symbol)(implicit ctx: Context): Boolean

    Is this a subclass of the given class base?

    Is this a subclass of the given class base?

    Definition Classes
    ClassDenotationSymDenotation
  142. def isTerm: Boolean

    Is this a reference to a term symbol?

    Is this a reference to a term symbol?

    Definition Classes
    Denotation
  143. def isType: Boolean

    Is this denotation a type?

    Is this denotation a type?

    Definition Classes
    SymDenotationDenotation
  144. final def isValueClass(implicit ctx: Context): Boolean

    Is this symbol a class that extends AnyVal?

    Is this symbol a class that extends AnyVal?

    Definition Classes
    SymDenotation
  145. final def isValueClassConvertMethod(implicit ctx: Context): Boolean

    Is this a syntetic method that represents conversions between representations of a value class These methods are generated in ExtensionMethods and used in ElimErasedValueType.

    Is this a syntetic method that represents conversions between representations of a value class These methods are generated in ExtensionMethods and used in ElimErasedValueType.

    Definition Classes
    SymDenotation
  146. def isWeakOwner(implicit ctx: Context): Boolean

    Symbol is an owner that would be skipped by effectiveOwner.

    Symbol is an owner that would be skipped by effectiveOwner. Skipped are

    • package objects
    • labels
    • non-lazy valdefs
    Definition Classes
    SymDenotation
  147. final def last: SingleDenotation

    Definition Classes
    SingleDenotationPreDenotation
  148. final def lexicallyEnclosingClass(implicit ctx: Context): Symbol

    A class that in source code would be lexically enclosing

    A class that in source code would be lexically enclosing

    Definition Classes
    SymDenotation
  149. final def linkedClass(implicit ctx: Context): Symbol

    If this is a class, the module class of its companion object.

    If this is a class, the module class of its companion object. If this is a module class, its companion class. NoSymbol otherwise.

    Definition Classes
    SymDenotation
  150. def mapInfo(f: (Type) ⇒ Type)(implicit ctx: Context): SingleDenotation

    A denotation with the info of this denotation transformed using f

    A denotation with the info of this denotation transformed using f

    Definition Classes
    SingleDenotationDenotation
  151. def mapInherited(ownDenots: PreDenotation, prevDenots: PreDenotation, pre: Type)(implicit ctx: Context): SingleDenotation

    Keep only those inherited members M of this predenotation for which the following is true

    Keep only those inherited members M of this predenotation for which the following is true

    • M is not marked Private
    • If M has a unique symbol, it does not appear in prevDenots.
    • M's signature as seen from prefix pre does not appear in ownDenots Return the denotation as seen from pre. Called from SymDenotations.computeMember. There, ownDenots are the denotations found in the base class, which shadow any inherited denotations with the same signature. prevDenots are the denotations that are defined in the class or inherited from a base type which comes earlier in the linearization.
    Definition Classes
    SingleDenotationPreDenotation
  152. final def markAbsent(): Unit

    Make denotation not exist

    Make denotation not exist

    Definition Classes
    SymDenotation
  153. final def matches(other: SingleDenotation)(implicit ctx: Context): Boolean

    Group contains a denotation with given signature

    Group contains a denotation with given signature

    Definition Classes
    SingleDenotationPreDenotation
  154. final def matchingDecl(inClass: Symbol, site: Type)(implicit ctx: Context): Symbol

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

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

    inClass

    The class containing the result symbol's definition

    site

    The base type from which member types are computed

    inClass <-- find denot.symbol class C { <-- symbol is here

    site: Subtype of both inClass and C

    Definition Classes
    SymDenotation
  155. def matchingDenotation(site: Type, targetType: Type)(implicit ctx: Context): SingleDenotation

    The alternative of this denotation that has a type matching targetType when seen as a member of type site, NoDenotation if none exists.

    The alternative of this denotation that has a type matching targetType when seen as a member of type site, NoDenotation if none exists.

    Definition Classes
    Denotation
  156. final def matchingMember(site: Type)(implicit ctx: Context): Symbol

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

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

    Definition Classes
    SymDenotation
  157. def maybeOwner: Symbol

    Same as owner, except returns NoSymbol for NoSymbol

    Same as owner, except returns NoSymbol for NoSymbol

    Definition Classes
    SymDenotation
  158. final def memberCanMatchInheritedSymbols(implicit ctx: Context): Boolean

    If false, this class member cannot possibly participate in an override, either as overrider or overridee.

    If false, this class member cannot possibly participate in an override, either as overrider or overridee.

    Definition Classes
    SymDenotation
  159. def memberFingerPrint(implicit ctx: Context): FingerPrint

    A bloom filter for the names of all members in this class.

    A bloom filter for the names of all members in this class. Makes sense only for parent classes, and should definitely not be used for package classes because cache never gets invalidated.

  160. def memberNames(keepOnly: NameFilter)(implicit ctx: Context): Set[Name]

  161. final def membersNamed(name: Name)(implicit ctx: Context): PreDenotation

    All members of this class that have the given name.

    All members of this class that have the given name. The elements of the returned pre-denotation all have existing symbols.

  162. def membersNeedAsSeenFrom(pre: Type)(implicit ctx: Context): Boolean

    Do members of this symbol need translation via asSeenFrom when accessed via prefix pre?

    Do members of this symbol need translation via asSeenFrom when accessed via prefix pre?

    Definition Classes
    SymDenotation
  163. def mergeNames[N <: Name](names1: List[N], names2: List[N], syntheticName: (Int) ⇒ N): List[N]

    Merge two lists of names.

    Merge two lists of names. If names in corresponding positions match, keep them, otherwise generate new synthetic names.

    Definition Classes
    Denotation
  164. final def moduleClass(implicit ctx: Context): Symbol

    The class implementing this module, NoSymbol if not applicable.

    The class implementing this module, NoSymbol if not applicable.

    Definition Classes
    SymDenotation
  165. final val name: Name

    Definition Classes
    SymDenotation
  166. def namedType(implicit ctx: Context): NamedType

    The NamedType representing this denotation at its original location.

    The NamedType representing this denotation at its original location. Same as either typeRef or termRefWithSig depending whether this denotes a type or not.

    Definition Classes
    SingleDenotation
  167. final def namedTypeParams(implicit ctx: Context): Set[TypeSymbol]

    The named type parameters declared or inherited by this class

    The named type parameters declared or inherited by this class

    Definition Classes
    ClassDenotationSymDenotation
  168. final def ne(arg0: AnyRef): Boolean

    Definition Classes
    AnyRef
  169. def newLikeThis(s: Symbol, i: Type): SingleDenotation

    Attributes
    protected
    Definition Classes
    SymDenotationSingleDenotation
  170. var nextInRun: SingleDenotation

    The next SingleDenotation in this run, with wrap-around from last to first.

    The next SingleDenotation in this run, with wrap-around from last to first.

    There may be several SingleDenotations with different validity representing the same underlying definition at different phases. These are called a "flock". Flock members are generated by

    Attributes
    protected
    Definition Classes
    SingleDenotation
  171. def nonMemberTermRef(implicit ctx: Context): TermRef

    Definition Classes
    SymDenotation
  172. final def nonPrivateMembersNamed(name: Name, inherited: Boolean = false)(implicit ctx: Context): PreDenotation

    All non-private members of this class that have the given name.

    All non-private members of this class that have the given name. The elements of the returned pre-denotation all have existing symbols.

    inherited

    The method is called on a parent class from computeNPMembersNamed

  173. final def notify(): Unit

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

    Definition Classes
    AnyRef
  175. def orElse(that: ⇒ SingleDenotation): SingleDenotation

    Definition Classes
    SingleDenotation
  176. final def orElse(that: ⇒ Denotation): Denotation

    If this denotation does not exist, fallback to alternative

    If this denotation does not exist, fallback to alternative

    Definition Classes
    Denotation
  177. final def originalName(implicit ctx: Context): Name

    The name with which the denoting symbol was created

    The name with which the denoting symbol was created

    Definition Classes
    SymDenotation
  178. final def overriddenSymbol(inClass: ClassSymbol)(implicit ctx: Context): Symbol

    The symbol, in class inClass, that is overridden by this denotation.

    The symbol, in class inClass, that is overridden by this denotation.

    Definition Classes
    SymDenotation
  179. final def overridingSymbol(inClass: ClassSymbol)(implicit ctx: Context): Symbol

    The symbol overriding this symbol in given subclass ofclazz.

    The symbol overriding this symbol in given subclass ofclazz.

    Definition Classes
    SymDenotation
  180. def owner: Symbol

    The owner of the symbol; overridden in NoDenotation

    The owner of the symbol; overridden in NoDenotation

    Definition Classes
    SymDenotation
  181. final def ownersIterator(implicit ctx: Context): Iterator[Symbol]

    The chain of owners of this denotation, starting with the denoting symbol itself

    The chain of owners of this denotation, starting with the denoting symbol itself

    Definition Classes
    SymDenotation
  182. def paramAccessors(implicit ctx: Context): List[Symbol]

    The parameter accessors of this class.

    The parameter accessors of this class. Term and type accessors, getters and setters are all returned int his list

  183. def primaryConstructor(implicit ctx: Context): Symbol

    The primary constructor of a class or trait, NoSymbol if not applicable.

    The primary constructor of a class or trait, NoSymbol if not applicable.

    Definition Classes
    ClassDenotationSymDenotation
  184. final def privateWithin(implicit ctx: Context): Symbol

    The privateWithin boundary, NoSymbol if no boundary is given.

    The privateWithin boundary, NoSymbol if no boundary is given.

    Definition Classes
    SymDenotation
  185. final def privateWithin_=(sym: Symbol): Unit

    Set privateWithin.

    Set privateWithin.

    Attributes
    protected[dotty.tools.dotc.core]
    Definition Classes
    SymDenotation
  186. final def removeAnnotation(cls: Symbol)(implicit ctx: Context): Unit

    Remove annotation with given class from this denotation

    Remove annotation with given class from this denotation

    Definition Classes
    SymDenotation
  187. def replace(prev: Symbol, replacement: Symbol)(implicit ctx: Context): Unit

    Replace symbol prev (if defined in current class) by symbol replacement.

    Replace symbol prev (if defined in current class) by symbol replacement. If prev is not defined in current class, do nothing.

  188. def requiredClass(name: PreName)(implicit ctx: Context): ClassSymbol

    Definition Classes
    Denotation
  189. def requiredMethod(name: PreName, argTypes: List[Type])(implicit ctx: Context): TermSymbol

    Definition Classes
    Denotation
  190. def requiredMethod(name: PreName)(implicit ctx: Context): TermSymbol

    Definition Classes
    Denotation
  191. def requiredMethodRef(name: PreName, argTypes: List[Type])(implicit ctx: Context): TermRef

    Definition Classes
    Denotation
  192. def requiredMethodRef(name: PreName)(implicit ctx: Context): TermRef

    Definition Classes
    Denotation
  193. def requiredSymbol(p: (Symbol) ⇒ Boolean, source: AbstractFile = null, generateStubs: Boolean = true)(implicit ctx: Context): Symbol

    Return symbol in this denotation that satisfies the given predicate.

    Return symbol in this denotation that satisfies the given predicate. if generateStubs is specified, return a stubsymbol if denotation is a missing ref. Throw a TypeError if predicate fails to disambiguate symbol or no alternative matches.

    Definition Classes
    Denotation
  194. def requiredValue(name: PreName)(implicit ctx: Context): TermSymbol

    Definition Classes
    Denotation
  195. def requiredValueRef(name: PreName)(implicit ctx: Context): TermRef

    Definition Classes
    Denotation
  196. final def resetFlag(flags: FlagSet): Unit

    Unset given flags(s) of this denotation

    Unset given flags(s) of this denotation

    Definition Classes
    SymDenotation
  197. final def scalacLinkedClass(implicit ctx: Context): Symbol

    Definition Classes
    SymDenotation
  198. final def setApplicableFlags(flags: FlagSet): Unit

    Set applicable flags from flags which is a subset of {NoInits, PureInterface}

    Set applicable flags from flags which is a subset of {NoInits, PureInterface}

    Definition Classes
    SymDenotation
  199. final def setFlag(flags: FlagSet): Unit

    Set given flags(s) of this denotation

    Set given flags(s) of this denotation

    Definition Classes
    SymDenotation
  200. def show(implicit ctx: Context): String

    The string representation of this showable element.

    The string representation of this showable element.

    Definition Classes
    Showable
  201. def showDcl(implicit ctx: Context): String

    Show declaration string; useful for showing declarations as seen from subclasses.

    Show declaration string; useful for showing declarations as seen from subclasses.

    Definition Classes
    SingleDenotation
  202. def showSummary(implicit ctx: Context): String

    Definition Classes
    Showable
  203. def showSummary(depth: Int)(implicit ctx: Context): String

    The summarized string representation of this showable element.

    The summarized string representation of this showable element. Recursion depth is limited to some smallish value. Default is Config.summarizeDepth.

    Definition Classes
    Showable
  204. final def signature(implicit ctx: Context): Signature

    The signature of the denotation.

    The signature of the denotation.

    Definition Classes
    SingleDenotationDenotation
  205. final def skipWeakOwner(implicit ctx: Context): Symbol

    If this is a weak owner, its owner, otherwise the denoting symbol.

    If this is a weak owner, its owner, otherwise the denoting symbol.

    Definition Classes
    SymDenotation
  206. final def sourceModule(implicit ctx: Context): Symbol

    The module implemented by this module class, NoSymbol if not applicable.

    The module implemented by this module class, NoSymbol if not applicable.

    Definition Classes
    SymDenotation
  207. def staleSymbolError(implicit ctx: Context): Nothing

    Definition Classes
    SingleDenotation
  208. def suchThat(p: (Symbol) ⇒ Boolean)(implicit ctx: Context): SingleDenotation

    The unique alternative of this denotation that satisfies the predicate p, or NoDenotation if no satisfying alternative exists.

    The unique alternative of this denotation that satisfies the predicate p, or NoDenotation if no satisfying alternative exists.

    Definition Classes
    SingleDenotationDenotation
    Exceptions thrown

    TypeError if there is at more than one alternative that satisfies p.

  209. def superClass(implicit ctx: Context): Symbol

    The symbol of the superclass, NoSymbol if no superclass exists

  210. final def superSymbolIn(base: Symbol)(implicit ctx: Context): Symbol

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

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

    Definition Classes
    SymDenotation
  211. val symbol: Symbol

    The referencing symbol, or NoSymbol is none exists

    The referencing symbol, or NoSymbol is none exists

    Definition Classes
    Denotation
  212. def syncWithParents(implicit ctx: Context): SingleDenotation

    invalidate caches influenced by parent classes if one of the parents is younger than the denotation itself.

    invalidate caches influenced by parent classes if one of the parents is younger than the denotation itself.

    Definition Classes
    ClassDenotationSingleDenotation
  213. final def synchronized[T0](arg0: ⇒ T0): T0

    Definition Classes
    AnyRef
  214. def termRef(implicit ctx: Context): TermRef

    The TermRef representing this term denotation at its original location.

    The TermRef representing this term denotation at its original location.

    Definition Classes
    SymDenotationSingleDenotation
  215. def termRefWithSig(implicit ctx: Context): TermRef

    The TermRef representing this term denotation at its original location at the denotation's signature.

    The TermRef representing this term denotation at its original location at the denotation's signature.

    Definition Classes
    SymDenotationSingleDenotation
    Note

    Unlike valRef and termRef, this will force the completion of the denotation via a call to info.

  216. def thisType(implicit ctx: Context): Type

    The this-type depends on the kind of class:

    The this-type depends on the kind of class:

    • for a package class p: ThisType(TypeRef(Noprefix, p))
    • for a module class m: A term ref to m's source module.
    • for all other classes c with owner o: ThisType(TypeRef(o.thisType, c))
    Definition Classes
    ClassDenotationSymDenotation
  217. final def toDenot(pre: Type)(implicit ctx: Context): Denotation

    Convert to full denotation by &-ing all elements

    Convert to full denotation by &-ing all elements

    Definition Classes
    SingleDenotationPreDenotation
  218. def toString(): String

    Definition Classes
    SymDenotationSingleDenotation → AnyRef → Any
  219. def toText(printer: Printer): Text

    The text representation of this showable element.

    The text representation of this showable element. This normally dispatches to a pattern matching method in Printers.

    Definition Classes
    DenotationShowable
  220. final def topLevelClass(implicit ctx: Context): Symbol

    The top-level class containing this denotation, except for a toplevel module, where its module class is returned.

    The top-level class containing this denotation, except for a toplevel module, where its module class is returned.

    Definition Classes
    SymDenotation
  221. def transformAfter(phase: DenotTransformer, f: (SymDenotation) ⇒ SymDenotation)(implicit ctx: Context): Unit

    Apply a transformation f to all denotations in this group that start at or after given phase.

    Apply a transformation f to all denotations in this group that start at or after given phase. Denotations are replaced while keeping the same validity periods.

    Definition Classes
    SymDenotationSingleDenotation
  222. final def transformAnnotations(f: (Annotation) ⇒ Annotation)(implicit ctx: Context): Unit

    Apply transform f to all annotations of this denotation

    Apply transform f to all annotations of this denotation

    Definition Classes
    SymDenotation
  223. final def typeParamCreationFlags: FlagSet

    The flags to be used for a type parameter owned by this symbol.

    The flags to be used for a type parameter owned by this symbol. Overridden by ClassDenotation.

    Definition Classes
    ClassDenotationSymDenotation
  224. final def typeParams(implicit ctx: Context): List[TypeSymbol]

    The type parameters of this class

    The type parameters of this class

    Definition Classes
    ClassDenotationSymDenotation
  225. def typeRef(implicit ctx: Context): TypeRef

    The TypeRef representing this type denotation at its original location.

    The TypeRef representing this type denotation at its original location.

    Definition Classes
    ClassDenotationSymDenotationSingleDenotation
  226. def underlyingSymbol(implicit ctx: Context): Symbol

    The field accessed by a getter or setter, or if it does not exists, the getter of a setter, or if that does not exist the symbol itself.

    The field accessed by a getter or setter, or if it does not exists, the getter of a setter, or if that does not exist the symbol itself.

    Definition Classes
    SymDenotation
  227. final def unforcedAnnotation(cls: Symbol)(implicit ctx: Context): Option[Annotation]

    The same as getAnnotation, but without ensuring that the symbol carrying the annotation is completed

    The same as getAnnotation, but without ensuring that the symbol carrying the annotation is completed

    Definition Classes
    SymDenotation
  228. final def unforcedDecls(implicit ctx: Context): Scope

    The symbols defined in this class or object.

    The symbols defined in this class or object. Careful! This does not force the type, so is compilation order dependent. This method should be used only in the following circumstances:

    1. When accessing type parameters or type parameter accessors (both are entered before completion). 2. When obtaining the current scope in order to enter, rename or delete something there. 3. When playing it safe in order not to raise CylicReferences, e.g. for printing things or taking more efficient shortcuts (e.g. the stillValid test).
    Definition Classes
    SymDenotation
  229. final def unforcedInfo: Option[Type]

    Optionally, the info if it is completed

    Optionally, the info if it is completed

    Definition Classes
    SymDenotation
  230. def union(that: PreDenotation): PreDenotation

    The union of two groups.

    The union of two groups.

    Definition Classes
    PreDenotation
  231. def unsupported(methodName: String): Nothing

    Throws an UnsupportedOperationException with the given method name.

    Throws an UnsupportedOperationException with the given method name.

    Definition Classes
    DotClass
  232. final def updateAnnotation(annot: Annotation)(implicit ctx: Context): Unit

    Remove any annotations with same class as annot, and add annot

    Remove any annotations with same class as annot, and add annot

    Definition Classes
    SymDenotation
  233. def valRef(implicit ctx: Context): TermRef

    The TermRef representing this term denotation at its original location and at signature NotAMethod.

    The TermRef representing this term denotation at its original location and at signature NotAMethod.

    Definition Classes
    SymDenotationSingleDenotation
  234. def validFor: Period

    The period during which this denotation is valid.

    The period during which this denotation is valid.

    Definition Classes
    SingleDenotationDenotation
  235. def validFor_=(p: Period): Unit

    Definition Classes
    SingleDenotation
  236. final def variance(implicit ctx: Context): Int

    The variance of this type parameter or type member as an Int, with +1 = Covariant, -1 = Contravariant, 0 = Nonvariant, or not a type parameter

    The variance of this type parameter or type member as an Int, with +1 = Covariant, -1 = Contravariant, 0 = Nonvariant, or not a type parameter

    Definition Classes
    SymDenotation
  237. final def wait(): Unit

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

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

    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  240. def |(that: Denotation, pre: Type)(implicit ctx: Context): Denotation

    Form a choice between this denotation and that one.

    Form a choice between this denotation and that one.

    pre

    The prefix type of the members of the denotation, used to determine an accessible symbol if it exists.

    Definition Classes
    Denotation

Inherited from SymDenotation

Inherited from SingleDenotation

Inherited from PreDenotation

Inherited from Denotation

Inherited from Showable

Inherited from DotClass

Inherited from AnyRef

Inherited from Any

Ungrouped