utf16OffsetAtByte method
Implementation
@override
int utf16OffsetAtByte(int byteOffset) {
RangeError.checkValueInInterval(byteOffset, 0, _byteLength, 'byteOffset');
final row = _lineAtByte(byteOffset);
var result = _lineUtf16Starts[row];
for (var index = _lineStarts[row]; index < byteOffset; index++) {
final byte = byteAt(index);
if ((byte & 0xc0) == 0x80) continue;
result += byte >= 0xf0 ? 2 : 1;
}
return result;
}