encodeBytes function
Append length-delimited raw bytes to buffer.
Format: varint(length) + raw bytes. Reference: https://protobuf.dev/programming-guides/encoding/#length-types
Implementation
List<int> encodeBytes(List<int> buffer, List<int> data) {
encodeVarint(buffer, data.length);
buffer.addAll(data);
return buffer;
}