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
Fields inherited from class org.aspectj.weaver.patterns.ExactAnnotationTypePattern
annotationType, bindingPattern, formalName, resolved
Fields inherited from class org.aspectj.weaver.patterns.AnnotationTypePattern
AND, ANY, ANY_KEY, BINDING, BINDINGFIELD, BINDINGFIELD2, ELLIPSIS, ELLIPSIS_KEY, EXACT, EXACTFIELD, NONE, NOT, OR, WILD
Fields inherited from class org.aspectj.weaver.patterns.PatternNode
end, sourceContext, start
-
Constructor Summary
ConstructorDescriptionBindingAnnotationFieldTypePattern
(UnresolvedType formalType, int formalIndex, UnresolvedType theAnnotationType) -
Method Summary
Modifier and TypeMethodDescriptionboolean
int
int
hashCode()
matches
(AnnotatedElement annotated, ResolvedType[] parameterAnnotations) parameterizeWith
(Map typeVariableMap, World w) static AnnotationTypePattern
read
(VersionedDataInputStream s, ISourceContext context) static AnnotationTypePattern
read2
(VersionedDataInputStream s, ISourceContext context) remapAdviceFormals
(IntMap bindings) void
resolveBinding
(World world) void
Methods inherited from class org.aspectj.weaver.patterns.ExactAnnotationTypePattern
accept, fastMatches, getAnnotationType, getAnnotationValues, getResolvedAnnotationType, matches, matchesRuntimeType, maybeGetSimpleName, resolve, resolveBindings, toString, verifyIsAnnotationType
Methods inherited from class org.aspectj.weaver.patterns.AnnotationTypePattern
isAny, isForParameterAnnotationMatch, setForParameterAnnotationMatch
Methods inherited from class org.aspectj.weaver.patterns.PatternNode
copyLocationFrom, getEnd, getFileName, getSourceContext, getSourceLocation, getStart, readLocation, setLocation, traverse, writeLocation
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
Methods 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:
parameterizeWith
in classExactAnnotationTypePattern
-
getFormalIndex
public int getFormalIndex()- Specified by:
getFormalIndex
in interfaceBindingPattern
-
equals
- Overrides:
equals
in classExactAnnotationTypePattern
-
hashCode
public int hashCode()- Overrides:
hashCode
in classExactAnnotationTypePattern
-
remapAdviceFormals
- Overrides:
remapAdviceFormals
in classAnnotationTypePattern
-
write
- Overrides:
write
in 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:
matches
in classExactAnnotationTypePattern
-
getFormalType
-