Class AbstractSDBLDocumentHighlightSupplier
java.lang.Object
com.github._1c_syntax.bsl.languageserver.documenthighlight.AbstractSDBLDocumentHighlightSupplier
- All Implemented Interfaces:
DocumentHighlightSupplier
- Direct Known Subclasses:
SDBLBracketDocumentHighlightSupplier, SDBLCaseDocumentHighlightSupplier, SDBLJoinDocumentHighlightSupplier
public abstract class AbstractSDBLDocumentHighlightSupplier
extends Object
implements DocumentHighlightSupplier
Базовый класс для поставщиков подсветки в SDBL-запросах.
Предоставляет общую функциональность для работы с запросами и подсветки токенов.
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionprotected static final recordИнформация о найденном токене в запросе.Nested classes/interfaces inherited from interface DocumentHighlightSupplier
DocumentHighlightSupplier.TerminalNodeInfo -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionprotected voidaddTerminalHighlight(List<DocumentHighlight> highlights, @Nullable TerminalNode terminalNode) Добавляет подсветку для терминального узла.protected voidaddTokenHighlight(List<DocumentHighlight> highlights, @Nullable Token token) Добавляет подсветку для токена.findTokenInQueries(Position position, DocumentContext documentContext) Находит токен на позиции курсора в одном из запросов документа.Methods inherited from class Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface DocumentHighlightSupplier
getDocumentHighlight
-
Constructor Details
-
AbstractSDBLDocumentHighlightSupplier
public AbstractSDBLDocumentHighlightSupplier()
-
-
Method Details
-
findTokenInQueries
protected Optional<AbstractSDBLDocumentHighlightSupplier.QueryTokenInfo> findTokenInQueries(Position position, DocumentContext documentContext) Находит токен на позиции курсора в одном из запросов документа.Поддерживает как позицию внутри токена, так и позицию сразу после токена (когда курсор стоит справа от токена).
- Parameters:
position- позиция курсораdocumentContext- контекст документа- Returns:
- информация о токене, если найден
-
addTokenHighlight
Добавляет подсветку для токена.- Parameters:
highlights- список подсветокtoken- токен для подсветки (может быть null)
-
addTerminalHighlight
protected void addTerminalHighlight(List<DocumentHighlight> highlights, @Nullable TerminalNode terminalNode) Добавляет подсветку для терминального узла.- Parameters:
highlights- список подсветокterminalNode- терминальный узел для подсветки (может быть null)
-