Package org.aspectj.weaver
Class ArrayReferenceType
java.lang.Object
org.aspectj.weaver.UnresolvedType
org.aspectj.weaver.ResolvedType
org.aspectj.weaver.ReferenceType
org.aspectj.weaver.ArrayReferenceType
- All Implemented Interfaces:
AnnotatedElement
,Traceable
,TypeVariableDeclaringElement
Represents a resolved array type
- Author:
- Andy Clement
-
Nested Class Summary
Nested classes/interfaces inherited from class org.aspectj.weaver.UnresolvedType
UnresolvedType.TypeKind
-
Field Summary
Fields inherited from class org.aspectj.weaver.ReferenceType
EMPTY_ARRAY
Fields inherited from class org.aspectj.weaver.ResolvedType
bits, crosscuttingMembers, EMPTY_RESOLVED_TYPE_ARRAY, interTypeMungers, MISSING, NONE, PARAMETERIZED_TYPE_IDENTIFIER, temporaryAnnotationTypes, validBoxing, world
Fields inherited from class org.aspectj.weaver.UnresolvedType
AJC_PRIVILEGED, 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, PROCEEDING_JOINPOINT, RUNTIME_EXCEPTION, SERIALIZABLE, SHORT, signature, signatureErasure, SOMETHING, SUPPRESS_AJ_WARNINGS, THROWABLE, typeKind, typeParameters, typeVariables, VOID
-
Constructor Summary
ConstructorDescriptionArrayReferenceType(String sig, String erasureSig, World world, ResolvedType componentType)
-
Method Summary
Modifier and TypeMethodDescriptionboolean
Note: Only overridden by ReferenceType subtypegetAnnotationOfType(UnresolvedType ofType)
Note: Only overridden by ReferenceType subtypeReturns a UnresolvedType object representing the component type of this array, or null if this type does not represent an array type.Find out from the generic signature the true signature of any interfaces I implement.int
boolean
hasAnnotation(UnresolvedType ofType)
boolean
Note: Only overridden by Name subtype.boolean
boolean
Note: Only overridden by Name subtype.boolean
boolean
isAspect()
boolean
Determines if the variables of this type could be assigned values of another type without casting.boolean
isAssignableFrom(ResolvedType o, boolean allowMissing)
boolean
isClass()
boolean
Determines if values of another type could possibly be cast to this type.boolean
isEnum()
Note: Only overridden by Name subtype.boolean
boolean
boolean
boolean
isNested()
boolean
boolean
boolean
boolean
boolean
boolean
Methods inherited from class org.aspectj.weaver.ReferenceType
addAnnotation, addParent, checkDuplicates, demoteToSimpleType, doesNotExposeShadowMungers, ensureConsistent, findDerivativeType, fromTypeX, getCompilerVersion, getDeclaredGenericSignature, getDeclares, getDelegate, getEndPos, getGenericSignature, getGenericType, getNameAsIdentifier, getOuterClass, getPerClause, getPrivilegedAccesses, getRetentionPolicy, getSignatureForAttribute, getSourceLocation, getStartPos, getTypeMungers, getWeaverState, hasAnnotations, hasNewInterfaces, setDelegate, setEndPos, setGenericType, setStartPos
Methods inherited from class org.aspectj.weaver.ResolvedType
addInterTypeMunger, ajMembersNeedParameterization, canBeSeenBy, checkInterTypeMungers, checkLegalOverride, clearInterTypeMungers, collectCrosscuttingMembers, collectDeclares, collectInterTypeMungers, conflictingSignature, conflictingSignature, discoverActualOccurrenceOfTypeInHierarchy, equals, 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, getResolvedTypeParameters, getSize, getTopmostImplementor, getWorld, isAbstract, isCacheable, isCheckedException, isConvertableFrom, isException, isFinal, isGroovyObject, isInheritedAnnotation, isInterface, isMissing, isMissing, isMoreVisible, isParameterizedWithTypeVariable, isPrivilegedAspect, isSynthetic, isTopmostImplementor, isTypeHierarchyComplete, isVisible, lookupDirectlyDeclaredMemberNoSupers, lookupField, lookupMemberIncludingITDsOnInterfaces, lookupMemberNoSupers, lookupMemberWithSupersAndITDs, lookupMethod, lookupMethodInITDs, lookupResolvedMember, lookupSyntheticMember, makeArray, matches, needsNoConversionFrom, parameterize, parameterizedWith, setBinaryPath, tagAsTypeHierarchyComplete
Methods inherited from class org.aspectj.weaver.UnresolvedType
add, forGenericType, forGenericTypeSignature, forGenericTypeVariables, forName, forNames, forPrimitiveType, forRawTypeName, forSignature, forSignatures, getBaseName, getClassName, getErasureSignature, getName, getNames, getOutermostType, getPackageName, getPackageNameAsIdentifier, getRawName, getSignature, getSimpleBaseName, getSimpleName, getTypekind, getTypeParameters, getTypeVariableNamed, hashCode, insert, isArray, isParameterizedOrGenericType, isParameterizedOrRawType, isVoid, makeArray, needsModifiableDelegate, read, readArray, resolve, setNeedsModifiableDelegate, toDebugString, toString, toTraceString, write, writeArray
-
Constructor Details
-
ArrayReferenceType
-
-
Method Details
-
getDeclaredFields
- Overrides:
getDeclaredFields
in classReferenceType
-
getDeclaredMethods
- Overrides:
getDeclaredMethods
in classReferenceType
-
getDeclaredInterfaces
Description copied from class:ReferenceType
Find out from the generic signature the true signature of any interfaces I implement. If I am parameterized, these may then need to be parameterized before returning.- Overrides:
getDeclaredInterfaces
in classReferenceType
-
getAnnotationOfType
- Specified by:
getAnnotationOfType
in interfaceAnnotatedElement
- Overrides:
getAnnotationOfType
in classReferenceType
-
getAnnotations
- Overrides:
getAnnotations
in classReferenceType
-
getAnnotationTypes
- Specified by:
getAnnotationTypes
in interfaceAnnotatedElement
- Overrides:
getAnnotationTypes
in classReferenceType
-
getDeclaredPointcuts
- Overrides:
getDeclaredPointcuts
in classReferenceType
-
hasAnnotation
- Specified by:
hasAnnotation
in interfaceAnnotatedElement
- Overrides:
hasAnnotation
in classReferenceType
-
getSuperclass
- Overrides:
getSuperclass
in classReferenceType
- Returns:
- the superclass of this type, or null (if this represents a jlObject, primitive, or void)
-
isAssignableFrom
Description copied from class:ResolvedType
Determines if the variables of this type could be assigned values of another type without casting. This still allows for assignment conversion as per JLS 2ed 5.2. For object types, this means supertypeOrEqual(THIS, OTHER).- Overrides:
isAssignableFrom
in classReferenceType
- Parameters:
o
- the other type- Returns:
- true iff variables of this type could be assigned values of other without casting
-
isAssignableFrom
- Overrides:
isAssignableFrom
in classReferenceType
-
isCoerceableFrom
Description copied from class:ResolvedType
Determines if values of another type could possibly be cast to this type. The rules followed are from JLS 2ed 5.5, "Casting Conversion".This method should be commutative, i.e., for all UnresolvedType a, b and all World w:
a.isCoerceableFrom(b, w) == b.isCoerceableFrom(a, w)
- Overrides:
isCoerceableFrom
in classReferenceType
- Parameters:
o
- the other type- Returns:
- true iff values of other could possibly be cast to this type.
-
getModifiers
public final int getModifiers()- Overrides:
getModifiers
in classReferenceType
-
getComponentType
Description copied from class:UnresolvedType
Returns a UnresolvedType object representing the component type of this array, or null if this type does not represent an array type.- Overrides:
getComponentType
in classUnresolvedType
- Returns:
- the component UnresolvedType object, or null.
-
getResolvedComponentType
- Overrides:
getResolvedComponentType
in classResolvedType
-
getSourceContext
- Overrides:
getSourceContext
in classReferenceType
-
getTypeVariables
- Overrides:
getTypeVariables
in classReferenceType
-
isAnnotation
public boolean isAnnotation()Description copied from class:ResolvedType
Note: Only overridden by Name subtype.- Overrides:
isAnnotation
in classReferenceType
-
isAnonymous
public boolean isAnonymous()- Overrides:
isAnonymous
in classReferenceType
-
isAnnotationStyleAspect
public boolean isAnnotationStyleAspect()- Overrides:
isAnnotationStyleAspect
in classReferenceType
-
isAspect
public boolean isAspect()- Overrides:
isAspect
in classReferenceType
-
isPrimitiveType
public boolean isPrimitiveType()- Overrides:
isPrimitiveType
in classUnresolvedType
-
isSimpleType
public boolean isSimpleType()- Overrides:
isSimpleType
in classUnresolvedType
-
isRawType
public boolean isRawType()- Overrides:
isRawType
in classUnresolvedType
-
isGenericType
public boolean isGenericType()- Overrides:
isGenericType
in classReferenceType
-
isParameterizedType
public boolean isParameterizedType()- Overrides:
isParameterizedType
in classUnresolvedType
-
isTypeVariableReference
public boolean isTypeVariableReference()- Overrides:
isTypeVariableReference
in classUnresolvedType
-
isGenericWildcard
public boolean isGenericWildcard()- Overrides:
isGenericWildcard
in classUnresolvedType
-
isEnum
public boolean isEnum()Description copied from class:ResolvedType
Note: Only overridden by Name subtype.- Overrides:
isEnum
in classReferenceType
-
isNested
public boolean isNested()- Overrides:
isNested
in classReferenceType
-
isClass
public boolean isClass()- Overrides:
isClass
in classReferenceType
-
isExposedToWeaver
public boolean isExposedToWeaver()- Overrides:
isExposedToWeaver
in classReferenceType
-
canAnnotationTargetType
public boolean canAnnotationTargetType()Description copied from class:ResolvedType
Note: Only overridden by ReferenceType subtype- Overrides:
canAnnotationTargetType
in classReferenceType
-
getAnnotationTargetKinds
Description copied from class:ResolvedType
Note: Only overridden by ReferenceType subtype- Overrides:
getAnnotationTargetKinds
in classReferenceType
-
isAnnotationWithRuntimeRetention
public boolean isAnnotationWithRuntimeRetention()Description copied from class:ResolvedType
Note: Only overridden by Name subtype.- Overrides:
isAnnotationWithRuntimeRetention
in classReferenceType
-
isPrimitiveArray
public boolean isPrimitiveArray()- Overrides:
isPrimitiveArray
in classResolvedType
-