package decompress

  1. Overview
  2. Docs
Implementation of Zlib and GZip in OCaml

Install

Dune Dependency

Authors

Maintainers

Sources

decompress-v1.3.0.tbz
sha256=de149896939be13fedec46a4581121d5ab74850a2241d08e6aa8ae4bb18c52c4
sha512=324b4c2daef6ddaae2d28edcdadec8e29ebcc408eed2fed3fe4a3cb298cd78864d9ac939ae794c6ff8d9f5233a7cfa6feee62aa683ed3eb73f53ab8ea74cbffb

doc/decompress.de/De/Higher/index.html

Module De.HigherSource

Sourceval compress : w:window -> q:Queue.t -> refill:(bigstring -> int) -> flush:(bigstring -> int -> unit) -> bigstring -> bigstring -> unit

compress ~w ~q ~refill ~flush i o is Zlib.compress (with ~header:false) provided by camlzip package.

  • w is the window used by LZ77 compression algorithm.
  • q is shared-queue between compression algorithm and DEFLATE encoder.
  • i is input buffer.
  • o is output buffer.

When compress wants more input, it calls refill with i. The client returns how many bytes he wrote into i. If he returns 0, he signals end of input.

When compress has written output buffer, it calls flush with o and how many bytes it wrote.

Sourceval uncompress : w:window -> refill:(bigstring -> int) -> flush:(bigstring -> int -> unit) -> bigstring -> bigstring -> (unit, [> `Msg of string ]) result

uncompress ~w ~refill ~flush i o is Zlib.uncompress (with ~header:false) provided by camlzip package.

  • w is the window used by LZ77 uncompression algorithm
  • i is input buffer.
  • o is output buffer.

When compress wants more input, it calls refill with i. The client returns how many bytes he wrote into i. If he returns 0, he signals end of input.

When compress has written output buffer, it calls flush with o and how many bytes it wrote.

Sourceval of_string : o:bigstring -> w:window -> string -> flush:(bigstring -> int -> unit) -> (unit, [> `Msg of string ]) result
Sourceval to_string : ?buffer:int -> w:window -> q:Queue.t -> refill:(bigstring -> int) -> bigstring -> string
OCaml

Innovation. Community. Security.