getOffset method Null safety
Gets the offset for a line
and column
.
column
defaults to 0.
Implementation
int getOffset(int line, [int? column]) {
column ??= 0;
if (line < 0) {
throw RangeError('Line may not be negative, was $line.');
} else if (line >= lines) {
throw RangeError('Line $line must be less than the number of '
'lines in the file, $lines.');
} else if (column < 0) {
throw RangeError('Column may not be negative, was $column.');
}
final result = _lineStarts[line] + column;
if (result > length ||
(line + 1 < lines && result >= _lineStarts[line + 1])) {
throw RangeError("Line $line doesn't have $column columns.");
}
return result;
}