Class AndLocator
java.lang.Object
org.aspectj.org.eclipse.jdt.internal.core.search.matching.PatternLocator
org.aspectj.org.eclipse.jdt.internal.core.search.matching.AndLocator
- All Implemented Interfaces:
IQualifiedTypeResolutionListener
,IIndexConstants
-
Field Summary
Fields inherited from class org.aspectj.org.eclipse.jdt.internal.core.search.matching.PatternLocator
ACCURATE_MATCH, ALL_CONTAINER, CAMELCASE_FLAVOR, CLASS_CONTAINER, COMPILATION_UNIT_CONTAINER, ERASURE_MATCH, EXACT_FLAVOR, FIELD_CONTAINER, FLAVORS_MASK, IMPOSSIBLE_MATCH, INACCURATE_MATCH, isCaseSensitive, isEquivalentMatch, isErasureMatch, MATCH_LEVEL_MASK, matchMode, mayBeGeneric, METHOD_CONTAINER, mustResolve, NO_FLAVOR, OVERRIDDEN_METHOD_FLAVOR, PATTERN_FLAVOR, POSSIBLE_MATCH, PREFIX_FLAVOR, RAW_MASK, REGEXP_FLAVOR, RULE_MASK, SUB_INVOCATION_FLAVOR, SUPER_INVOCATION_FLAVOR, SUPERTYPE_REF_FLAVOR
Fields inherited from interface org.aspectj.org.eclipse.jdt.internal.core.search.indexing.IIndexConstants
AND_PATTERN, ANNOT_REF_PATTERN, ANNOTATION_REF, ANNOTATION_TYPE_SUFFIX, CLASS_AND_ENUM_SUFFIX, CLASS_AND_INTERFACE_SUFFIX, CLASS_SUFFIX, CONSTRUCTOR_DECL, CONSTRUCTOR_PATTERN, CONSTRUCTOR_REF, COUNTS, DEFAULT_CONSTRUCTOR, ENUM_SUFFIX, FIELD_DECL, FIELD_PATTERN, INTERFACE_AND_ANNOTATION_SUFFIX, INTERFACE_SUFFIX, LOCAL_VAR_PATTERN, META_INDEX_CATEGORIES, META_INDEX_QUALIFIED_SUPER_TYPE_QUALIFIER_REF, META_INDEX_QUALIFIED_TYPE_QUALIFIER_REF, META_INDEX_SIMPLE_SUPER_TYPE_QUALIFIER_REF, META_INDEX_SIMPLE_TYPE_QUALIFIER_REF, METHOD_DECL, METHOD_DECL_PLUS, METHOD_PATTERN, METHOD_REF, MODULE_DECL, MODULE_INFO, MODULE_PATTERN, MODULE_REF, OBJECT, ONE_STAR, ONE_STAR_CHAR, ONE_ZERO, ONE_ZERO_CHAR, OR_PATTERN, PARAMETER_SEPARATOR, PKG_DECL_PATTERN, PKG_REF_PATTERN, REF, SECONDARY_SUFFIX, SEPARATOR, SUPER_REF, SUPER_REF_PATTERN, TYPE_DECL, TYPE_DECL_PATTERN, TYPE_PARAM_PATTERN, TYPE_REF_PATTERN, TYPE_SUFFIX, ZERO_CHAR
-
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescriptionvoid
initializePolymorphicSearch(MatchLocator locator)
Initializes this search pattern so that polymorphic search can be performed.int
match(Annotation node, MatchingNodeSet nodeSet)
int
match(ASTNode node, MatchingNodeSet nodeSet)
Check if the given ast node syntactically matches this pattern.int
match(ConstructorDeclaration node, MatchingNodeSet nodeSet)
int
match(Expression node, MatchingNodeSet nodeSet)
int
match(FieldDeclaration node, MatchingNodeSet nodeSet)
int
match(LambdaExpression node, MatchingNodeSet nodeSet)
int
match(LocalDeclaration node, MatchingNodeSet nodeSet)
int
match(MemberValuePair node, MatchingNodeSet nodeSet)
int
match(MessageSend node, MatchingNodeSet nodeSet)
int
match(MethodDeclaration node, MatchingNodeSet nodeSet)
int
match(ReferenceExpression node, MatchingNodeSet nodeSet)
int
match(Reference node, MatchingNodeSet nodeSet)
int
match(TypeDeclaration node, MatchingNodeSet nodeSet)
int
match(TypeParameter node, MatchingNodeSet nodeSet)
int
match(TypeReference node, MatchingNodeSet nodeSet)
protected int
Returns the type(s) of container for this pattern.protected void
matchReportImportRef(ImportReference importRef, Binding binding, IJavaElement element, int accuracy, MatchLocator locator)
Reports the match of the given import reference.protected void
matchReportReference(ASTNode reference, IJavaElement element, IJavaElement localElement, IJavaElement[] otherElements, Binding elementBinding, int accuracy, MatchLocator locator)
Reports the match of the given reference.protected void
matchReportReference(ASTNode reference, IJavaElement element, Binding elementBinding, int accuracy, MatchLocator locator)
Reports the match of the given reference.void
recordResolution(QualifiedTypeReference typeReference, TypeBinding resolution)
Notifies that the given resolution has been found for the given type reference.int
resolveLevel(ASTNode node)
Finds out whether the given ast node matches this search pattern.int
resolveLevel(Binding binding)
Finds out whether the given binding matches this search pattern.Methods inherited from class org.aspectj.org.eclipse.jdt.internal.core.search.matching.PatternLocator
clear, fineGrain, getQualifiedPattern, getQualifiedSourceName, getTypeNameBinding, match, match, matchesName, matchesTypeReference, matchLevel, matchLevelAndReportImportRef, matchNameValue, newDeclarationMatch, patternLocator, qualifiedPattern, qualifiedSourceName, referenceType, resolveLevelForType, resolveLevelForType, resolveLevelForType, toString, updateMatch, updateMatch, updateMatch
-
Constructor Details
-
AndLocator
-
-
Method Details
-
initializePolymorphicSearch
Description copied from class:PatternLocator
Initializes this search pattern so that polymorphic search can be performed.- Overrides:
initializePolymorphicSearch
in classPatternLocator
-
match
- Overrides:
match
in classPatternLocator
-
match
Description copied from class:PatternLocator
Check if the given ast node syntactically matches this pattern. If it does, add it to the match set. Returns the match level.- Overrides:
match
in classPatternLocator
-
match
- Overrides:
match
in classPatternLocator
-
match
- Overrides:
match
in classPatternLocator
-
match
- Overrides:
match
in classPatternLocator
-
match
- Overrides:
match
in classPatternLocator
-
match
- Overrides:
match
in classPatternLocator
-
match
- Overrides:
match
in classPatternLocator
-
match
- Overrides:
match
in classPatternLocator
-
match
- Overrides:
match
in classPatternLocator
-
match
- Overrides:
match
in classPatternLocator
-
match
- Overrides:
match
in classPatternLocator
-
match
- Overrides:
match
in classPatternLocator
-
match
- Overrides:
match
in classPatternLocator
-
match
- Overrides:
match
in classPatternLocator
-
matchContainer
protected int matchContainer()Description copied from class:PatternLocator
Returns the type(s) of container for this pattern. It is a bit combination of types, denoting compilation unit, class declarations, field declarations or method declarations.- Overrides:
matchContainer
in classPatternLocator
-
matchReportImportRef
protected void matchReportImportRef(ImportReference importRef, Binding binding, IJavaElement element, int accuracy, MatchLocator locator) throws org.eclipse.core.runtime.CoreExceptionDescription copied from class:PatternLocator
Reports the match of the given import reference.- Overrides:
matchReportImportRef
in classPatternLocator
- Throws:
org.eclipse.core.runtime.CoreException
-
matchReportReference
protected void matchReportReference(ASTNode reference, IJavaElement element, IJavaElement localElement, IJavaElement[] otherElements, Binding elementBinding, int accuracy, MatchLocator locator) throws org.eclipse.core.runtime.CoreExceptionDescription copied from class:PatternLocator
Reports the match of the given reference. Also provide a local element to eventually report in match.- Overrides:
matchReportReference
in classPatternLocator
- Throws:
org.eclipse.core.runtime.CoreException
-
matchReportReference
protected void matchReportReference(ASTNode reference, IJavaElement element, Binding elementBinding, int accuracy, MatchLocator locator) throws org.eclipse.core.runtime.CoreExceptionDescription copied from class:PatternLocator
Reports the match of the given reference.- Overrides:
matchReportReference
in classPatternLocator
- Throws:
org.eclipse.core.runtime.CoreException
-
resolveLevel
Description copied from class:PatternLocator
Finds out whether the given ast node matches this search pattern. Returns IMPOSSIBLE_MATCH if it doesn't. Returns INACCURATE_MATCH if it potentially matches this search pattern (i.e. it has already been resolved but resolving failed.) Returns ACCURATE_MATCH if it matches exactly this search pattern (i.e. it doesn't need to be resolved or it has already been resolved.)- Overrides:
resolveLevel
in classPatternLocator
-
resolveLevel
Description copied from class:PatternLocator
Finds out whether the given binding matches this search pattern. Returns ACCURATE_MATCH if it does. Returns INACCURATE_MATCH if resolve failed but match is still possible. Returns IMPOSSIBLE_MATCH otherwise. Default is to return INACCURATE_MATCH.- Overrides:
resolveLevel
in classPatternLocator
-
recordResolution
Description copied from interface:IQualifiedTypeResolutionListener
Notifies that the given resolution has been found for the given type reference. Some of the bindings are intermediate types i.e. qualifying types.- Specified by:
recordResolution
in interfaceIQualifiedTypeResolutionListener
- Overrides:
recordResolution
in classPatternLocator
- Parameters:
typeReference
- the type referenceresolution
- the resolution found
-