getLine method
Gets the 0-based line corresponding to offset
.
Implementation
int getLine(int offset) {
if (offset < 0) {
throw new RangeError("Offset may not be negative, was $offset.");
} else if (offset > length) {
throw new RangeError("Offset $offset must not be greater than the number "
"of characters in the file, $length.");
}
if (offset < _lineStarts.first) return -1;
if (offset >= _lineStarts.last) return _lineStarts.length - 1;
if (_isNearCachedLine(offset)) return _cachedLine;
_cachedLine = _binarySearch(offset) - 1;
return _cachedLine;
}