Package org.aspectj.weaver.patterns
Class BindingAnnotationFieldTypePattern
java.lang.Object
org.aspectj.weaver.patterns.PatternNode
org.aspectj.weaver.patterns.AnnotationTypePattern
org.aspectj.weaver.patterns.ExactAnnotationTypePattern
org.aspectj.weaver.patterns.BindingAnnotationFieldTypePattern
- All Implemented Interfaces:
IHasPosition,IHasSourceLocation,BindingPattern
public class BindingAnnotationFieldTypePattern
extends ExactAnnotationTypePattern
implements BindingPattern
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
FieldsFields inherited from class org.aspectj.weaver.patterns.ExactAnnotationTypePattern
annotationType, 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
ConstructorsConstructorDescriptionBindingAnnotationFieldTypePattern(UnresolvedType formalType, int formalIndex, UnresolvedType theAnnotationType) -
Method Summary
Modifier and TypeMethodDescriptionbooleanintinthashCode()matches(AnnotatedElement annotated, ResolvedType[] parameterAnnotations) parameterizeWith(Map typeVariableMap, World w) static AnnotationTypePatternread(VersionedDataInputStream s, ISourceContext context) static AnnotationTypePatternread2(VersionedDataInputStream s, ISourceContext context) remapAdviceFormals(IntMap bindings) voidresolveBinding(World world) voidMethods inherited from class org.aspectj.weaver.patterns.ExactAnnotationTypePattern
accept, fastMatches, getAnnotationType, getAnnotationValues, getResolvedAnnotationType, matches, matchesRuntimeType, maybeGetSimpleName, resolve, resolveBindings, toString, verifyIsAnnotationTypeMethods inherited from class org.aspectj.weaver.patterns.AnnotationTypePattern
isAny, isForParameterAnnotationMatch, setForParameterAnnotationMatchMethods inherited from class org.aspectj.weaver.patterns.PatternNode
copyLocationFrom, getEnd, getFileName, getSourceContext, getSourceLocation, getStart, readLocation, setLocation, traverse, writeLocationMethods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, waitMethods inherited from interface org.aspectj.weaver.IHasPosition
getEnd, getStart
-
Field Details
-
formalIndex
protected int formalIndex
-
-
Constructor Details
-
BindingAnnotationFieldTypePattern
public BindingAnnotationFieldTypePattern(UnresolvedType formalType, int formalIndex, UnresolvedType theAnnotationType)
-
-
Method Details
-
resolveBinding
-
parameterizeWith
- Overrides:
parameterizeWithin classExactAnnotationTypePattern
-
getFormalIndex
public int getFormalIndex()- Specified by:
getFormalIndexin interfaceBindingPattern
-
equals
- Overrides:
equalsin classExactAnnotationTypePattern
-
hashCode
public int hashCode()- Overrides:
hashCodein classExactAnnotationTypePattern
-
remapAdviceFormals
- Overrides:
remapAdviceFormalsin classAnnotationTypePattern
-
write
- Overrides:
writein classExactAnnotationTypePattern- Throws:
IOException
-
read
public static AnnotationTypePattern read(VersionedDataInputStream s, ISourceContext context) throws IOException - Throws:
IOException
-
read2
public static AnnotationTypePattern read2(VersionedDataInputStream s, ISourceContext context) throws IOException - Throws:
IOException
-
matches
- Overrides:
matchesin classExactAnnotationTypePattern
-
getFormalType
-