public final class TypeType extends AbstractType
Modifier and Type | Field and Description |
---|---|
static java.lang.String |
NAME
Name of the type.
|
Constructor and Description |
---|
TypeType(Type type)
Creates new instance of
TypeType . |
Modifier and Type | Method and Description |
---|---|
<T,E extends java.lang.Throwable> |
accept(TypeVisitor<T,E> visitor)
Accepts type visitor.
|
boolean |
assignableTo(Type target)
Returns information whether a value of this type can be assigned to a
variable of another type.
|
boolean |
equals(java.lang.Object target) |
Type |
findCommonSubtype(Type other)
Returns the common subtype, i.e.
|
Type |
findCommonSupertype(Type other)
Returns the common supertype, i.e.
|
java.lang.Class<?> |
getJavaClass()
Returns the Java class represented by this type.
|
Type |
getSupertype()
Returns a direct supertype to this type (or null for "Object" type).
|
Type |
getType()
Returns the represented type.
|
boolean |
hasFreeTypes() |
int |
hashCode() |
boolean |
hasIntersectionType() |
boolean |
matchesSubtype(Type other,
TypeMapping mapping)
Performs type matching on this type.
|
boolean |
matchesSupertype(Type other,
TypeMapping mapping)
Performs type matching on this type.
|
TypeType |
substituteFreeTypes(FreeTypeMapping mapping)
Returns a type where free types are substituted by provided mapping.
|
java.lang.String |
toString()
Returns string representation of this type type in the form
Type<#type> . |
getFreeTypes, isCollection, performConversion
public static final java.lang.String NAME
public Type getType()
public Type getSupertype()
Type
public java.lang.Class<?> getJavaClass()
Type
public boolean assignableTo(Type target)
Type
assignableTo
in interface Type
assignableTo
in class AbstractType
target
- type of the target variablepublic boolean matchesSupertype(Type other, TypeMapping mapping)
Type
mapping
. Returns true if
this type matches supertype of other
type.matchesSupertype
in interface Type
matchesSupertype
in class AbstractType
other
typepublic boolean matchesSubtype(Type other, TypeMapping mapping)
Type
mapping
. Returns true if
this type matches subtype of other
type.matchesSubtype
in interface Type
matchesSubtype
in class AbstractType
other
typepublic Type findCommonSupertype(Type other)
Type
other
.findCommonSupertype
in interface Type
findCommonSupertype
in class AbstractType
public Type findCommonSubtype(Type other)
Type
other
.findCommonSubtype
in interface Type
findCommonSubtype
in class AbstractType
public TypeType substituteFreeTypes(FreeTypeMapping mapping)
Type
substituteFreeTypes
in interface Type
substituteFreeTypes
in class AbstractType
public <T,E extends java.lang.Throwable> T accept(TypeVisitor<T,E> visitor) throws E extends java.lang.Throwable
Type
T
- visitor return typevisitor
- visitor to visitE
E extends java.lang.Throwable
public boolean equals(java.lang.Object target)
equals
in class java.lang.Object
public int hashCode()
hashCode
in class java.lang.Object
public java.lang.String toString()
Type<#type>
.toString
in class java.lang.Object
Object.toString()
public boolean hasFreeTypes()
hasFreeTypes
in interface Type
hasFreeTypes
in class AbstractType
true
if the type contains a free typepublic boolean hasIntersectionType()
true
if the type contains an intersection typeCopyright © 2007-2020 Whitestein Technologies. All Rights Reserved.