Readonly
contextContext used by the chunker. It usually represents chunker configuration like max, min chunk size etc. Usually chunker implementation library will provide utility function to initalize a context.
Optional
Readonly
nameChunker takes a context:T
object, buffer
containing bytes to be
chunked. Chunker is expected to return array of chunk byte lengths (from
the start of the buffer). If returned array is empty that signifies that
buffer contains no valid chunks.
Note: Consumer of the chunker is responsible for dealing with remaining
bytes in the buffer, that is unless end
is true signalling chunker that
end of the stream is reached.
Optional
end: booleanGenerated using TypeDoc
Chunker API can be used to slice up the file content according to specific logic. It is designed with following properties in mind:
Stateless - Chunker does not retain any state across the calls. This implies that calling
cut
function on the same bytes would produce same array of sizes. Do note however, that when chunker is used to chunk stream of data it will be callers responsibility to carry remaining bytes in subsequent calls.No side effects - Chunker does not read from the underlying source and MUST not mutate given buffer nor any other outside references (including passed arguments). If your chunker is unable to operate optimally without interal state changes consider using
StatefulChunker
instead.Does not manage resources - Chunker does not manage any resources, all the data is passed in and managed by the caller, which allows it to control amount of momory to be used.