Package 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
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, WILDFields inherited from class org.aspectj.weaver.patterns.PatternNode
end, sourceContext, start -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionaccept(PatternNodeVisitor visitor, Object data)protected booleancouldEverMatchSameTypesAs(TypePattern other)booleangetLeft()getRight()inthashCode()booleanprotected booleanmatchesExactly(ResolvedType type)protected booleanmatchesExactly(ResolvedType type, ResolvedType annotatedType)matchesInstanceof(ResolvedType type)booleanmatchesStatically(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 TypePatternread(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.voidvoidsetIsVarArgs(boolean isVarArgs)toString()traverse(PatternNodeVisitor visitor, Object data)voidMethods 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, setTypeParametersMethods inherited from class org.aspectj.weaver.patterns.PatternNode
copyLocationFrom, getEnd, getFileName, getSourceContext, getSourceLocation, getStart, readLocation, setLocation, writeLocation
-
Constructor Details
-
OrTypePattern
-
-
Method Details
-
getRight
-
getLeft
-
couldEverMatchSameTypesAs
- Overrides:
couldEverMatchSameTypesAsin classTypePattern
-
matchesInstanceof
- Specified by:
matchesInstanceofin classTypePattern
-
matchesExactly
- Specified by:
matchesExactlyin classTypePattern
-
matchesExactly
- Specified by:
matchesExactlyin classTypePattern
-
matchesStatically
- Overrides:
matchesStaticallyin classTypePattern
-
setIsVarArgs
public void setIsVarArgs(boolean isVarArgs)- Overrides:
setIsVarArgsin classTypePattern
-
setAnnotationTypePattern
- Overrides:
setAnnotationTypePatternin classTypePattern
-
write
- Specified by:
writein 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:TypePatternThis can modify in place, or return a new TypePattern if the type changes.- Overrides:
resolveBindingsin classTypePattern
-
parameterizeWith
Description copied from class:TypePatternreturn a version of this type pattern in which all type variable references have been replaced by their corresponding entry in the map.- Specified by:
parameterizeWithin classTypePattern
-
toString
-
isStarAnnotation
public boolean isStarAnnotation()- Overrides:
isStarAnnotationin classTypePattern
-
equals
-
hashCode
public int hashCode() -
accept
- Specified by:
acceptin classPatternNode
-
traverse
- Overrides:
traversein classPatternNode
-