Interface ReferenceFinder

All Known Implementing Classes:
AnnotationReferenceFinder, KeywordReferenceFinder, NewExpressionReferenceFinder, PlatformMemberReferenceFinder, ReferenceIndexReferenceFinder, SourceDefinedSymbolDeclarationReferenceFinder

public interface ReferenceFinder
Интерфейс поискового движка.
  • Method Summary

    Modifier and Type
    Method
    Description
    findReference(URI uri, TerminalNode terminal)
    Поиск символа по уже известному терминалу-идентификатору — без спуска по AST от корня к позиции.
    findReference(URI uri, Position position)
    Поиск символа по позиции курсора.
  • Method Details

    • findReference

      Optional<Reference> findReference(URI uri, Position position)
      Поиск символа по позиции курсора.
      Parameters:
      uri - URI документа, в котором необходимо осуществить поиск.
      position - позиция курсора.
      Returns:
      данные ссылки.
    • findReference

      default Optional<Reference> findReference(URI uri, TerminalNode terminal)
      Поиск символа по уже известному терминалу-идентификатору — без спуска по AST от корня к позиции. Реализация по умолчанию делегирует в findReference(URI, Position) по стартовой позиции терминала (полное поведенческое соответствие позиционному варианту). Finder'ы, чья стоимость — именно этот спуск (findTerminalNodeContainsPosition и аналоги), переопределяют метод на подъём вверх от terminal.
      Parameters:
      uri - URI документа, в котором необходимо осуществить поиск.
      terminal - терминал-идентификатор под курсором.
      Returns:
      данные ссылки.