bcsSliverData static method
BCS-encode a SliverData for storage node PUT requests.
BCS layout: Symbols { data: byteVector, symbol_size: u16 } || index: u16
Implementation
static Uint8List bcsSliverData(SliverData sliver) {
final builder = BytesBuilder(copy: false);
// Symbols.data: BCS byteVector = ULEB128(length) + bytes
_writeUleb128(builder, sliver.data.length);
builder.add(sliver.data);
// Symbols.symbol_size: u16 LE
_writeU16(builder, sliver.symbolSize);
// index: u16 LE
_writeU16(builder, sliver.index);
return builder.toBytes();
}