|
|||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||
java.lang.Objectorg.aspectj.org.eclipse.jdt.internal.compiler.lookup.Binding
org.aspectj.org.eclipse.jdt.internal.compiler.lookup.TypeBinding
org.aspectj.org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding
org.aspectj.org.eclipse.jdt.internal.compiler.lookup.TypeVariableBinding
public class TypeVariableBinding
Binding for a type parameter, held by source/binary type or method.
| Field Summary | |
|---|---|
Binding |
declaringElement
|
TypeBinding |
firstBound
Denote the first explicit (binding) bound amongst the supertypes (from declaration in source) If no superclass was specified, then it denotes the first superinterface, or null if none was specified. |
char[] |
genericTypeSignature
|
int |
rank
|
ReferenceBinding |
superclass
|
ReferenceBinding[] |
superInterfaces
|
| Fields inherited from class org.aspectj.org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding |
|---|
compoundName, fPackage, LUB_GENERIC, modifiers, sourceName |
| Fields inherited from class org.aspectj.org.eclipse.jdt.internal.compiler.lookup.TypeBinding |
|---|
BOOLEAN, BYTE, CHAR, DOUBLE, FLOAT, id, INT, LONG, NULL, SHORT, tagBits, VOID |
| Fields inherited from class org.aspectj.org.eclipse.jdt.internal.compiler.lookup.Binding |
|---|
ANY_EXCEPTION, ARRAY_TYPE, BASE_TYPE, FIELD, GENERIC_TYPE, IMPORT, LOCAL, METHOD, NO_ANNOTATIONS, NO_ELEMENT_VALUE_PAIRS, NO_EXCEPTIONS, NO_FIELDS, NO_MEMBER_TYPES, NO_METHODS, NO_PARAMETERS, NO_SUPERINTERFACES, NO_TYPE_VARIABLES, NO_TYPES, PACKAGE, PARAMETERIZED_TYPE, RAW_TYPE, TYPE, TYPE_PARAMETER, VARIABLE, WILDCARD_TYPE |
| Fields inherited from interface org.aspectj.org.eclipse.jdt.internal.compiler.env.IDependent |
|---|
JAR_FILE_ENTRY_SEPARATOR |
| Constructor Summary | |
|---|---|
TypeVariableBinding(char[] sourceName,
Binding declaringElement,
int rank)
|
|
| Method Summary | |
|---|---|
int |
boundCheck(Substitution substitution,
TypeBinding argumentType)
Returns true if the argument type satisfies all bounds of the type parameter |
boolean |
canBeInstantiated()
|
void |
collectSubstitutes(Scope scope,
TypeBinding actualType,
InferenceContext inferenceContext,
int constraint)
Collect the substitutes into a map for certain type variables inside the receiver type e.g. |
char[] |
computeUniqueKey(boolean isLeaf)
|
char[] |
constantPoolName()
Answer the receiver's constant pool name. |
java.lang.String |
debugName()
|
TypeBinding |
erasure()
|
char[] |
genericSignature()
T::Ljava/util/Map;:Ljava/io/Serializable; T:LY |
char[] |
genericTypeSignature()
T::Ljava/util/Map;:Ljava/io/Serializable; T:LY |
boolean |
isErasureBoundTo(TypeBinding type)
Returns true if the type variable is directly bound to a given type |
boolean |
isInterchangeableWith(TypeVariableBinding otherVariable,
Substitution substitute)
Returns true if the 2 variables are playing exact same role: they have the same bounds, providing one is substituted with the other: |
boolean |
isTypeVariable()
Returns true if the type was declared as a type variable |
int |
kind()
|
TypeVariableBinding |
original()
Returns the original type variable for a given variable. |
char[] |
readableName()
|
char[] |
shortReadableName()
|
ReferenceBinding |
superclass()
|
ReferenceBinding[] |
superInterfaces()
|
java.lang.String |
toString()
|
TypeBinding |
upperBound()
Upper bound doesn't perform erasure |
| Methods inherited from class org.aspectj.org.eclipse.jdt.internal.compiler.lookup.TypeBinding |
|---|
capture, dimensions, enclosingType, findSuperTypeErasingTo, findSuperTypeWithSameErasure, genericCast, isAnonymousType, isArrayType, isBaseType, isBoundParameterizedType, isCapture, isEquivalentTo, isGenericType, isHierarchyInconsistent, isIntersectingWith, isIntersectionType, isLocalType, isMemberType, isNestedType, isNumericType, isParameterizedType, isParameterizedWithOwnVariables, isProvablyDistinctFrom, isRawType, isReifiable, isTypeArgumentContainedBy, isTypeArgumentIntersecting, isUnboundWildcard, isWildcard, leafComponentType, needsUncheckedConversion, qualifiedPackageName, swapUnresolved, typeVariables, wellKnownType |
| Methods inherited from class org.aspectj.org.eclipse.jdt.internal.compiler.lookup.Binding |
|---|
computeUniqueKey, initializeDeprecatedAnnotationTagBits, isValidBinding, problemId |
| Methods inherited from class java.lang.Object |
|---|
clone, equals, finalize, getClass, notify, notifyAll, wait, wait, wait |
| Field Detail |
|---|
public Binding declaringElement
public int rank
public TypeBinding firstBound
public ReferenceBinding superclass
public ReferenceBinding[] superInterfaces
public char[] genericTypeSignature
| Constructor Detail |
|---|
public TypeVariableBinding(char[] sourceName,
Binding declaringElement,
int rank)
| Method Detail |
|---|
public int kind()
kind in class TypeBinding
public int boundCheck(Substitution substitution,
TypeBinding argumentType)
public boolean canBeInstantiated()
canBeInstantiated in class ReferenceBindingReferenceBinding.canBeInstantiated()
public void collectSubstitutes(Scope scope,
TypeBinding actualType,
InferenceContext inferenceContext,
int constraint)
collectSubstitutes in class TypeBindingpublic char[] constantPoolName()
TypeBinding
constantPoolName in class ReferenceBindingpublic char[] computeUniqueKey(boolean isLeaf)
computeUniqueKey in class ReferenceBindingpublic java.lang.String debugName()
debugName in class ReferenceBindingTypeBinding.debugName()public TypeBinding erasure()
erasure in class TypeBindingpublic char[] genericSignature()
public char[] genericTypeSignature()
genericTypeSignature in class TypeBindingpublic boolean isErasureBoundTo(TypeBinding type)
public boolean isInterchangeableWith(TypeVariableBinding otherVariable,
Substitution substitute)
public boolean isTypeVariable()
isTypeVariable in class TypeBindingpublic TypeVariableBinding original()
public char[] readableName()
readableName in class ReferenceBindingReferenceBinding.readableName()public char[] shortReadableName()
shortReadableName in class ReferenceBindingReferenceBinding.shortReadableName()public ReferenceBinding superclass()
superclass in class ReferenceBindingpublic ReferenceBinding[] superInterfaces()
superInterfaces in class ReferenceBindingpublic java.lang.String toString()
toString in class java.lang.ObjectObject.toString()public TypeBinding upperBound()
|
|||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||