package decompress
Install
Dune Dependency
Authors
Maintainers
Sources
sha256=de149896939be13fedec46a4581121d5ab74850a2241d08e6aa8ae4bb18c52c4
sha512=324b4c2daef6ddaae2d28edcdadec8e29ebcc408eed2fed3fe4a3cb298cd78864d9ac939ae794c6ff8d9f5233a7cfa6feee62aa683ed3eb73f53ab8ea74cbffb
doc/decompress.zl/Zl/index.html
Module Zl
Source
ZLIB layer.
ZLIB is a standard on top of RFC1951. It uses the De
implementation with the LZ77 compression algorithm. Module provides non-blocking streaming codec to decode and encode ZLIB encoding. It can efficiently work payload by payload without blocking IO.
MirageOS compatibility.
The type for bigstring
.
ZLIB Decoder.
Unlike de
, zl
provides a referentially transparent Inf.decoder
. The client must use a Inf.decoder
given by Inf.decode
instead of a decoder
given to Inf.decode
. A common use of zl
is:
let rec go d0 = match Inf.decode d0 with
| `Await d1 -> ... go d1
| `Flush d1 -> ... go d1
| _ -> ... in
ZLIB Encoder.
ZLIB encoder is glue between the LZ77 algorithm and the DEFLATE encoder, prefixed with a ZLIB header. Any deal with compression algorithm is not possible on this layer (see De
for more details). As Inf
, and unlike De
, Zl
provides a referentially transparent encoder.
The client must use the Def.encoder
given by Def.encode
instead a encoder
given to Def.encode
.