Package org.aspectj.weaver.patterns
Class BindingTypePattern
java.lang.Object
org.aspectj.weaver.patterns.PatternNode
org.aspectj.weaver.patterns.TypePattern
org.aspectj.weaver.patterns.ExactTypePattern
org.aspectj.weaver.patterns.BindingTypePattern
- All Implemented Interfaces:
IHasPosition
,IHasSourceLocation
,BindingPattern
-
Nested Class Summary
Nested classes/interfaces inherited from class org.aspectj.weaver.patterns.TypePattern
TypePattern.MatchKind
-
Field Summary
Fields inherited from class org.aspectj.weaver.patterns.ExactTypePattern
boxedPrimitivesMap, checked, isVoid, primitiveTypesMap, resolvedType, type
Fields inherited from class org.aspectj.weaver.patterns.TypePattern
AND, annotationPattern, ANY, ANY_KEY, ANY_WITH_ANNO, BINDING, DYNAMIC, ELLIPSIS, ELLIPSIS_KEY, EXACT, HAS_MEMBER, includeSubtypes, isVarArgs, NO, NO_KEY, NOT, OR, STATIC, TYPE_CATEGORY, typeParameters, WILD
Fields inherited from class org.aspectj.weaver.patterns.PatternNode
end, sourceContext, start
-
Constructor Summary
ConstructorDescriptionBindingTypePattern(FormalBinding binding, boolean isVarArgs)
BindingTypePattern(UnresolvedType type, int index, boolean isVarArgs)
-
Method Summary
Modifier and TypeMethodDescriptionboolean
int
int
hashCode()
parameterizeWith(Map<String,UnresolvedType> typeVariableMap, World w)
return a version of this type pattern with all type variables references replaced by the corresponding entry in the map.static TypePattern
read(VersionedDataInputStream s, ISourceContext context)
remapAdviceFormals(IntMap bindings)
This is called during concretization of pointcuts, it is used by BindingTypePattern to return a new BindingTypePattern with a formal index appropiate for the advice, rather than for the lexical declaration, i.e. this handles transforamtions through named pointcuts.toString()
void
Methods inherited from class org.aspectj.weaver.patterns.ExactTypePattern
accept, couldEverMatchSameTypesAs, getResolvedExactType, getType, isArray, isVoid, matchesExactly, matchesExactly, matchesInstanceof, matchesSubtypes, readTypePattern150, readTypePatternOldStyle, resolveBindings
Methods inherited from class org.aspectj.weaver.patterns.TypePattern
getAnnotationPattern, getExactType, getTypeParameters, hasFailedResolution, isBangVoid, isEllipsis, isIncludeSubtypes, isStar, isStarAnnotation, isVarArgs, matches, matchesStatically, matchesSubtypes, notExactType, postRead, resolve, resolveExactType, setAnnotationTypePattern, setIsVarArgs, setTypeParameters
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
-
Constructor Details
-
BindingTypePattern
-
BindingTypePattern
-
-
Method Details
-
getFormalIndex
public int getFormalIndex()- Specified by:
getFormalIndex
in interfaceBindingPattern
-
getBindingName
-
equals
- Overrides:
equals
in classExactTypePattern
-
hashCode
public int hashCode()- Overrides:
hashCode
in classExactTypePattern
-
write
- Overrides:
write
in classExactTypePattern
- Throws:
IOException
-
read
public static TypePattern read(VersionedDataInputStream s, ISourceContext context) throws IOException- Throws:
IOException
-
remapAdviceFormals
Description copied from class:TypePattern
This is called during concretization of pointcuts, it is used by BindingTypePattern to return a new BindingTypePattern with a formal index appropiate for the advice, rather than for the lexical declaration, i.e. this handles transforamtions through named pointcuts.pointcut foo(String name): args(name); --> This makes a BindingTypePattern(0) pointing to the 0th formal before(Foo f, String n): this(f) && foo(n) { ... } --> when resolveReferences is called on the args from the above, it will return a BindingTypePattern(1) before(Foo f): this(f) && foo(*) { ... } --> when resolveReferences is called on the args from the above, it will return an ExactTypePattern(String)
- Overrides:
remapAdviceFormals
in classTypePattern
-
parameterizeWith
Description copied from class:ExactTypePattern
return a version of this type pattern with all type variables references replaced by the corresponding entry in the map.- Overrides:
parameterizeWith
in classExactTypePattern
-
toString
- Overrides:
toString
in classExactTypePattern
-