Attributes
- Companion
- object
- Graph
-
- Supertypes
-
class GroundTypeclass Typetrait TypeOrWildcardtrait NonEmptyPrefixtrait Prefixclass TypeOrMethodicclass TermTypeclass TypeMappableclass Objecttrait Matchableclass AnyShow all
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
Inherited methods
Attributes
- Inherited from:
- Type
The type representing
The type representing
T[U1, ..., Un]
where
Value parameters
- args
-
=
U1,...,Un
- this
-
=
T
Attributes
- Inherited from:
- Type
The baseType
of this type with given class symbol.
The baseType
of this type with given class symbol.
Returns None
if this type does not have base
in any of its base types.
If the result is Some(bt)
, then bt
is of the form
TypeRef(p, base)
ifbase
is monomorphic, orAppliedType(TypeRef(p, base), args)
otherwise, whereargs.size == base.typeParams.size
.
If this
type is already of that shape, including with the correct base
, then this
is returned.
Attributes
- Inherited from:
- Type
Attributes
- Inherited from:
- TypeOrWildcard
Is this type considered as "FromJavaObject" for the purposes of subtyping?
Is this type considered as "FromJavaObject" for the purposes of subtyping?
See [Definitions.FromJavaObjectAlias] for details.
Attributes
- Inherited from:
- Type
Attributes
- Inherited from:
- Type
Attributes
- Inherited from:
- TypeOrMethodic
Attributes
- Inherited from:
- NonEmptyPrefix
Attributes
- Inherited from:
- NonEmptyPrefix
Attributes
- Inherited from:
- NonEmptyPrefix
Attributes
- Inherited from:
- TypeOrWildcard
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:
- TypeOrMethodic
Attributes
- Inherited from:
- TypeMappable
Attributes
- Inherited from:
- NonEmptyPrefix
Attributes
- Inherited from:
- NonEmptyPrefix
Attributes
- Inherited from:
- NonEmptyPrefix
Attributes
- Inherited from:
- NonEmptyPrefix
Attributes
- Inherited from:
- NonEmptyPrefix
Attributes
- Inherited from:
- NonEmptyPrefix
Attributes
- Inherited from:
- TypeMappable
Attributes
- Inherited from:
- TypeMappable
The type parameters of this type, if it is a type constructor.
The type parameters of this type, if it is a type constructor.
If this type is a type constructor, returns a non-empty list of its type parameters.
For all other types (proper types, any-kinded types, methodic types and package refs), returns Nil
.
Special case: for Nothing
, returns Nil
as well (although Nothing
is universally-kinded, so it is a type constructor for all possible type constructor signatures).
Attributes
- Inherited from:
- Type
Widens TermRef
s one level to their underlyingOrMethodic
type.
Widens TermRef
s one level to their underlyingOrMethodic
type.
- If this term type is a
TermRef
, returnsthis.underlyingOrMethodic
. - Otherwise, returns
this
.
Attributes
- Inherited from:
- TermType