Class SearchMatch

java.lang.Object
org.eclipse.jdt.core.search.SearchMatch
Direct Known Subclasses:
FieldDeclarationMatch, LocalVariableDeclarationMatch, LocalVariableReferenceMatch, MethodDeclarationMatch, ModuleDeclarationMatch, PackageDeclarationMatch, ReferenceMatch, TypeDeclarationMatch, TypeParameterDeclarationMatch, TypeParameterReferenceMatch

public class SearchMatch extends Object
A search match represents the result of a search query. Search matches may be accurate (A_ACCURATE) or they might be merely potential matches (A_INACCURATE). The latter occurs when a compile-time problem prevents the search engine from completely resolving the match.

This class is intended to be instantiated and subclassed by clients.

Since:
3.0
See Also:
  • Field Summary

    Fields
    Modifier and Type
    Field
    Description
    static final int
    The search result corresponds an exact match of the search pattern.
    static final int
    The search result is potentially a match for the search pattern, but the search engine is unable to fully check it (for example, because there are errors in the code or the classpath are not correctly set).
  • Constructor Summary

    Constructors
    Constructor
    Description
    SearchMatch(IJavaElement element, int accuracy, int offset, int length, SearchParticipant participant, org.eclipse.core.resources.IResource resource)
    Creates a new search match.
  • Method Summary

    Modifier and Type
    Method
    Description
    final int
    Returns the accuracy of this search match.
    final Object
    Returns the element of this search match.
    final int
    Returns the length of this search match.
    final int
    Returns the offset of this search match.
    Returns the search participant which issued this search match.
    final org.eclipse.core.resources.IResource
    Returns the resource containing this search match.
    final int
    Returns the rule used while creating the match.
    final boolean
    Returns whether match element is compatible with searched pattern or not.
    final boolean
    Returns whether match element only has same erasure than searched pattern or not.
    final boolean
    Returns whether element matches exactly searched pattern or not.
    final boolean
    Returns whether the associated element is implicit or not.
    final boolean
    Returns whether this search match is inside a doc comment of a Java source file.
    final boolean
    Returns whether the associated element is a raw type/method or not.
    final void
    setAccuracy(int accuracy)
    Sets the accuracy of this match.
    final void
    setElement(Object element)
    Sets the element of this search match.
    final void
    setImplicit(boolean implicit)
    Sets whether the associated element is implicit or not.
    final void
    setInsideDocComment(boolean insideDoc)
    Sets whether this search match is inside a doc comment of a Java source file.
    final void
    setLength(int length)
    Sets the length of this search match.
    final void
    setOffset(int offset)
    Sets the offset of this search match.
    final void
    Sets the participant of this match.
    final void
    setRaw(boolean raw)
    Set whether the associated element is a raw type/method or not.
    final void
    setResource(org.eclipse.core.resources.IResource resource)
    Sets the resource of this match.
    final void
    setRule(int rule)
    Set the rule used while reporting the match.
     

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
  • Field Details

    • A_ACCURATE

      public static final int A_ACCURATE
      The search result corresponds an exact match of the search pattern.
      See Also:
    • A_INACCURATE

      public static final int A_INACCURATE
      The search result is potentially a match for the search pattern, but the search engine is unable to fully check it (for example, because there are errors in the code or the classpath are not correctly set).
      See Also:
  • Constructor Details

    • SearchMatch

      public SearchMatch(IJavaElement element, int accuracy, int offset, int length, SearchParticipant participant, org.eclipse.core.resources.IResource resource)
      Creates a new search match.

      Note that isInsideDocComment() defaults to false.

      Parameters:
      element - the element that encloses or corresponds to the match, or null if none
      accuracy - one of A_ACCURATE or A_INACCURATE
      offset - the offset the match starts at, or -1 if unknown
      length - the length of the match, or -1 if unknown
      participant - the search participant that created the match
      resource - the resource of the element, or null if none
  • Method Details

    • getAccuracy

      public final int getAccuracy()
      Returns the accuracy of this search match.
      Returns:
      one of A_ACCURATE or A_INACCURATE
    • getElement

      public final Object getElement()
      Returns the element of this search match. In case of a reference match, this is the inner-most enclosing element of the reference. In case of a declaration match, this is the declaration.
      Returns:
      the element of the search match, or null if none
    • getLength

      public final int getLength()
      Returns the length of this search match.
      Returns:
      the length of this search match, or -1 if unknown
    • getOffset

      public final int getOffset()
      Returns the offset of this search match.
      Returns:
      the offset of this search match, or -1 if unknown
    • getParticipant

      public final SearchParticipant getParticipant()
      Returns the search participant which issued this search match.
      Returns:
      the participant which issued this search match
    • getResource

      public final org.eclipse.core.resources.IResource getResource()
      Returns the resource containing this search match.
      Returns:
      the resource of the match, or null if none
    • getRule

      public final int getRule()
      Returns the rule used while creating the match.
      Returns:
      one of SearchPattern.R_FULL_MATCH, SearchPattern.R_EQUIVALENT_MATCH or SearchPattern.R_ERASURE_MATCH
      Since:
      3.1
    • isEquivalent

      public final boolean isEquivalent()
      Returns whether match element is compatible with searched pattern or not. Note that equivalent matches are also erasure ones.
      Returns:
      true if match element is compatible false otherwise
      Since:
      3.1
    • isErasure

      public final boolean isErasure()
      Returns whether match element only has same erasure than searched pattern or not. Note that this is always true for both generic and non-generic element as soon as the accuracy is accurate.
      Returns:
      true if match element has same erasure false otherwise
      Since:
      3.1
    • isExact

      public final boolean isExact()
      Returns whether element matches exactly searched pattern or not. Note that exact matches are also erasure and equivalent ones.
      Returns:
      true if match is exact false otherwise
      Since:
      3.1
    • isImplicit

      public final boolean isImplicit()
      Returns whether the associated element is implicit or not. Note that this piece of information is currently only implemented for implicit member pair value in annotation.
      Returns:
      true if this match is associated to an implicit element and false otherwise
      Since:
      3.1
    • isRaw

      public final boolean isRaw()
      Returns whether the associated element is a raw type/method or not.
      Returns:
      true if this match is associated to a raw type or method and false otherwise
      Since:
      3.1
    • isInsideDocComment

      public final boolean isInsideDocComment()
      Returns whether this search match is inside a doc comment of a Java source file.
      Returns:
      true if this search match is inside a doc comment, and false otherwise
    • setAccuracy

      public final void setAccuracy(int accuracy)
      Sets the accuracy of this match.
      Parameters:
      accuracy - one of A_ACCURATE or A_INACCURATE
    • setElement

      public final void setElement(Object element)
      Sets the element of this search match.
      Parameters:
      element - the element that encloses or corresponds to the match, or null if none
    • setInsideDocComment

      public final void setInsideDocComment(boolean insideDoc)
      Sets whether this search match is inside a doc comment of a Java source file.
      Parameters:
      insideDoc - true if this search match is inside a doc comment, and false otherwise
    • setImplicit

      public final void setImplicit(boolean implicit)
      Sets whether the associated element is implicit or not. Typically, this is the case when match is on an implicit constructor or an implicit member pair value in annotation.
      Parameters:
      implicit - true if this match is associated to an implicit element and false otherwise
      Since:
      3.1
    • setLength

      public final void setLength(int length)
      Sets the length of this search match.
      Parameters:
      length - the length of the match, or -1 if unknown
    • setOffset

      public final void setOffset(int offset)
      Sets the offset of this search match.
      Parameters:
      offset - the offset the match starts at, or -1 if unknown
    • setParticipant

      public final void setParticipant(SearchParticipant participant)
      Sets the participant of this match.
      Parameters:
      participant - the search participant that created this match
    • setResource

      public final void setResource(org.eclipse.core.resources.IResource resource)
      Sets the resource of this match.
      Parameters:
      resource - the resource of the match, or null if none
    • setRule

      public final void setRule(int rule)
      Set the rule used while reporting the match.
      Parameters:
      rule - one of SearchPattern.R_FULL_MATCH, SearchPattern.R_EQUIVALENT_MATCH or SearchPattern.R_ERASURE_MATCH
      Since:
      3.1
    • setRaw

      public final void setRaw(boolean raw)
      Set whether the associated element is a raw type/method or not.
      Parameters:
      raw - true if this search match is associated to a raw type or method and false otherwise
      Since:
      3.1
    • toString

      public String toString()
      Overrides:
      toString in class Object