Package org.aspectj.weaver.patterns
Class ExactAnnotationFieldTypePattern
java.lang.Object
org.aspectj.weaver.patterns.PatternNode
org.aspectj.weaver.patterns.AnnotationTypePattern
org.aspectj.weaver.patterns.ExactAnnotationTypePattern
org.aspectj.weaver.patterns.ExactAnnotationFieldTypePattern
- All Implemented Interfaces:
IHasPosition,IHasSourceLocation
Represents an attempt to bind the field of an annotation within a pointcut. For example:
before(Level lev): execution(* *(..)) && @annotation(TraceAnnotation(lev))
This binding annotation type pattern will be for 'lev'.
-
Field Summary
Fields inherited from class org.aspectj.weaver.patterns.ExactAnnotationTypePattern
bindingPattern, formalName, resolvedFields inherited from class org.aspectj.weaver.patterns.AnnotationTypePattern
AND, ANY, ANY_KEY, BINDING, BINDINGFIELD, BINDINGFIELD2, ELLIPSIS, ELLIPSIS_KEY, EXACT, EXACTFIELD, NONE, NOT, OR, WILDFields inherited from class org.aspectj.weaver.patterns.PatternNode
end, sourceContext, start -
Constructor Summary
ConstructorsConstructorDescriptionExactAnnotationFieldTypePattern(ExactAnnotationTypePattern p, String formalName) ExactAnnotationFieldTypePattern(UnresolvedType annotationType, String formalName) -
Method Summary
Modifier and TypeMethodDescriptionaccept(PatternNodeVisitor visitor, Object data) booleanfastMatches(AnnotatedElement annotated) inthashCode()matches(AnnotatedElement annotated) matches(AnnotatedElement annotated, ResolvedType[] parameterAnnotations) matchesRuntimeType(AnnotatedElement annotated) parameterizeWith(Map typeVariableMap, World w) static AnnotationTypePatternread(VersionedDataInputStream s, ISourceContext context) voidresolveBindings(IScope scope, Bindings bindings, boolean allowBinding) resolve one of these funky things.toString()voidMethods inherited from class org.aspectj.weaver.patterns.ExactAnnotationTypePattern
maybeGetSimpleName, verifyIsAnnotationTypeMethods inherited from class org.aspectj.weaver.patterns.AnnotationTypePattern
isAny, isForParameterAnnotationMatch, remapAdviceFormals, setForParameterAnnotationMatchMethods inherited from class org.aspectj.weaver.patterns.PatternNode
copyLocationFrom, getEnd, getFileName, getSourceContext, getSourceLocation, getStart, readLocation, setLocation, traverse, writeLocation
-
Constructor Details
-
ExactAnnotationFieldTypePattern
-
ExactAnnotationFieldTypePattern
-
-
Method Details
-
resolveBindings
resolve one of these funky things. Need to:
(a) Check the formal is bound
(b) Check the annotation type is valid- Overrides:
resolveBindingsin classExactAnnotationTypePattern
-
write
- Overrides:
writein classExactAnnotationTypePattern- Throws:
IOException
-
read
public static AnnotationTypePattern read(VersionedDataInputStream s, ISourceContext context) throws IOException - Throws:
IOException
-
accept
- Overrides:
acceptin classExactAnnotationTypePattern
-
equals
- Overrides:
equalsin classExactAnnotationTypePattern
-
hashCode
public int hashCode()- Overrides:
hashCodein classExactAnnotationTypePattern
-
fastMatches
- Overrides:
fastMatchesin classExactAnnotationTypePattern
-
getAnnotationType
- Overrides:
getAnnotationTypein classExactAnnotationTypePattern
-
getAnnotationValues
- Overrides:
getAnnotationValuesin classExactAnnotationTypePattern
-
getResolvedAnnotationType
- Overrides:
getResolvedAnnotationTypein classExactAnnotationTypePattern
-
matches
- Overrides:
matchesin classExactAnnotationTypePattern
-
matches
- Overrides:
matchesin classExactAnnotationTypePattern
-
matchesRuntimeType
- Overrides:
matchesRuntimeTypein classExactAnnotationTypePattern
-
parameterizeWith
- Overrides:
parameterizeWithin classExactAnnotationTypePattern
-
resolve
- Overrides:
resolvein classExactAnnotationTypePattern
-
toString
- Overrides:
toStringin classExactAnnotationTypePattern
-