Class TypeReferenceMatch


  • public class TypeReferenceMatch
    extends ReferenceMatch
    A Java search match that represents a type reference. The element is the inner-most enclosing member that references this type.

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

    Since:
    3.0
    • Constructor Detail

      • TypeReferenceMatch

        public TypeReferenceMatch​(IJavaElement enclosingElement,
                                  int accuracy,
                                  int offset,
                                  int length,
                                  boolean insideDocComment,
                                  SearchParticipant participant,
                                  IResource resource)
        Creates a new type reference match.
        Parameters:
        enclosingElement - the inner-most enclosing member that references this type
        accuracy - one of SearchMatch.A_ACCURATE or SearchMatch.A_INACCURATE
        offset - the offset the match starts at, or -1 if unknown
        length - the length of the match, or -1 if unknown
        insideDocComment - true if this search match is inside a doc comment, and false otherwise
        participant - the search participant that created the match
        resource - the resource of the element
    • Method Detail

      • getOtherElements

        public final IJavaElement[] getOtherElements()
        Returns other elements also enclosing the type reference. This typically can happen for multiple fields or local variable declarations.

        For example,

        • searching for the references to the type Test in
                   public class Test {
                       Test test1, test2, test3;
                       void method() {}
                   }
                   
          will return one match whose other elements is an array of two fields: test2 and test3.

        • searching for the references to the type Test in
                   public class Test {
                       String str;
                       void method() {
                           Test local1, local2, local3;
                       }
                   }
                   
          will return one match whose other elements is an array of two local variables: local2 and local3.

        • since 3.6, searching for the references to the type Test in
                   public class Test {
                           void testB(int testKind) {
                                   @Annot int test1, test2;
                           }
                   }
                   @interface Annot {}
                   
          will return one match whose other elements is an array of one annotation: Annot which parent is the local variable test2.
        Returns:
        the other elements of the search match, or null if none
        Since:
        3.2
      • setOtherElements

        public final void setOtherElements​(IJavaElement[] otherElements)
        Sets the other elements of this search match.
        Parameters:
        otherElements - the other elements of the match, or null if none
        Since:
        3.2
        See Also:
        getOtherElements()