Should be called in ascending order. Otherwise, call
lineCounter.lineStarts.sort()
before calling linePos()
.
Performs a binary search and returns the 1-indexed { line, col }
position of offset
. If line === 0
, addNewLine
has never been
called or offset
is before the first known newline.
Tracks newlines during parsing in order to provide an efficient API for determining the one-indexed
{ line, col }
position for any offset within the input.