org.aspectj.weaver.patterns
Class TypePatternList
java.lang.Object
org.aspectj.weaver.patterns.PatternNode
org.aspectj.weaver.patterns.TypePatternList
- All Implemented Interfaces:
- IHasPosition, IHasSourceLocation
public class TypePatternList
- extends PatternNode
Method Summary |
java.lang.Object |
accept(PatternNodeVisitor visitor,
java.lang.Object data)
|
boolean |
areAllExactWithNoSubtypesAllowed()
|
boolean |
canMatchSignatureWithNParameters(int numParams)
|
boolean |
equals(java.lang.Object other)
|
TypePattern |
get(int index)
|
int |
getEnd()
The ending index of this location in the character stream
This points to the last character in this token. |
java.util.List<UnresolvedType> |
getExactTypes()
|
ISourceContext |
getSourceContext()
|
ISourceLocation |
getSourceLocation()
|
int |
getStart()
The starting index of this location in the character stream. |
TypePattern[] |
getTypePatterns()
|
int |
hashCode()
|
FuzzyBoolean |
matches(ResolvableTypeList types,
TypePattern.MatchKind kind,
ResolvedType[][] parameterAnnotations)
|
FuzzyBoolean |
matches(ResolvedType[] types,
TypePattern.MatchKind kind)
|
FuzzyBoolean |
matches(ResolvedType[] types,
TypePattern.MatchKind kind,
ResolvedType[][] parameterAnnotations)
When called with TypePattern.STATIC this will always return either FuzzyBoolean.YES or FuzzyBoolean.NO. |
java.lang.String[] |
maybeGetCleanNames()
|
TypePatternList |
parameterizeWith(java.util.Map typeVariableMap,
World w)
Return a version of this type pattern list in which all type variable references are replaced by their corresponding entry in
the map |
void |
postRead(ResolvedType enclosingType)
|
static TypePatternList |
read(VersionedDataInputStream s,
ISourceContext context)
|
TypePatternList |
resolveBindings(IScope scope,
Bindings bindings,
boolean allowBinding,
boolean requireExactType)
|
TypePatternList |
resolveReferences(IntMap bindings)
|
int |
size()
|
java.lang.String |
toString()
|
java.lang.Object |
traverse(PatternNodeVisitor visitor,
java.lang.Object data)
|
void |
write(CompressingDataOutputStream s)
|
Methods inherited from class java.lang.Object |
clone, finalize, getClass, notify, notifyAll, wait, wait, wait |
EMPTY
public static final TypePatternList EMPTY
ANY
public static final TypePatternList ANY
TypePatternList
public TypePatternList()
TypePatternList
public TypePatternList(TypePattern[] arguments)
TypePatternList
public TypePatternList(java.util.List l)
size
public int size()
get
public TypePattern get(int index)
toString
public java.lang.String toString()
- Overrides:
toString
in class java.lang.Object
canMatchSignatureWithNParameters
public boolean canMatchSignatureWithNParameters(int numParams)
matches
public FuzzyBoolean matches(ResolvedType[] types,
TypePattern.MatchKind kind)
matches
public FuzzyBoolean matches(ResolvedType[] types,
TypePattern.MatchKind kind,
ResolvedType[][] parameterAnnotations)
- When called with TypePattern.STATIC this will always return either FuzzyBoolean.YES or FuzzyBoolean.NO.
When called with TypePattern.DYNAMIC this could return MAYBE if at runtime it would be possible for arguments of the given
static types to dynamically match this, but it is not known for certain.
This method will never return FuzzyBoolean.NEVER
matches
public FuzzyBoolean matches(ResolvableTypeList types,
TypePattern.MatchKind kind,
ResolvedType[][] parameterAnnotations)
parameterizeWith
public TypePatternList parameterizeWith(java.util.Map typeVariableMap,
World w)
- Return a version of this type pattern list in which all type variable references are replaced by their corresponding entry in
the map
- Parameters:
typeVariableMap
-
- Returns:
resolveBindings
public TypePatternList resolveBindings(IScope scope,
Bindings bindings,
boolean allowBinding,
boolean requireExactType)
resolveReferences
public TypePatternList resolveReferences(IntMap bindings)
postRead
public void postRead(ResolvedType enclosingType)
equals
public boolean equals(java.lang.Object other)
- Overrides:
equals
in class java.lang.Object
hashCode
public int hashCode()
- Overrides:
hashCode
in class java.lang.Object
read
public static TypePatternList read(VersionedDataInputStream s,
ISourceContext context)
throws java.io.IOException
- Throws:
java.io.IOException
getEnd
public int getEnd()
- Description copied from interface:
IHasPosition
- The ending index of this location in the character stream
This points to the last character in this token.
If a location truly had no contents, then start == end + 1. We don't recommend this.
- Specified by:
getEnd
in interface IHasPosition
- Overrides:
getEnd
in class PatternNode
getSourceContext
public ISourceContext getSourceContext()
- Specified by:
getSourceContext
in interface IHasSourceLocation
- Overrides:
getSourceContext
in class PatternNode
getSourceLocation
public ISourceLocation getSourceLocation()
- Specified by:
getSourceLocation
in interface IHasSourceLocation
- Overrides:
getSourceLocation
in class PatternNode
getStart
public int getStart()
- Description copied from interface:
IHasPosition
- The starting index of this location in the character stream.
- Specified by:
getStart
in interface IHasPosition
- Overrides:
getStart
in class PatternNode
write
public void write(CompressingDataOutputStream s)
throws java.io.IOException
- Specified by:
write
in class PatternNode
- Throws:
java.io.IOException
getTypePatterns
public TypePattern[] getTypePatterns()
getExactTypes
public java.util.List<UnresolvedType> getExactTypes()
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
areAllExactWithNoSubtypesAllowed
public boolean areAllExactWithNoSubtypesAllowed()
maybeGetCleanNames
public java.lang.String[] maybeGetCleanNames()