Module jdk.compiler

Interface LineMap


public interface LineMap
提供了在编译单元中字符位置和行号之间进行转换的方法。
自版本:
1.6
  • Method Summary

    Modifier and Type
    Method
    Description
    long
    getColumnNumber(long pos)
    查找字符位置对应的列。
    long
    getLineNumber(long pos)
    查找包含特定位置的行;行终止字符位于终止行上。
    long
    getPosition(long line, long column)
    查找与给定 (行,列) 对应的位置。
    long
    getStartPosition(long line)
    查找行的起始位置。
  • Method Details

    • getStartPosition

      long getStartPosition(long line)
      查找行的起始位置。
      参数:
      line - 行号(从1开始)
      返回:
      行中第一个字符的位置
      抛出:
      IndexOutOfBoundsException - 如果 lineNumber < 1 或者 lineNumber > 行数
    • getPosition

      long getPosition(long line, long column)
      查找与给定 (行,列) 对应的位置。
      参数:
      line - 行号(从1开始)
      column - 经过制表符扩展的列号(从1开始)
      返回:
      字符的位置
      抛出:
      IndexOutOfBoundsException - 如果 line < 1 或者 line > 行数
    • getLineNumber

      long getLineNumber(long pos)
      查找包含特定位置的行;行终止字符位于终止行上。
      参数:
      pos - 位置的字符偏移量
      返回:
      位置的行号(第一行为1)
    • getColumnNumber

      long getColumnNumber(long pos)
      查找字符位置对应的列。计算列号时,同一行上位于位置之前的制表符将被扩展。
      参数:
      pos - 位置的字符偏移量
      返回:
      位置的经过制表符扩展的列号(第一列为1)