MultiPreDenotation

dotty.tools.dotc.core.Denotations$.MultiPreDenotation

Attributes

Graph
Supertypes
class Object
trait Matchable
class Any
Known subtypes

Members list

Concise view

Type members

Inherited types

Attributes

Inherited from:
PreDenotation

Value members

Abstract methods

Concrete methods

def aggregate[T](f: SingleDenotation => T, g: (T, T) => T): T

Map f over all single denotations and aggregate the results with g.

Map f over all single denotations and aggregate the results with g.

Attributes

protected def derivedUnion(denot1: PreDenotation, denot2: PreDenotation): PreDenotation

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.

Attributes

def filterWithFlags(required: FlagSet, excluded: FlagSet)(using Context): PreDenotation

Keep only those denotations in this group that have all of the flags in required, but none of the flags in excluded.

Keep only those denotations in this group that have all of the flags in required, but none of the flags in excluded.

Attributes

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

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

Attributes

First/last denotation in the group

First/last denotation in the group

Attributes

def mapInherited(owndenot: PreDenotation, prevdenot: PreDenotation, pre: Type)(using 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.

Attributes

Group contains a denotation with the same signature as other

Group contains a denotation with the same signature as other

Attributes

Inherited methods

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

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

Attributes

Inherited from:
PreDenotation
protected def computeAsSeenFrom(pre: Type)(using Context): AsSeenFromResult

Attributes

Inherited from:
PreDenotation

Group contains a denotation that refers to given symbol

Group contains a denotation that refers to given symbol

Attributes

Inherited from:
PreDenotation

A denotation in the group exists

A denotation in the group exists

Attributes

Inherited from:
PreDenotation
def toDenot(pre: Type)(using Context): Denotation

Convert to full denotation by &-ing all elements

Convert to full denotation by &-ing all elements

Attributes

Inherited from:
PreDenotation

The union of two groups.

The union of two groups.

Attributes

Inherited from:
PreDenotation