Class TypeDeclarationPattern

All Implemented Interfaces:
Cloneable, IParallelizable, IIndexConstants
Direct Known Subclasses:
QualifiedTypeDeclarationPattern, SecondaryTypeDeclarationPattern

public class TypeDeclarationPattern extends JavaSearchPattern
  • Field Details

    • simpleName

      public char[] simpleName
    • pkg

      public char[] pkg
    • enclosingTypeNames

      public char[][] enclosingTypeNames
    • moduleNames

      public char[][] moduleNames
    • moduleGraph

      public boolean moduleGraph
    • typeSuffix

      public char typeSuffix
    • modifiers

      public int modifiers
    • secondary

      public boolean secondary
    • CATEGORIES

      protected static char[][] CATEGORIES
  • Constructor Details

    • TypeDeclarationPattern

      public TypeDeclarationPattern(char[] moduleNames, char[] pkg, char[][] enclosingTypeNames, char[] simpleName, char typeSuffix, int matchRule)
    • TypeDeclarationPattern

      public TypeDeclarationPattern(char[] pkg, char[][] enclosingTypeNames, char[] simpleName, char typeSuffix, int matchRule)
  • Method Details

    • createIndexKey

      public static char[] createIndexKey(int modifiers, char[] typeName, char[] packageName, char[][] enclosingTypeNames, boolean secondary)
    • addModuleNames

      protected void addModuleNames(char[] modNames)
    • decodeIndexKey

      public void decodeIndexKey(char[] key)
      Description copied from class: SearchPattern
      Decode the given index key in this pattern. The decoded index key is used by SearchPattern.matchesDecodedKey(SearchPattern) to find out if the corresponding index entry should be considered.

      This method should be re-implemented in subclasses that need to decode an index key.

      Overrides:
      decodeIndexKey in class SearchPattern
      Parameters:
      key - the given index key
    • decodeModifiers

      protected void decodeModifiers()
    • getBlankPattern

      public SearchPattern getBlankPattern()
      Description copied from class: SearchPattern
      Returns a blank pattern that can be used as a record to decode an index key.

      Implementors of this method should return a new search pattern that is going to be used to decode index keys.

      Overrides:
      getBlankPattern in class JavaSearchPattern
      Returns:
      a new blank pattern
      See Also:
    • getIndexCategories

      public char[][] getIndexCategories()
      Description copied from class: SearchPattern
      Returns an array of index categories to consider for this index query. These potential matches will be further narrowed by the match locator, but precise match locating can be expensive, and index query should be as accurate as possible so as to eliminate obvious false hits.

      This method should be re-implemented in subclasses that need to narrow down the index query.

      Overrides:
      getIndexCategories in class SearchPattern
      Returns:
      an array of index categories
    • matchesDecodedKey

      public boolean matchesDecodedKey(SearchPattern decodedPattern)
      Description copied from class: SearchPattern
      Returns whether this pattern matches the given pattern (representing a decoded index key).

      This method should be re-implemented in subclasses that need to narrow down the index query.

      Overrides:
      matchesDecodedKey in class SearchPattern
      Parameters:
      decodedPattern - a pattern representing a decoded index key
      Returns:
      whether this pattern matches the given pattern
    • queryIn

      public EntryResult[] queryIn(Index index) throws IOException
      Overrides:
      queryIn in class SearchPattern
      Throws:
      IOException
    • print

      protected StringBuilder print(StringBuilder output)
      Overrides:
      print in class JavaSearchPattern