Интерфейс LineMap
public interface LineMap
Предоставляет методы для преобразования между позициями символов и номерами строк для единицы компиляции.
- Since:
- 1.6
Методы
| Модификатор и тип | Метод | Описание |
|---|---|---|
long |
getColumnNumber(long pos) |
Находит колонку для позиции символа. |
long |
getLineNumber(long pos) |
Находит строку, содержащую позицию; символ конца строки находится в строке, которую он завершает. |
long |
getPosition(long line,
long column) |
Находит позицию, соответствующую (строка,колонка). |
long |
getStartPosition(long line) |
Находит начальную позицию строки. |
Методы
getStartPosition
long getStartPosition(long line)
Находит начальную позицию строки.
- Параметры:
-
line- номер строки (начинается с 1) - Возвращает:
- позиция первого символа в строке
- Выбрасывает:
-
IndexOutOfBoundsException- еслиlineNumber < 1еслиlineNumber > no. of lines
getPosition
long getPosition(long line,
long column)
Находит позицию, соответствующую (строка,колонка).
- Параметры:
-
line- номер строки (начинается с 1) -
column- номер колонки с учётом табуляции (начинается с 1) - Возвращает:
- позиция символа
- Выбрасывает:
-
IndexOutOfBoundsException- еслиline < 1еслиline > no. of lines
getLineNumber
long getLineNumber(long pos)
Находит строку, содержащую позицию; символ конца строки находится в строке, которую он завершает.
- Параметры:
-
pos- смещение символа от начала позиции - Возвращает:
- номер строки pos (первая строка - 1)
getColumnNumber
long getColumnNumber(long pos)
Находит колонку для позиции символа. Символы табуляции, предшествующие позиции в той же строке, будут расширены при расчете номера колонки.
- Параметры:
-
pos- смещение символа от начала позиции - Возвращает:
- номер колонки с учётом табуляции pos (первая колонка - 1)
© 1993, 2020, Oracle and/or its affiliates. All rights reserved.
Documentation extracted from Debian's OpenJDK Development Kit package.
Licensed under the GNU General Public License, version 2, with the Classpath Exception.
Various third party code in OpenJDK is licensed under different licenses (see Debian package).
Java and OpenJDK are trademarks or registered trademarks of Oracle and/or its affiliates.
https://docs.oracle.com/en/java/javase/11/docs/api/jdk.compiler/com/sun/source/tree/LineMap.html