dotty.tools.dotc.core.Denotations

PreDenotation

Related Doc: package Denotations

trait PreDenotation extends AnyRef

A PreDenotation represents a group of single denotations It is used as an optimization to avoid forming MultiDenotations too eagerly.

Linear Supertypes
AnyRef, Any
Known Subclasses
Ordering
  1. Alphabetic
  2. By inheritance
Inherited
  1. PreDenotation
  2. AnyRef
  3. Any
  1. Hide All
  2. Show all
Learn more about member selection
Visibility
  1. Public
  2. All

Type Members

  1. abstract type AsSeenFromResult <: PreDenotation

Abstract Value Members

  1. abstract def computeAsSeenFrom(pre: Type)(implicit ctx: Context): AsSeenFromResult

    Attributes
    protected
  2. abstract def containsSym(sym: Symbol): Boolean

    Group contains a denotation that refers to given symbol

  3. abstract def exists: Boolean

    A denotation in the group exists

  4. abstract def filterDisjoint(denots: PreDenotation)(implicit ctx: Context): PreDenotation

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

  5. abstract def filterExcluded(excluded: FlagSet)(implicit ctx: Context): PreDenotation

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

  6. abstract def filterWithPredicate(p: (SingleDenotation) ⇒ Boolean): PreDenotation

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

  7. abstract def first: Denotation

    First/last denotation in the group

  8. abstract def last: Denotation

  9. abstract def mapInherited(ownDenots: PreDenotation, prevDenots: PreDenotation, pre: Type)(implicit ctx: Context): PreDenotation

    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.
  10. abstract def matches(other: SingleDenotation)(implicit ctx: Context): Boolean

    Group contains a denotation with given signature

  11. abstract def toDenot(pre: Type)(implicit ctx: Context): Denotation

    Convert to full denotation by &-ing all elements

Concrete Value Members

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

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

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

    Definition Classes
    AnyRef → Any
  4. final def asInstanceOf[T0]: T0

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

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

  6. def clone(): AnyRef

    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  7. final def eq(arg0: AnyRef): Boolean

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

    Definition Classes
    AnyRef → Any
  9. def finalize(): Unit

    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( classOf[java.lang.Throwable] )
  10. final def getClass(): Class[_]

    Definition Classes
    AnyRef → Any
  11. def hashCode(): Int

    Definition Classes
    AnyRef → Any
  12. final def isInstanceOf[T0]: Boolean

    Definition Classes
    Any
  13. final def ne(arg0: AnyRef): Boolean

    Definition Classes
    AnyRef
  14. final def notify(): Unit

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

    Definition Classes
    AnyRef
  16. final def synchronized[T0](arg0: ⇒ T0): T0

    Definition Classes
    AnyRef
  17. def toString(): String

    Definition Classes
    AnyRef → Any
  18. def union(that: PreDenotation): PreDenotation

    The union of two groups.

  19. final def wait(): Unit

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

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

    Definition Classes
    AnyRef
    Annotations
    @throws( ... )

Inherited from AnyRef

Inherited from Any

Ungrouped