com.sun.source.tree

## Interface LineMap

    @Exported
    public interface LineMap

Provides methods to convert between character positions and line numbers for a compilation unit.

Since:
  1.6

### Method Summary

All Methods Instance Methods Abstract Methods
`long` `getColumnNumber(long pos)` Find the column for a character position.
`long` `getLineNumber(long pos)` Find the line containing a position; a line termination character is on the line it terminates.
`long` `getPosition(long line, long column)` Find the position corresponding to a (line,column).
`long` `getStartPosition(long line)` Find the start position of a line.

### Method Detail

#### getStartPosition

    long getStartPosition(long line)

Find the start position of a line.

Parameters:
  `line` - line number (beginning at 1)
Returns:
  position of first character in line
Throws:
  `IndexOutOfBoundsException` - if `lineNumber < 1` if `lineNumber > no. of lines`

#### getPosition

    long getPosition(long line,
                     long column)

Find the position corresponding to a (line,column).

Parameters:
  `line` - line number (beginning at 1)
  `column` - tab-expanded column number (beginning 1)
Returns:
  position of character
Throws:
  `IndexOutOfBoundsException` - if `line < 1` if `line > no. of lines`

#### getLineNumber

    long getLineNumber(long pos)

Find the line containing a position; a line termination character is on the line it terminates.

Parameters:
  `pos` - character offset of the position
Returns:
  the line number of pos (first line is 1)

#### getColumnNumber

    long getColumnNumber(long pos)

Find the column for a character position. Tab characters preceding the position on the same line will be expanded when calculating the column number.

Parameters:
  `pos` - character offset of the position
Returns:
  the tab-expanded column number of pos (first column is 1)