fn decodeBlockReader(dest: *RingBuffer, source: anytype, block_header: frame.Zstandard.Block.Header, decode_state: *DecodeState, block_size_max: usize, literals_buffer: []u8, sequence_buffer: []u8) !void
[src]
Decode a single block from source
into dest
. Literal and sequence data from the block is copied into literals_buffer
and sequence_buffer
, which must be large enough or error.LiteralsBufferTooSmall
and error.SequenceBufferTooSmall
are returned (the maximum block size is an upper bound for the size of both buffers). See decodeBlock
and decodeBlockRingBuffer
for function that can decode a block without these extra copies. error.EndOfStream
is returned if source
does not contain enough bytes.
Parameters
dest: *RingBuffer,
source: anytype,
decode_state: *DecodeState,
block_size_max: usize,
literals_buffer: []u8,
sequence_buffer: []u8,