Int8List.sublistView constructor - Int8List - dart:typed_data library (original) (raw)
Int8List.sublistView(
Creates an Int8List view on a range of elements of data
.
Creates a view on the range of data.buffer
which corresponds to the elements of data
from start
until end
. If data
is a typed data list, like Uint16List, then the view is on the bytes of the elements with indices from start
until end
. If data
is a ByteData, it's treated like a list of bytes.
If provided, start
and end
must satisfy
0 ≤ start
≤ end
≤ elementCount
where elementCount is the number of elements in data
, which is the same as the List.length of a typed data list.
If omitted, start
defaults to zero and end
to elementCount.
Implementation
factory Int8List.sublistView(TypedData data, [int start = 0, int? end]) {
int elementSize = data.elementSizeInBytes;
end = RangeError.checkValidRange(
start,
end,
data.lengthInBytes ~/ elementSize,
);
return data.buffer.asInt8List(
data.offsetInBytes + start * elementSize,
(end - start) * elementSize,
);
}