Package org.aspectj.weaver.patterns
Class AndTypePattern
java.lang.Object
org.aspectj.weaver.patterns.PatternNode
org.aspectj.weaver.patterns.TypePattern
org.aspectj.weaver.patterns.AndTypePattern
- All Implemented Interfaces:
IHasPosition
,IHasSourceLocation
left && right
any binding to formals is explicitly forbidden for any composite by the language
- Author:
- Erik Hilsdale, Jim Hugunin
-
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.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
-
Method Summary
Modifier and TypeMethodDescriptionaccept(PatternNodeVisitor visitor, Object data)
protected boolean
couldEverMatchSameTypesAs(TypePattern other)
boolean
getLeft()
getRight()
int
hashCode()
boolean
protected boolean
matchesExactly(ResolvedType type)
protected boolean
matchesExactly(ResolvedType type, ResolvedType annotatedType)
matchesInstanceof(ResolvedType type)
boolean
matchesStatically(ResolvedType type)
parameterizeWith(Map<String,UnresolvedType> typeVariableMap, World w)
return a version of this type pattern in which all type variable references have been replaced by their corresponding entry in the map.static TypePattern
read(VersionedDataInputStream s, ISourceContext context)
resolveBindings(IScope scope, Bindings bindings, boolean allowBinding, boolean requireExactType)
This can modify in place, or return a new TypePattern if the type changes.void
void
setIsVarArgs(boolean isVarArgs)
toString()
traverse(PatternNodeVisitor visitor, Object data)
void
Methods inherited from class org.aspectj.weaver.patterns.TypePattern
getAnnotationPattern, getExactType, getTypeParameters, hasFailedResolution, isArray, isBangVoid, isEllipsis, isIncludeSubtypes, isStar, isVarArgs, isVoid, matches, matchesSubtypes, matchesSubtypes, notExactType, postRead, remapAdviceFormals, resolve, resolveExactType, setTypeParameters
Methods inherited from class org.aspectj.weaver.patterns.PatternNode
copyLocationFrom, getEnd, getFileName, getSourceContext, getSourceLocation, getStart, readLocation, setLocation, writeLocation
-
Constructor Details
-
AndTypePattern
-
-
Method Details
-
couldEverMatchSameTypesAs
- Overrides:
couldEverMatchSameTypesAs
in classTypePattern
-
matchesInstanceof
- Specified by:
matchesInstanceof
in classTypePattern
-
matchesExactly
- Specified by:
matchesExactly
in classTypePattern
-
matchesExactly
- Specified by:
matchesExactly
in classTypePattern
-
matchesStatically
- Overrides:
matchesStatically
in classTypePattern
-
setIsVarArgs
public void setIsVarArgs(boolean isVarArgs)- Overrides:
setIsVarArgs
in classTypePattern
-
setAnnotationTypePattern
- Overrides:
setAnnotationTypePattern
in classTypePattern
-
write
- Specified by:
write
in classPatternNode
- Throws:
IOException
-
read
public static TypePattern read(VersionedDataInputStream s, ISourceContext context) throws IOException- Throws:
IOException
-
resolveBindings
public TypePattern resolveBindings(IScope scope, Bindings bindings, boolean allowBinding, boolean requireExactType)Description copied from class:TypePattern
This can modify in place, or return a new TypePattern if the type changes.- Overrides:
resolveBindings
in classTypePattern
-
parameterizeWith
Description copied from class:TypePattern
return a version of this type pattern in which all type variable references have been replaced by their corresponding entry in the map.- Specified by:
parameterizeWith
in classTypePattern
-
toString
-
getLeft
-
getRight
-
equals
-
isStarAnnotation
public boolean isStarAnnotation()- Overrides:
isStarAnnotation
in classTypePattern
-
hashCode
public int hashCode() -
accept
- Specified by:
accept
in classPatternNode
-
traverse
- Overrides:
traverse
in classPatternNode
-