Module Bytesrw_zlib.Deflate

deflate streams.

Decompress

val decompress_reads : ?leftover:bool -> unit -> Bytesrw.Bytes.Reader.filter

decompress_reads () r filters the reads of r by decompressing a deflate stream. If leftover is:

  • false (default), the reader errors if there is leftover data after the end of the deflate stream.
  • true the reader decompresses one deflate stream. Once the reader returns Bytesrw.Bytes.Slice.eod, r is positioned exactly after the end of the deflate stream and can be read again to perform other non-filtered reads.
val decompress_writes : unit -> Bytesrw.Bytes.Writer.filter

decompress_writes () w ~eod filters writes on w by decompressing a deflate stream until Bytesrw.Bytes.Slice.eod is written, if leftover data remains an error is raised. If eod is false, the last Bytesrw.Bytes.Slice.eod is not written on w and at this point w can be used again to perform other non-filtered writes.

Compress

val compress_reads : ?level:level -> unit -> Bytesrw.Bytes.Reader.filter

compress_reads ~level () r filters the reads of r by compressing them to a deflate stream at level level (defaults to default_compression).

val compress_writes : ?level:level -> unit -> Bytesrw.Bytes.Writer.filter

compress_writes ~level w ~eod filters writes on w by compressing them to a deflate stream at level level (defaults to default_compression) until Bytesrw.Bytes.Slice.eod is written. If eod is false, the latter is not written on w and at that point w can be used again to perform non-filtered writes.