org.aspectj.weaver
Class TypeVariableReferenceType
java.lang.Object
org.aspectj.weaver.UnresolvedType
org.aspectj.weaver.ResolvedType
org.aspectj.weaver.ReferenceType
org.aspectj.weaver.TypeVariableReferenceType
- All Implemented Interfaces:
- AnnotatedElement, Traceable, TypeVariableDeclaringElement, TypeVariableReference
public class TypeVariableReferenceType
- extends ReferenceType
- implements TypeVariableReference
ReferenceType representing a type variable. The delegate for this reference type is the upperbound on the type variable (so
Object if not otherwise specified).
- Author:
- Adrian Colyer, Andy Clement
Fields inherited from class org.aspectj.weaver.ResolvedType |
BOOLEAN, BYTE, CHAR, crosscuttingMembers, DOUBLE, EMPTY_RESOLVED_TYPE_ARRAY, FLOAT, INT, LONG, MISSING, NONE, PARAMETERIZED_TYPE_IDENTIFIER, SHORT, temporaryAnnotationTypes, VOID |
Fields inherited from class org.aspectj.weaver.UnresolvedType |
ANNOTATION, ARRAY_WITH_JUST_OBJECT, AT_INHERITED, AT_RETENTION, AT_TARGET, CLONEABLE, ENUM, ERROR, 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, MISSING_NAME, OBJECT, OBJECTARRAY, RUNTIME_EXCEPTION, SERIALIZABLE, SOMETHING, SUPPRESS_AJ_WARNINGS, THROWABLE |
Methods inherited from class org.aspectj.weaver.ReferenceType |
addAnnotation, addParent, canAnnotationTargetType, demoteToSimpleType, doesNotExposeShadowMungers, ensureConsistent, 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, isAnnotationStyleAspect, isAnnotationWithRuntimeRetention, isAnonymous, isAspect, isAssignableFrom, isAssignableFrom, isClass, isCoerceableFrom, isEnum, isExposedToWeaver, isGenericType, isNested, setDelegate, setEndPos, setGenericType, setStartPos |
Methods inherited from class org.aspectj.weaver.ResolvedType |
addInterTypeMunger, checkInterTypeMungers, checkLegalOverride, clearInterTypeMungers, collectCrosscuttingMembers, collectDeclares, conflictingSignature, discoverActualOccurrenceOfTypeInHierarchy, equals, fillInAnyTypeParameters, findPointcut, getBinaryPath, getDeclaredAdvice, getDeclaredJavaFields, getDeclaredJavaMethods, getDeclaredShadowMungers, getDeclaringType, getDirectSupertypes, getExposedPointcuts, getFields, getHierarchy, getHierarchy, getHierarchyWithoutIterator, getInterTypeMungers, getInterTypeMungersIncludingSupers, getInterTypeParentMungers, getInterTypeParentMungersIncludingSupers, getMethods, getMethodsIncludingIntertypeDeclarations, getMethodsWithoutIterator, getPointcuts, getRawType, getResolvedComponentType, getResolvedTypeParameters, getTopmostImplementor, getWorld, isAbstract, isCacheable, isCheckedException, isConvertableFrom, isException, isFinal, isInheritedAnnotation, isInterface, isMissing, isMissing, isMoreVisible, isParameterizedWithTypeVariable, isSynthetic, isTopmostImplementor, isTypeHierarchyComplete, isVisible, lookupDirectlyDeclaredMemberNoSupers, lookupField, lookupMemberIncludingITDsOnInterfaces, lookupMemberNoSupers, lookupMemberWithSupersAndITDs, lookupMethod, lookupMethodInITDs, lookupResolvedMember, lookupSyntheticMember, makeArray, matches, needsNoConversionFrom, parameterizedWith, resetPrimitives, setBinaryPath, tagAsTypeHierarchyComplete |
Methods inherited from class org.aspectj.weaver.UnresolvedType |
add, forGenericType, forGenericTypeSignature, forGenericTypeVariables, forName, forNames, forRawTypeName, forSignature, forSignatures, getBaseName, getClassName, getComponentType, getErasureSignature, getName, getNames, getOutermostType, getPackageName, getPackageNameAsIdentifier, getRawName, getSimpleBaseName, getSimpleName, getSize, getTypekind, getTypeParameters, getTypeVariableNamed, hashCode, insert, isArray, isParameterizedOrGenericType, isParameterizedOrRawType, isParameterizedType, isPrimitiveType, isRawType, isSimpleType, isVoid, makeArray, needsModifiableDelegate, read, readArray, resolve, setNeedsModifiableDelegate, toDebugString, toTraceString, write, writeArray |
Methods inherited from class java.lang.Object |
getClass, notify, notifyAll, wait, wait, wait |
TypeVariableReferenceType
public TypeVariableReferenceType(TypeVariable typeVariable,
World world)
getDelegate
public ReferenceTypeDelegate getDelegate()
- For a TypeVariableReferenceType the delegate is the delegate for the first bound.
- Overrides:
getDelegate
in class ReferenceType
parameterize
public UnresolvedType parameterize(java.util.Map<java.lang.String,UnresolvedType> typeBindings)
- Description copied from class:
ResolvedType
- Iff I am a parameterized type, and any of my parameters are type variable references, return a version with those type
parameters replaced in accordance with the passed bindings.
- Overrides:
parameterize
in class ResolvedType
getTypeVariable
public TypeVariable getTypeVariable()
- Specified by:
getTypeVariable
in interface TypeVariableReference
isTypeVariableReference
public boolean isTypeVariableReference()
- Overrides:
isTypeVariableReference
in class UnresolvedType
toString
public java.lang.String toString()
- Description copied from class:
UnresolvedType
- Returns a java language string representation of this type.
- Overrides:
toString
in class UnresolvedType
isGenericWildcard
public boolean isGenericWildcard()
- Overrides:
isGenericWildcard
in class UnresolvedType
isAnnotation
public boolean isAnnotation()
- Description copied from class:
ResolvedType
- Note: Only overridden by Name subtype.
- Overrides:
isAnnotation
in class ReferenceType
getSignature
public 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
- Overrides:
getSignature
in class UnresolvedType
- Returns:
- the java JVM signature string for this type.
getTypeVariableName
public java.lang.String getTypeVariableName()
- Returns:
- the name of the type variable
getUpperBound
public ReferenceType getUpperBound()