Class ModuleLocator
java.lang.Object
org.aspectj.org.eclipse.jdt.internal.core.search.matching.PatternLocator
org.aspectj.org.eclipse.jdt.internal.core.search.matching.ModuleLocator
- All Implemented Interfaces:
IQualifiedTypeResolutionListener
,IIndexConstants
Copyright (c) 2017 IBM Corporation and others.
This program and the accompanying materials
are made available under the terms of the Eclipse Public License 2.0
which accompanies this distribution, and is available at
https://www.eclipse.org/legal/epl-2.0/
SPDX-License-Identifier: EPL-2.0
Contributors:
IBM Corporation - initial API and implementation
-
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 TypeMethodDescriptionint
match
(ModuleDeclaration node, MatchingNodeSet nodeSet) protected int
match
(ModuleReference node, MatchingNodeSet nodeSet) protected int
Returns the type(s) of container for this pattern.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.newDeclarationMatch
(ASTNode node, IJavaElement element, Binding elementBinding, int accuracy, int length, MatchLocator locator) protected int
int
resolveLevel
(ASTNode possibleMatchingNode) 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, initializePolymorphicSearch, match, match, match, match, match, match, match, match, match, match, match, match, match, match, match, matchesName, matchesTypeReference, matchLevel, matchLevelAndReportImportRef, matchNameValue, matchReportImportRef, patternLocator, qualifiedPattern, qualifiedSourceName, recordResolution, resolveLevelForType, resolveLevelForType, resolveLevelForType, toString, updateMatch, updateMatch, updateMatch
-
Constructor Details
-
ModuleLocator
-
-
Method Details
-
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
-
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
-
matchReportReference
protected void matchReportReference(ASTNode reference, IJavaElement element, Binding elementBinding, int accuracy, MatchLocator locator) throws org.eclipse.core.runtime.CoreException Description copied from class:PatternLocator
Reports the match of the given reference.- Overrides:
matchReportReference
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.CoreException Description 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
-
newDeclarationMatch
public SearchMatch newDeclarationMatch(ASTNode node, IJavaElement element, Binding elementBinding, int accuracy, int length, MatchLocator locator) - Overrides:
newDeclarationMatch
in classPatternLocator
-
referenceType
protected int referenceType()- Overrides:
referenceType
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
-