The primary constructor of a class or trait, NoSymbol if not applicable.
The primary constructor of a class or trait, NoSymbol if not applicable.
The next SingleDenotation in this run, with wrap-around from last to first.
There may be several SingleDenotation
s with different validity
representing...
The next SingleDenotation in this run, with wrap-around from last to first.
There may be several SingleDenotation
s with different validity
representing the same underlying definition at different phases.
These are called a "flock". Flock members are generated by
Form a denotation by conjoining with denotation that
.
NoDenotations are dropped. MultiDenotations are handled by merging parts with same signatures. Sin...
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:
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.
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 inacce...
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.
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
The denotation made up from the alternatives of this denotation that
are accessible from prefix pre
, or NoDenotation if no accessible alternative exist...
The denotation made up from the alternatives of this denotation that
are accessible from prefix pre
, or NoDenotation if no accessible alternative exists.
Add given annotation to the annotations of this denotation
Add given annotation to the annotations of this denotation
Add all given annotations to this symbol
Add all given annotations to this symbol
All symbols overriden by this denotation.
All symbols overriden by this denotation.
The set of alternative single-denotations making up this denotation
The set of alternative single-denotations making up this denotation
The alternatives of this denotation that satisfy the predicate p
.
The alternatives of this denotation that satisfy the predicate p
.
The annotations of this denotation
The annotations of this denotation
Update the annotations of this denotation
Update the annotations of this denotation
Cast to class denotation
Cast to class denotation
The denotation with info(s) as seen from prefix type
The denotation with info(s) as seen from prefix type
The source or class file from which this class was generated, null if not applicable.
The source or class file from which this class was generated, null if not applicable.
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
.
The base classes of this class in linearization order, with the class itself as first element.
The base classes of this class in linearization order, with the class itself as first element.
Compute tp.baseTypeRef(this)
Compute tp.baseTypeRef(this)
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.
If this is a SingleDenotation, return it, otherwise throw a TypeError
If this is a SingleDenotation, return it, otherwise throw a TypeError
The info asserted to have type ClassInfo
The info asserted to have type ClassInfo
The denotations of all parents in this class.
The denotations of all parents in this class.
The symbol asserted to have type ClassSymbol
The symbol asserted to have type ClassSymbol
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...
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.
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 i...
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.
The completer of this denotation. @pre: Denotation is not yet completed
The completer of this denotation. @pre: Denotation is not yet completed
Group contains a denotation that refers to given symbol
Group contains a denotation that refers to given symbol
Copy this denotation, overriding selective fields
Copy this denotation, overriding selective fields
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.
Produce a denotation that is valid for the given context. Usually called when !(validFor contains ctx.period) (even though this is not a precondition). I...
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.
If this is a package class, the symbols entered in it before it is completed. (this is needed to eagerly enter synthetic aliases such as AnyRef into a p...
If this is a package class, the symbols entered in it before it is completed. (this is needed to eagerly enter synthetic aliases such as AnyRef into a package class without forcing it. Right now, the only usage is for the AnyRef alias in Definitions.
Delete symbol from current scope. Note: We require that this does not happen after the first time someone does a findMember on a subclass.
Delete symbol from current scope. Note: We require that this does not happen after the first time someone does a findMember on a subclass.
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
?
If this denotation is overloaded, filter with given predicate. If result is still overloaded throw a TypeError. Note: disambiguate is slightly different...
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).
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...
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
The owner, skipping package objects, labels and non-lazy valdefs.
The owner, skipping package objects, labels and non-lazy valdefs.
The class containing this denotation. If this denotation is already a class, return itself Definitions flagged with InSuperCall are treated specially. Th...
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.
The class containing this denotation which has the given effective name.
The class containing this denotation which has the given effective name.
The closest enclosing method containing this definition. A local dummy owner is mapped to the primary constructor of the class.
The closest enclosing method containing this definition. A local dummy owner is mapped to the primary constructor of the class.
The package class containing this denotation
The package class containing this denotation
The class that encloses the owner of the current context and that is a subclass of this class. NoSymbol if no such class exists.
The class that encloses the owner of the current context and that is a subclass of this class. NoSymbol if no such class exists.
Make sure this denotation is completed
Make sure this denotation is completed
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
.
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
.
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
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 necessar...
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.
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 fi...
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.
Enter a symbol in given scope
without potentially replacing the old copy.
Enter a symbol in given scope
without potentially replacing the old copy.
Is this denotation different from NoDenotation or an ErrorDenotation?
Is this denotation different from NoDenotation or an ErrorDenotation?
The expanded name of this denotation.
The expanded name of this denotation.
Returns all matching symbols defined in parents of the selftype.
Returns all matching symbols defined in parents of the selftype.
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
Keep only those annotations that satisfy p
Keep only those annotations that satisfy p
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
.
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
.
Keep only those denotations in this group which satisfy predicate p
.
Keep only those denotations in this group which satisfy predicate p
.
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...
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.
First/last denotation in the group
First/last denotation in the group
The flag set
The flag set
The flag set without forcing symbol completion. Should be used only for printing.
The flag set without forcing symbol completion. Should be used only for printing.
Update the flag set
Update the flag set
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.
fullName
where `.' is the separator character
fullName
where `.' is the separator character
The encoded full path name of this denotation, where outer names and inner names
are separated by separator
strings.
Never translates expansions of oper...
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.
Optionally, the annotation matching the given class symbol
Optionally, the annotation matching the given class symbol
Does this denotation have an alternative that satisfies the predicate p
?
Does this denotation have an alternative that satisfies the predicate p
?
Does this denotation have an annotation matching the given class symbol?
Does this denotation have an annotation matching the given class symbol?
Does this symbol have defined or inherited default parameters?
Does this symbol have defined or inherited default parameters?
The type info. The info is an instance of TypeType iff this is a type denotation Uncompleted denotations set myInfo to a LazyType.
The type info. The info is an instance of TypeType iff this is a type denotation Uncompleted denotations set myInfo to a LazyType.
The type info, or, if symbol is not yet completed, the completer
The type info, or, if symbol is not yet completed, the completer
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.
Install this denotation as the result of the given denotation transformer.
Install this denotation as the result of the given denotation transformer.
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
Has this denotation one of the flags in fs
set?
Has this denotation one of the flags in fs
set?
Has this denotation all of the flags in fs
set?
Has this denotation all of the flags in fs
set?
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?
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?
Is symbol known to not exist?
Is symbol known to not exist?
Is this symbol an abstract or alias type?
Is this symbol an abstract or alias type?
Is this symbol an abstract type?
Is this symbol an abstract type?
Is this definition accessible as a member of tree with type pre
?
Is this definition accessible as a member of tree with type pre
?
Is this symbol an alias type?
Is this symbol an alias type?
Is this symbol an anonymous class?
Is this symbol an anonymous class?
Is this symbol concrete, or that symbol deferred?
Is this symbol concrete, or that symbol deferred?
Is this denotation a class?
Is this denotation a class?
is this the constructor of a class?
is this the constructor of a class?
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?
Is this a companion class method or companion object method? These methods are generated by Symbols#synthesizeCompanionMethod and used in SymDenotations...
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 .
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
The denotation is in train of being completed
The denotation is in train of being completed
Is this the constructor of a trait or a class
Is this the constructor of a trait or a class
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.
Is this symbol the empty package class or its companion object?
Is this symbol the empty package class or its companion object?
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
Is this symbol the empty package class or its companion object?
Is this symbol the empty package class or its companion object?
is this symbol the result of an erroneous definition?
is this symbol the result of an erroneous definition?
Is this a getter?
Is this a getter?
Is this the constructor of a trait?
Is this the constructor of a trait?
is this a symbol representing an import?
is this a symbol representing an import?
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 incompl...
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.
Is this symbol the same or a linked class of sym
?
Is this symbol the same or a linked class of sym
?
Is this a local template dummmy?
Is this a local template dummmy?
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?
Is symbol a primitive numeric value class?
Is symbol a primitive numeric value class?
Is this denotation overloaded?
Is this denotation overloaded?
Is this symbol a package object or its module class?
Is this symbol a package object or its module class?
Is symbol a phantom class for which no runtime representation exists?
Is symbol a phantom class for which no runtime representation exists?
Does this symbol denote the primary constructor of its enclosing class?
Does this symbol denote the primary constructor of its enclosing class?
Is symbol a primitive value class?
Is symbol a primitive value class?
Is this denotation a non-trait class?
Is this denotation a non-trait class?
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
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
Is this symbol a class representing a refinement? These classes are used only temporarily in Typer and Unpickler as an intermediate step for creating Re...
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 the root class or its companion object?
Is this symbol the root class or its companion object?
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...
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?
Is this a setter?
Is this a setter?
Is this a denotation of a stable term (or an arbitrary type)?
Is this a denotation of a stable term (or an arbitrary type)?
Is this denotation static (i.e. with no outer instance)?
Is this denotation static (i.e. with no outer instance)?
Does this symbol denote the static constructor of its enclosing class?
Does this symbol denote the static constructor of its enclosing class?
Is this a package class or module class that defines static symbols?
Is this a package class or module class that defines static symbols?
Is this a subclass of the given class base
?
Is this a subclass of the given class base
?
Is this a reference to a term symbol?
Is this a reference to a term symbol?
Is this denotation a type?
Is this denotation a type?
Is this symbol a class that extends AnyVal
?
Is this symbol a class that extends AnyVal
?
Is this a syntetic method that represents conversions between representations of a value class These methods are generated in ExtensionMethods and used...
Is this a syntetic method that represents conversions between representations of a value class These methods are generated in ExtensionMethods and used in ElimErasedValueType.
Symbol is an owner that would be skipped by effectiveOwner. Skipped are - package objects - labels - non-lazy valdefs
Symbol is an owner that would be skipped by effectiveOwner. Skipped are - package objects - labels - non-lazy valdefs
A class that in source code would be lexically enclosing
A class that in source code would be lexically enclosing
If this is a class, the module class of its companion object. If this is a module class, its companion class. NoSymbol otherwise.
If this is a class, the module class of its companion object. If this is a module class, its companion class. NoSymbol otherwise.
A denotation with the info of this denotation transformed using f
A denotation with the info of this denotation transformed using f
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...
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.
Make denotation not exist
Make denotation not exist
Group contains a denotation with given signature
Group contains a denotation with given signature
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.
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.
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
Same as owner, except returns NoSymbol for NoSymbol
Same as owner, except returns NoSymbol for NoSymbol
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.
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 be...
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.
All members of this class that have the given name. The elements of the returned pre-denotation all have existing symbols.
All members of this class that have the given name. The elements of the returned pre-denotation all have existing symbols.
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
?
Merge two lists of names. If names in corresponding positions match, keep them, otherwise generate new synthetic names.
Merge two lists of names. If names in corresponding positions match, keep them, otherwise generate new synthetic names.
The class implementing this module, NoSymbol if not applicable.
The class implementing this module, NoSymbol if not applicable.
The NamedType representing this denotation at its original location.
Same as either typeRef
or termRefWithSig
depending whether this denotes a type or...
The NamedType representing this denotation at its original location.
Same as either typeRef
or termRefWithSig
depending whether this denotes a type or not.
The next SingleDenotation in this run, with wrap-around from last to first.
There may be several SingleDenotation
s with different validity
representing...
The next SingleDenotation in this run, with wrap-around from last to first.
There may be several SingleDenotation
s with different validity
representing the same underlying definition at different phases.
These are called a "flock". Flock members are generated by
All non-private members of this class that have the given name. The elements of the returned pre-denotation all have existing symbols.
All non-private members of this class that have the given name. The elements of the returned pre-denotation all have existing symbols.
If this denotation does not exist, fallback to alternative
If this denotation does not exist, fallback to alternative
The name with which the denoting symbol was created
The name with which the denoting symbol was created
The symbol, in class inClass
, that is overridden by this denotation.
The symbol, in class inClass
, that is overridden by this denotation.
The symbol overriding this symbol in given subclass ofclazz
.
The symbol overriding this symbol in given subclass ofclazz
.
The owner of the symbol; overridden in NoDenotation
The owner of the symbol; overridden in NoDenotation
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
The parameter accessors of this class. Term and type accessors, getters and setters are all returned int his list
The parameter accessors of this class. Term and type accessors, getters and setters are all returned int his list
The prefix string to be used when displaying this symbol without denotation
The prefix string to be used when displaying this symbol without denotation
The primary constructor of a class or trait, NoSymbol if not applicable.
The primary constructor of a class or trait, NoSymbol if not applicable.
The privateWithin boundary, NoSymbol if no boundary is given.
The privateWithin boundary, NoSymbol if no boundary is given.
Set privateWithin.
Set privateWithin.
Remove annotation with given class from this denotation
Remove annotation with given class from this denotation
Replace symbol prev
(if defined in current class) by symbol replacement
.
If prev
is not defined in current class, do nothing.
Replace symbol prev
(if defined in current class) by symbol replacement
.
If prev
is not defined in current class, do nothing.
Return symbol in this denotation that satisfies the given predicate. if generateStubs is specified, return a stubsymbol if denotation is a missing ref.
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.
Unset given flags(s) of this denotation
Unset given flags(s) of this denotation
Set given flags(s) of this denotation
Set given flags(s) of this denotation
Set applicable flags from flags
which is a subset of {NoInits, PureInterface}
Set applicable flags from flags
which is a subset of {NoInits, PureInterface}
The string representation of this showable element.
The string representation of this showable element.
Show declaration string; useful for showing declarations as seen from subclasses.
Show declaration string; useful for showing declarations as seen from subclasses.
The summarized string representation of this showable element. Recursion depth is limited to some smallish value. Default is Config.summarizeDepth.
The summarized string representation of this showable element. Recursion depth is limited to some smallish value. Default is Config.summarizeDepth.
The signature of the denotation.
The signature of the denotation.
If this is a weak owner, its owner, otherwise the denoting symbol.
If this is a weak owner, its owner, otherwise the denoting symbol.
The module implemented by this module class, NoSymbol if not applicable.
The module implemented by this module class, NoSymbol if not applicable.
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.
The symbol of the superclass, NoSymbol if no superclass exists
The symbol of the superclass, NoSymbol if no superclass exists
A unique, densely packed integer tag for each class symbol, -1 for all other symbols. To save memory, this method should be called only if class is a su...
A unique, densely packed integer tag for each class symbol, -1 for all other symbols. To save memory, this method should be called only if class is a super class of some other class.
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 bas...
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
.
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.
The TermRef representing this term denotation at its original location.
The TermRef representing this term denotation at its original location.
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.
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 mo...
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))
Convert to full denotation by &-ing all elements
Convert to full denotation by &-ing all elements
The text representation of this showable element. This normally dispatches to a pattern matching method in Printers.
The text representation of this showable element. This normally dispatches to a pattern matching method in Printers.
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.
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...
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.
Apply transform f
to all annotations of this denotation
Apply transform f
to all annotations of this denotation
The flags to be used for a type parameter owned by this symbol. Overridden by ClassDenotation.
The flags to be used for a type parameter owned by this symbol. Overridden by ClassDenotation.
The type parameters of this class
The type parameters of this class
The TypeRef representing this type denotation at its original location.
The TypeRef representing this type denotation at its original location.
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.
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
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 i...
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:
Optionally, the info if it is completed
Optionally, the info if it is completed
The union of two groups.
The union of two groups.
Throws an UnsupportedOperationException
with the given method name.
Throws an UnsupportedOperationException
with the given method name.
Remove any annotations with same class as annot
, and add annot
Remove any annotations with same class as annot
, and add annot
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
.
The period during which this denotation is valid.
The period during which this denotation is valid.
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
Form a choice between this denotation and that one.
Form a choice between this denotation and that one.