Package org.aspectj.weaver.patterns
Class AnnotationPointcut
java.lang.Object
org.aspectj.weaver.patterns.PatternNode
org.aspectj.weaver.patterns.Pointcut
org.aspectj.weaver.patterns.NameBindingPointcut
org.aspectj.weaver.patterns.AnnotationPointcut
- All Implemented Interfaces:
IHasPosition
,IHasSourceLocation
(at)Annotation((at)Foo) or (at)Annotation(foo)
Matches any join point where the subject of the join point has an annotation matching the annotationTypePattern:
Join Point Kind - Subject
================================
method call - the target method
method execution - the method
constructor call - the constructor
constructor execution - the constructor
get - the target field
set - the target field
adviceexecution - the advice
initialization - the constructor
preinitialization - the constructor
staticinitialization - the type being initialized
handler - the declared type of the handled exception
-
Nested Class Summary
Nested classes/interfaces inherited from class org.aspectj.weaver.patterns.Pointcut
Pointcut.State
-
Field Summary
Fields inherited from class org.aspectj.weaver.patterns.Pointcut
AND, ANNOTATION, ARGS, ATARGS, ATTHIS_OR_TARGET, ATWITHIN, ATWITHINCODE, CFLOW, CONCRETE, EMPTY_STRING_ARRAY, HANDLER, hasBeenParameterized, IF, IF_FALSE, IF_TRUE, KINDED, lastMatchedShadowId, m_ignoreUnboundBindingForNames, NONE, NOT, OR, pointcutKind, REFERENCE, RESOLVED, state, SYMBOLIC, THIS_OR_TARGET, USER_EXTENSION, WITHIN, WITHINCODE
Fields inherited from class org.aspectj.weaver.patterns.PatternNode
end, sourceContext, start
-
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescriptionaccept
(PatternNodeVisitor visitor, Object data) void
protected Pointcut
concretize1
(ResolvedType inAspect, ResolvedType declaringType, IntMap bindings) Resolves and removes ReferencePointcuts, replacing with basic onesint
The set of ShadowKinds that this Pointcut could possibly match - an int whose bits are set according to the Kinds specified in Shadow.javaboolean
fastMatch
(FastMatchInfo info) Could I match any shadows in the code defined within this type?protected Test
findResidueInternal
(Shadow shadow, ExposedState state) int
hashCode()
protected FuzzyBoolean
matchInternal
(Shadow shadow) parameterizeWith
(Map<String, UnresolvedType> typeVariableMap, World w) static Pointcut
read
(VersionedDataInputStream s, ISourceContext context) protected void
resolveBindings
(IScope scope, Bindings bindings) toString()
traverse
(PatternNodeVisitor visitor, Object data) void
Methods inherited from class org.aspectj.weaver.patterns.NameBindingPointcut
exposeStateForVar
Methods inherited from class org.aspectj.weaver.patterns.Pointcut
assertState, check, concretize, concretize, concretize, findResidue, fromString, getPointcutKind, getTypeVariablesInScope, isDeclare, makeMatchesNothing, match, postRead, resolve, setTypeVariablesInScope, shouldCopyLocationForConcretize
Methods inherited from class org.aspectj.weaver.patterns.PatternNode
copyLocationFrom, getEnd, getFileName, getSourceContext, getSourceLocation, getStart, readLocation, setLocation, writeLocation
-
Constructor Details
-
AnnotationPointcut
-
AnnotationPointcut
-
-
Method Details
-
getAnnotationTypePattern
-
couldMatchKinds
public int couldMatchKinds()Description copied from class:Pointcut
The set of ShadowKinds that this Pointcut could possibly match - an int whose bits are set according to the Kinds specified in Shadow.java- Specified by:
couldMatchKinds
in classPointcut
-
parameterizeWith
- Specified by:
parameterizeWith
in classPointcut
-
fastMatch
Description copied from class:Pointcut
Could I match any shadows in the code defined within this type? -
matchInternal
- Specified by:
matchInternal
in classPointcut
-
resolveBindings
- Specified by:
resolveBindings
in classPointcut
-
concretize1
Description copied from class:Pointcut
Resolves and removes ReferencePointcuts, replacing with basic ones- Specified by:
concretize1
in classPointcut
- Parameters:
inAspect
- the aspect to resolve relative tobindings
- a Map from formal index in the current lexical context → formal index in the concrete advice that will run This must always return a new Pointcut object (even if the concretized Pointcut is identical to the resolved one). That behavior is assumed in many places. XXX fix implementors to handle state
-
findResidueInternal
- Specified by:
findResidueInternal
in classPointcut
-
getBindingAnnotationTypePatterns
- Specified by:
getBindingAnnotationTypePatterns
in classNameBindingPointcut
-
getBindingTypePatterns
- Specified by:
getBindingTypePatterns
in classNameBindingPointcut
-
write
- Specified by:
write
in classPatternNode
- Throws:
IOException
-
read
- Throws:
IOException
-
equals
-
hashCode
public int hashCode() -
buildDeclarationText
public void buildDeclarationText() -
toString
-
accept
- Specified by:
accept
in classPatternNode
-
traverse
- Overrides:
traverse
in classPatternNode
-