public class OrTypePattern extends TypePattern
any binding to formals is explicitly forbidden for any composite by the language
TypePattern.MatchKindAND, 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, WILDend, sourceContext, start| Constructor and Description |
|---|
OrTypePattern(TypePattern left,
TypePattern right) |
| Modifier and Type | Method and Description |
|---|---|
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) |
getAnnotationPattern, getExactType, getTypeParameters, hasFailedResolution, isArray, isBangVoid, isEllipsis, isIncludeSubtypes, isStar, isVarArgs, isVoid, matches, matchesSubtypes, matchesSubtypes, notExactType, postRead, remapAdviceFormals, resolve, resolveExactType, setTypeParameterscopyLocationFrom, getEnd, getFileName, getSourceContext, getSourceLocation, getStart, readLocation, setLocation, writeLocationpublic OrTypePattern(TypePattern left, TypePattern right)
public TypePattern getRight()
public TypePattern getLeft()
protected boolean couldEverMatchSameTypesAs(TypePattern other)
couldEverMatchSameTypesAs in class TypePatternpublic FuzzyBoolean matchesInstanceof(ResolvedType type)
matchesInstanceof in class TypePatternprotected boolean matchesExactly(ResolvedType type)
matchesExactly in class TypePatternprotected boolean matchesExactly(ResolvedType type, ResolvedType annotatedType)
matchesExactly in class TypePatternpublic boolean matchesStatically(ResolvedType type)
matchesStatically in class TypePatternpublic void setIsVarArgs(boolean isVarArgs)
setIsVarArgs in class TypePatternpublic void setAnnotationTypePattern(AnnotationTypePattern annPatt)
setAnnotationTypePattern in class TypePatternpublic void write(CompressingDataOutputStream s) throws java.io.IOException
write in class PatternNodejava.io.IOExceptionpublic static TypePattern read(VersionedDataInputStream s, ISourceContext context) throws java.io.IOException
java.io.IOExceptionpublic TypePattern resolveBindings(IScope scope, Bindings bindings, boolean allowBinding, boolean requireExactType)
TypePatternresolveBindings in class TypePatternpublic TypePattern parameterizeWith(java.util.Map<java.lang.String,UnresolvedType> typeVariableMap, World w)
TypePatternparameterizeWith in class TypePatternpublic java.lang.String toString()
toString in class java.lang.Objectpublic boolean isStarAnnotation()
isStarAnnotation in class TypePatternpublic boolean equals(java.lang.Object obj)
equals in class java.lang.Objectpublic int hashCode()
hashCode in class java.lang.Objectpublic java.lang.Object accept(PatternNodeVisitor visitor, java.lang.Object data)
accept in class PatternNodepublic java.lang.Object traverse(PatternNodeVisitor visitor, java.lang.Object data)
traverse in class PatternNode