java.lang.Object
com.github._1c_syntax.bsl.languageserver.utils.Ranges

public final class Ranges extends Object
Набор методов для удобства работы с областями текста (ренджами)
  • Method Details

    • isEmpty

      public static boolean isEmpty(Range range)
      Проверяет переданную область на пустоту
      Parameters:
      range - Проверяемая область
      Returns:
      Признак пустоты
    • create

      public static Range create()
    • create

      public static Range create(int startLine, int startChar, int endLine, int endChar)
    • create

      public static Range create(int lineNo, int startChar, int endChar)
      Создание Range для линии
      Parameters:
      lineNo - - номер строки
      startChar - - номер первого символа
      endChar - - номер последнего символа
      Returns:
      - полученный Range
    • create

      public static Range create(ParserRuleContext ruleContext)
    • create

      public static Range create(ParserRuleContext startCtx, ParserRuleContext endCtx)
    • create

      public static Range create(Token startToken, Token endToken)
    • create

      public static Range create(List<Token> tokens)
    • create

      public static Range create(TerminalNode terminalNode)
    • create

      public static Range create(TerminalNode startTerminalNode, TerminalNode stopTerminalNode)
    • create

      public static Range create(Token token)
    • create

      public static Range create(ParseTree tree)
      Создание Range для узла дерева разбора.
      Parameters:
      tree - - дерево разбора.
      Returns:
      - полученный Range.
    • containsRange

      public static boolean containsRange(Range bigger, Range smaller)
    • containsPosition

      public static boolean containsPosition(Range range, Position position)
    • compare

      public static int compare(Range o1, Range o2)
      Натуральный порядок сравнения Range
      Parameters:
      o1 - - левый\меньший операнд
      o2 - - правый\больший операнд
      Returns:
      0 - равно, 1 - больше, -1 - меньше
    • compare

      public static int compare(Position pos1, Position pos2)
      Натуральный порядок сравнения Position
      Parameters:
      pos1 - - левый\меньший операнд
      pos2 - - правый\больший операнд
      Returns:
      0 - равно, 1 - больше, -1 - меньше
    • getFirstSignificantTokenRange

      @Deprecated(since="0.20") public static Optional<Range> getFirstSignificantTokenRange(Collection<Token> tokens)
      Deprecated.
      Для совместимости метод оставлен, но будет удален в будущих версиях. Вместо него стоит использовать метод ModuleSymbol.getSelectionRange()