Class AbstractComplexityInlayHintSupplier

java.lang.Object
com.github._1c_syntax.bsl.languageserver.inlayhints.AbstractComplexityInlayHintSupplier
All Implemented Interfaces:
InlayHintSupplier
Direct Known Subclasses:
CognitiveComplexityInlayHintSupplier, CyclomaticComplexityInlayHintSupplier

public abstract class AbstractComplexityInlayHintSupplier extends Object implements InlayHintSupplier
Абстрактный поставщик подсказок о сложности методов.

По умолчанию подсказки отключены. Для включения нужно вызвать метод toggleHints(URI, String).

  • Constructor Details

    • AbstractComplexityInlayHintSupplier

      public AbstractComplexityInlayHintSupplier()
  • Method Details

    • getInlayHints

      public List<InlayHint> getInlayHints(DocumentContext documentContext, InlayHintParams params)
      Получение подсказок о местах увеличения сложности метода.

      Получить inlay hints, доступные в документе.

      Specified by:
      getInlayHints in interface InlayHintSupplier
      Parameters:
      documentContext - Контекст документа, для которого надо рассчитать inlay hints.
      params - Параметры запроса.
      Returns:
      Список inlay hints в документе.
    • toggleHints

      public void toggleHints(URI uri, String methodName)
      Переключить показ подсказок сложности для метода.
      Parameters:
      uri - URI документа.
      methodName - Имя метода.
    • getComplexityLocations

      protected abstract Map<MethodSymbol,List<ComplexitySecondaryLocation>> getComplexityLocations(DocumentContext documentContext)
      Получение мест увеличения сложности метода. Нужно переопределить в наследниках.
      Parameters:
      documentContext - Контекст документа.
      Returns:
      Места увеличения сложности метода.