org.aspectj.weaver.patterns
Class OrTypePattern
java.lang.Object
org.aspectj.weaver.patterns.PatternNode
org.aspectj.weaver.patterns.TypePattern
org.aspectj.weaver.patterns.OrTypePattern
- All Implemented Interfaces:
- IHasPosition, IHasSourceLocation
public class OrTypePattern
- extends TypePattern
left || right
any binding to formals is explicitly forbidden for any composite by the language
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 |
Method Summary |
java.lang.Object |
accept(PatternNodeVisitor visitor,
java.lang.Object data)
|
protected boolean |
couldEverMatchSameTypesAs(TypePattern other)
|
boolean |
equals(java.lang.Object obj)
|
TypePattern |
getLeft()
|
TypePattern |
getRight()
|
int |
hashCode()
|
boolean |
isStarAnnotation()
|
protected boolean |
matchesExactly(ResolvedType type)
|
protected boolean |
matchesExactly(ResolvedType type,
ResolvedType annotatedType)
|
FuzzyBoolean |
matchesInstanceof(ResolvedType type)
|
boolean |
matchesStatically(ResolvedType type)
|
TypePattern |
parameterizeWith(java.util.Map<java.lang.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)
|
TypePattern |
resolveBindings(IScope scope,
Bindings bindings,
boolean allowBinding,
boolean requireExactType)
This can modify in place, or return a new TypePattern if the type changes. |
void |
setAnnotationTypePattern(AnnotationTypePattern annPatt)
|
void |
setIsVarArgs(boolean isVarArgs)
|
java.lang.String |
toString()
|
java.lang.Object |
traverse(PatternNodeVisitor visitor,
java.lang.Object data)
|
void |
write(CompressingDataOutputStream s)
|
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 java.lang.Object |
clone, finalize, getClass, notify, notifyAll, wait, wait, wait |
OrTypePattern
public OrTypePattern(TypePattern left,
TypePattern right)
getRight
public TypePattern getRight()
getLeft
public TypePattern getLeft()
couldEverMatchSameTypesAs
protected boolean couldEverMatchSameTypesAs(TypePattern other)
- Overrides:
couldEverMatchSameTypesAs
in class TypePattern
matchesInstanceof
public FuzzyBoolean matchesInstanceof(ResolvedType type)
- Specified by:
matchesInstanceof
in class TypePattern
matchesExactly
protected boolean matchesExactly(ResolvedType type)
- Specified by:
matchesExactly
in class TypePattern
matchesExactly
protected boolean matchesExactly(ResolvedType type,
ResolvedType annotatedType)
- Specified by:
matchesExactly
in class TypePattern
matchesStatically
public boolean matchesStatically(ResolvedType type)
- Overrides:
matchesStatically
in class TypePattern
setIsVarArgs
public void setIsVarArgs(boolean isVarArgs)
- Overrides:
setIsVarArgs
in class TypePattern
setAnnotationTypePattern
public void setAnnotationTypePattern(AnnotationTypePattern annPatt)
- Overrides:
setAnnotationTypePattern
in class TypePattern
write
public void write(CompressingDataOutputStream s)
throws java.io.IOException
- Specified by:
write
in class PatternNode
- Throws:
java.io.IOException
read
public static TypePattern read(VersionedDataInputStream s,
ISourceContext context)
throws java.io.IOException
- Throws:
java.io.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 class TypePattern
parameterizeWith
public TypePattern parameterizeWith(java.util.Map<java.lang.String,UnresolvedType> typeVariableMap,
World w)
- 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 class TypePattern
toString
public java.lang.String toString()
- Overrides:
toString
in class java.lang.Object
isStarAnnotation
public boolean isStarAnnotation()
- Overrides:
isStarAnnotation
in class TypePattern
equals
public boolean equals(java.lang.Object obj)
- Overrides:
equals
in class java.lang.Object
hashCode
public int hashCode()
- Overrides:
hashCode
in class java.lang.Object
accept
public java.lang.Object accept(PatternNodeVisitor visitor,
java.lang.Object data)
- Specified by:
accept
in class PatternNode
traverse
public java.lang.Object traverse(PatternNodeVisitor visitor,
java.lang.Object data)
- Overrides:
traverse
in class PatternNode