org.aspectj.org.eclipse.jdt.internal.core.search.matching
Class ConstructorLocator

java.lang.Object
  extended by org.aspectj.org.eclipse.jdt.internal.core.search.matching.PatternLocator
      extended by org.aspectj.org.eclipse.jdt.internal.core.search.matching.ConstructorLocator
All Implemented Interfaces:
IIndexConstants

public class ConstructorLocator
extends PatternLocator


Field Summary
protected  ConstructorPattern pattern
           
 
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, METHOD_DECL, METHOD_PATTERN, METHOD_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
ConstructorLocator(ConstructorPattern pattern)
           
 
Method Summary
 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 field, MatchingNodeSet nodeSet)
           
 int match(MessageSend msgSend, MatchingNodeSet nodeSet)
          Special case for message send in javadoc comment.
 int match(TypeDeclaration node, MatchingNodeSet nodeSet)
           
protected  int matchConstructor(MethodBinding constructor)
           
protected  int matchContainer()
          Returns the type(s) of container for this pattern.
protected  int matchLevelForDeclarations(ConstructorDeclaration constructor)
           
protected  int matchLevelForReferences(ConstructorDeclaration constructor)
           
protected  void matchReportReference(ASTNode reference, IJavaElement element, Binding elementBinding, int accuracy, MatchLocator locator)
          Reports the match of the given reference.
 SearchMatch newDeclarationMatch(ASTNode reference, IJavaElement element, Binding binding, int accuracy, int length, MatchLocator locator)
           
protected  int referenceType()
           
protected  int resolveLevel(AllocationExpression allocation)
           
 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.
protected  int resolveLevel(ConstructorDeclaration constructor, boolean checkDeclarations)
           
protected  int resolveLevel(FieldDeclaration field)
           
protected  int resolveLevel(TypeDeclaration type)
           
 java.lang.String toString()
           
 
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, matchesName, matchesTypeReference, matchLevel, matchLevelAndReportImportRef, matchNameValue, matchReportImportRef, matchReportReference, patternLocator, qualifiedPattern, qualifiedSourceName, resolveLevelForType, resolveLevelForType, resolveLevelForType, updateMatch, updateMatch, updateMatch
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

pattern

protected ConstructorPattern pattern
Constructor Detail

ConstructorLocator

public ConstructorLocator(ConstructorPattern pattern)
Method Detail

match

public int match(ASTNode node,
                 MatchingNodeSet nodeSet)
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 class PatternLocator

match

public int match(ConstructorDeclaration node,
                 MatchingNodeSet nodeSet)
Overrides:
match in class PatternLocator

match

public int match(Expression node,
                 MatchingNodeSet nodeSet)
Overrides:
match in class PatternLocator

match

public int match(FieldDeclaration field,
                 MatchingNodeSet nodeSet)
Overrides:
match in class PatternLocator

match

public int match(MessageSend msgSend,
                 MatchingNodeSet nodeSet)
Special case for message send in javadoc comment. They can be in fact bound to a contructor.

Overrides:
match in class PatternLocator
See Also:
"http://bugs.eclipse.org/bugs/show_bug.cgi?id=83285"

match

public int match(TypeDeclaration node,
                 MatchingNodeSet nodeSet)
Overrides:
match in class PatternLocator

matchConstructor

protected int matchConstructor(MethodBinding constructor)

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 class PatternLocator

matchLevelForReferences

protected int matchLevelForReferences(ConstructorDeclaration constructor)

matchLevelForDeclarations

protected int matchLevelForDeclarations(ConstructorDeclaration constructor)

matchReportReference

protected void matchReportReference(ASTNode reference,
                                    IJavaElement element,
                                    Binding elementBinding,
                                    int accuracy,
                                    MatchLocator locator)
                             throws CoreException
Description copied from class: PatternLocator
Reports the match of the given reference.

Overrides:
matchReportReference in class PatternLocator
Throws:
CoreException

newDeclarationMatch

public SearchMatch newDeclarationMatch(ASTNode reference,
                                       IJavaElement element,
                                       Binding binding,
                                       int accuracy,
                                       int length,
                                       MatchLocator locator)
Overrides:
newDeclarationMatch in class PatternLocator

resolveLevel

public int resolveLevel(ASTNode node)
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 class PatternLocator

referenceType

protected int referenceType()
Overrides:
referenceType in class PatternLocator

resolveLevel

protected int resolveLevel(AllocationExpression allocation)

resolveLevel

protected int resolveLevel(FieldDeclaration field)

resolveLevel

public int resolveLevel(Binding binding)
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 class PatternLocator

resolveLevel

protected int resolveLevel(ConstructorDeclaration constructor,
                           boolean checkDeclarations)

resolveLevel

protected int resolveLevel(TypeDeclaration type)

toString

public java.lang.String toString()
Overrides:
toString in class PatternLocator