TypeParamRef
Attributes
- Graph
- Supertypes
Members list
Value members
Concrete methods
Returns a string representation of the object.
Returns a string representation of the object.
The default representation is platform dependent.
Attributes
- Returns:
a string representation of the object.
- Definition Classes
- Any
The type to which this proxy forwards operations.
Inherited methods
The type representing
The basetype of this type with given class symbol.
The basetype of this type with given class symbol.
Returns NoType
if this type does not have base
in any of its base
types.
Attributes
- Inherited from:
- Type
Is this type exactly Nothing (no vars, aliases, refinements etc allowed)?
Is this type exactly Nothing (no vars, aliases, refinements etc allowed)?
Attributes
- Inherited from:
- Type
Attributes
- Inherited from:
- Type
Attributes
- Inherited from:
- Type
Attributes
- Inherited from:
- Type
Attributes
- Inherited from:
- Type
Is this type close enough to that type so that members with the two types would override each other?
Is this type close enough to that type so that members with the two types would override each other?
This means:
- Either both types are polytypes with the same number of type parameters and their result types match after renaming corresponding type parameters
- Or both types are method types with
=:=
-equivalent(*) parameter types and matching result types after renaming corresponding parameter types if the method types are dependent. - Or both types are
=:=
-equivalent - Or neither type takes term or type parameters.
(*) when matching with a Java method, we also regard Any and Object as equivalent parameter types. (TODO)
This function will always use unsafe-nulls semamtics to check the types.
This is because we are using a relaxed rule (ignoring Null
types)
to check overriding Java methods.
Attributes
- Inherited from:
- Type
Attributes
- Inherited from:
- Prefix
Attributes
- Inherited from:
- Prefix
Attributes
- Inherited from:
- Prefix
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.
None
for all other types.
Attributes
- Inherited from:
- Type
Attributes
- Inherited from:
- Prefix
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.
Attributes
- 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).
Attributes
- Inherited from:
- TypeProxy
Widen singleton types, ByNameTypes, AnnotatedTypes and RefinedTypes.