Type

abstract
class Type extends TypeMappable
class Object
trait Matchable
class Any

Type members

Value members

Concrete methods

final
def &(that: Type)(using Context): Type
final
def appliedTo(args: List[Type])(using Context): Type

The type representing

The type representing

T[U1, ..., Un]

where

Value Params
args

= U1,...,Un

this

= T

final
def asSeenFrom(pre: Type, cls: Symbol)(using Context): Type
final
def baseType(base: Symbol)(using Context): Type

The basetype of this type with given class symbol, NoType if base is not a class.

The basetype of this type with given class symbol, NoType if base is not a class.

final
def dealias(using Context): Type
final
def isExactlyNothing(using Context): Boolean

Is this type exactly Nothing (no vars, aliases, refinements etc allowed)?

Is this type exactly Nothing (no vars, aliases, refinements etc allowed)?

final
def isOfClass(sym: Symbol)(using Context): Boolean
final
def isRef(sym: Symbol)(using Context): Boolean
final
def member(name: Name)(using Context): Symbol

The member with the given name.

The member with the given name.

@tailrec
final

The normalized prefix of this type is:

The normalized prefix of this type is:

  • For a type alias, the normalized prefix of its alias.
  • For all other named type and class infos: the prefix.
  • Inherited by all other type proxies.
  • NoType for all other types.
final
def select(sym: Symbol)(using Context): Type
final
def widen(using Context): Type

Widen singleton types, ExprTypes, AnnotatedTypes and RefinedTypes.

Widen singleton types, ExprTypes, AnnotatedTypes and RefinedTypes.

final

Widen from ExprType type to its result type.

Widen from ExprType type to its result type.

For all other types, return this.

final
def |(that: Type)(using Context): Type