ThisType

final
class ThisType(val tref: TypeRef) extends PathType with SingletonType
trait PathType
trait ValueType
trait TermType
class TypeProxy
class Type
class Object
trait Matchable
class Any

Type members

Inherited types

Inherited from
Type

Value members

Concrete methods

final
def cls(using Context): ClassSymbol
override
def toString(): String
Definition Classes
Any
override
def underlying(using Context): Type
Definition Classes

Inherited methods

final
def &(that: Type)(using Context): Type
Inherited from
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

Inherited from
Type
final
def asSeenFrom(pre: Type, cls: Symbol)(using Context): Type
Inherited from
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.

Inherited from
Type
final
def dealias(using Context): Type
Inherited from
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)?

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

The member with the given name.

The member with the given name.

Inherited from
Type
@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.
Inherited from
Type
final
def select(sym: Symbol)(using Context): Type
Inherited from
Type
final
def select(name: Name): NamedType
Inherited from
PathType
def superType(using Context): Type

The closest supertype of this type.

The closest supertype of this type.

This is the same as underlying, except that

  • instead of a TypeBounds type it returns its upper bound, and
  • for applied types it returns the upper bound of the constructor re-applied to the arguments.
Inherited from
TypeProxy

Same as superType, except for two differences:

Same as superType, except for two differences:

  • opaque types are treated as transparent aliases
  • applied type are matchtype-reduced if possible

Note: the reason to reduce match type aliases here and not in superType is that superType is context-independent and cached, whereas matchtype reduction depends on context and should not be cached (at least not without the very specific cache invalidation condition for matchtypes).

Inherited from
TypeProxy
final
def widen(using Context): Type

Widen singleton types, ExprTypes, AnnotatedTypes and RefinedTypes.

Widen singleton types, ExprTypes, AnnotatedTypes and RefinedTypes.

Inherited from
Type
final

Widen from ExprType type to its result type.

Widen from ExprType type to its result type.

For all other types, return this.

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

Concrete fields