public class TypeVariableReferenceType extends ReferenceType implements TypeVariableReference
UnresolvedType.TypeKind
EMPTY_ARRAY
crosscuttingMembers, EMPTY_RESOLVED_TYPE_ARRAY, interTypeMungers, MISSING, NONE, PARAMETERIZED_TYPE_IDENTIFIER, temporaryAnnotationTypes, validBoxing, world
ANNOTATION, ARRAY_WITH_JUST_OBJECT, AT_INHERITED, AT_RETENTION, AT_TARGET, BOOLEAN, BYTE, CHAR, CLONEABLE, DOUBLE, ENUM, ERROR, FLOAT, INT, JAVA_LANG_ANNOTATION, JAVA_LANG_CLASS_ARRAY, JAVA_LANG_REFLECT_CONSTRUCTOR, JAVA_LANG_REFLECT_FIELD, JAVA_LANG_REFLECT_METHOD, JL_CLASS, JL_EXCEPTION, JL_STRING, JOINPOINT_ENCLOSINGSTATICPART, JOINPOINT_STATICPART, LONG, MISSING_NAME, OBJECT, OBJECTARRAY, RUNTIME_EXCEPTION, SERIALIZABLE, SHORT, signature, signatureErasure, SOMETHING, SUPPRESS_AJ_WARNINGS, THROWABLE, typeKind, typeParameters, typeVariables, VOID
Constructor and Description |
---|
TypeVariableReferenceType(TypeVariable typeVariable,
World world) |
Modifier and Type | Method and Description |
---|---|
boolean |
equals(java.lang.Object other)
Equality is checked based on the underlying signature.
|
ReferenceTypeDelegate |
getDelegate()
For a TypeVariableReferenceType the delegate is the delegate for the first bound.
|
java.lang.String |
getSignature()
return the signature for a *REFERENCE* to a type variable, which is simply: Tname; there is no bounds info included, that is
in the signature of the type variable itself
|
TypeVariable |
getTypeVariable() |
java.lang.String |
getTypeVariableName() |
ReferenceType |
getUpperBound() |
int |
hashCode()
Equality is checked based on the underlying signature, so the hash code of a particular type is the hash code of its
signature string.
|
boolean |
isAnnotation()
Note: Only overridden by Name subtype.
|
boolean |
isGenericWildcard() |
boolean |
isTypeVariableReference() |
boolean |
isTypeVariableResolved() |
UnresolvedType |
parameterize(java.util.Map<java.lang.String,UnresolvedType> typeBindings)
Iff I am a parameterized type, and any of my parameters are type variable references (or nested parameterized types),
return a version with those type parameters replaced in accordance with the passed bindings.
|
ResolvedType |
resolve(World world)
resolve the type variable we are managing and then return this object.
|
java.lang.String |
toString()
Returns a java language string representation of this type.
|
addAnnotation, addParent, canAnnotationTargetType, checkDuplicates, demoteToSimpleType, doesNotExposeShadowMungers, ensureConsistent, findDerivativeType, fromTypeX, getAnnotationOfType, getAnnotations, getAnnotationTargetKinds, getAnnotationTypes, getCompilerVersion, getDeclaredFields, getDeclaredGenericSignature, getDeclaredInterfaces, getDeclaredMethods, getDeclaredPointcuts, getDeclares, getEndPos, getGenericSignature, getGenericType, getModifiers, getNameAsIdentifier, getOuterClass, getPerClause, getPrivilegedAccesses, getRetentionPolicy, getSignatureForAttribute, getSourceContext, getSourceLocation, getStartPos, getSuperclass, getTypeMungers, getTypeVariables, getWeaverState, hasAnnotation, hasAnnotations, hasNewInterfaces, isAnnotationStyleAspect, isAnnotationWithRuntimeRetention, isAnonymous, isAspect, isAssignableFrom, isAssignableFrom, isClass, isCoerceableFrom, isEnum, isExposedToWeaver, isGenericType, isNested, setDelegate, setEndPos, setGenericType, setStartPos
addInterTypeMunger, ajMembersNeedParameterization, checkInterTypeMungers, checkLegalOverride, clearInterTypeMungers, collectCrosscuttingMembers, collectDeclares, collectInterTypeMungers, conflictingSignature, conflictingSignature, discoverActualOccurrenceOfTypeInHierarchy, fillInAnyTypeParameters, findPointcut, getAjMemberParameterizationMap, getBinaryPath, getDeclaredAdvice, getDeclaredJavaFields, getDeclaredJavaMethods, getDeclaredShadowMungers, getDeclaringType, getDirectSupertypes, getExposedPointcuts, getFields, getHierarchy, getHierarchy, getHierarchyWithoutIterator, getInterTypeMungers, getInterTypeMungersIncludingSupers, getInterTypeParentMungers, getInterTypeParentMungersIncludingSupers, getMemberParameterizationMap, getMethods, getMethodsIncludingIntertypeDeclarations, getMethodsWithoutIterator, getPointcuts, getRawType, getResolvedComponentType, getResolvedTypeParameters, getSize, getTopmostImplementor, getWorld, isAbstract, isCacheable, isCheckedException, isConvertableFrom, isException, isFinal, isGroovyObject, isInheritedAnnotation, isInterface, isMissing, isMissing, isMoreVisible, isParameterizedWithTypeVariable, isPrimitiveArray, isSynthetic, isTopmostImplementor, isTypeHierarchyComplete, isVisible, lookupDirectlyDeclaredMemberNoSupers, lookupField, lookupMemberIncludingITDsOnInterfaces, lookupMemberNoSupers, lookupMemberWithSupersAndITDs, lookupMethod, lookupMethodInITDs, lookupResolvedMember, lookupSyntheticMember, makeArray, matches, needsNoConversionFrom, parameterizedWith, setBinaryPath, tagAsTypeHierarchyComplete
add, forGenericType, forGenericTypeSignature, forGenericTypeVariables, forName, forNames, forPrimitiveType, forRawTypeName, forSignature, forSignatures, getBaseName, getClassName, getComponentType, getErasureSignature, getName, getNames, getOutermostType, getPackageName, getPackageNameAsIdentifier, getRawName, getSimpleBaseName, getSimpleName, getTypekind, getTypeParameters, getTypeVariableNamed, insert, isArray, isParameterizedOrGenericType, isParameterizedOrRawType, isParameterizedType, isPrimitiveType, isRawType, isSimpleType, isVoid, makeArray, needsModifiableDelegate, read, readArray, setNeedsModifiableDelegate, toDebugString, toTraceString, write, writeArray
public TypeVariableReferenceType(TypeVariable typeVariable, World world)
public boolean equals(java.lang.Object other)
UnresolvedType
equals
in class ResolvedType
public int hashCode()
UnresolvedType
hashCode
in class UnresolvedType
public ReferenceTypeDelegate getDelegate()
getDelegate
in class ReferenceType
public UnresolvedType parameterize(java.util.Map<java.lang.String,UnresolvedType> typeBindings)
ResolvedType
parameterize
in class ResolvedType
public TypeVariable getTypeVariable()
getTypeVariable
in interface TypeVariableReference
public boolean isTypeVariableReference()
isTypeVariableReference
in class UnresolvedType
public java.lang.String toString()
UnresolvedType
toString
in class UnresolvedType
public boolean isGenericWildcard()
isGenericWildcard
in class UnresolvedType
public boolean isAnnotation()
ResolvedType
isAnnotation
in class ReferenceType
public java.lang.String getSignature()
getSignature
in class UnresolvedType
public java.lang.String getTypeVariableName()
public ReferenceType getUpperBound()
public ResolvedType resolve(World world)
resolve
in class UnresolvedType
world
- the World
within which to resolve.public boolean isTypeVariableResolved()