encodeIdbMeta function
Encodes logical length and chunk size into a 20-byte metadata record.
Implementation
Uint8List encodeIdbMeta(int logicalLength, int chunkSize) {
if (logicalLength < 0) throw RangeError.value(logicalLength, 'length');
final data = ByteData(_metaBytes);
data.setUint32(0, _metaMagic, Endian.little);
data.setUint32(4, _metaVersion, Endian.little);
data.setUint32(8, chunkSize, Endian.little);
data.setUint32(12, logicalLength & 0xFFFFFFFF, Endian.little);
data.setUint32(16, logicalLength ~/ 0x100000000, Endian.little);
return data.buffer.asUint8List();
}