package decompress

  1. Overview
  2. Docs

non-blocking and functionnal implementation of Deflate

type error
module F : sig ... end
type ('i, 'o) t
val pp_error : Format.formatter -> error -> unit
val pp : Format.formatter -> ('i, 'o) t -> unit
val get_frequencies : ('i, 'o) t -> F.t
val set_frequencies : ?paranoid:bool -> F.t -> ('i, 'o) t -> ('i, 'o) t
val finish : ('a, 'a) t -> ('a, 'a) t
val no_flush : int -> int -> ('a, 'a) t -> ('a, 'a) t
val partial_flush : int -> int -> ('a, 'a) t -> ('a, 'a) t
val sync_flush : int -> int -> ('a, 'a) t -> ('a, 'a) t
val full_flush : int -> int -> ('a, 'a) t -> ('a, 'a) t
type meth =
  1. | PARTIAL
  2. | SYNC
  3. | FULL
val flush_of_meth : meth -> int -> int -> ('a, 'a) t -> ('a, 'a) t
val flush : int -> int -> ('i, 'o) t -> ('i, 'o) t
val eval : 'a -> 'a -> ('a, 'a) t -> [ `Await of ('a, 'a) t | `Flush of ('a, 'a) t | `End of ('a, 'a) t | `Error of ('a, 'a) t * error ]
val used_in : ('i, 'o) t -> int
val used_out : ('i, 'o) t -> int
val default : witness:'a Buffer.t -> ?wbits:int -> int -> ('a, 'a) t
val to_result : 'a -> 'a -> ?meth:(meth * int) -> ('a -> int option -> int) -> ('a -> int -> int) -> ('a, 'a) t -> (('a, 'a) t, error) result
val bytes : Bytes.t -> Bytes.t -> ?meth:(meth * int) -> (Bytes.t -> int option -> int) -> (Bytes.t -> int -> int) -> (Bytes.t, Bytes.t) t -> ((Bytes.t, Bytes.t) t, error) result
val bigstring : Buffer.Bigstring.t -> Buffer.Bigstring.t -> ?meth:(meth * int) -> (Buffer.Bigstring.t -> int option -> int) -> (Buffer.Bigstring.t -> int -> int) -> (Buffer.Bigstring.t, Buffer.Bigstring.t) t -> ((Buffer.Bigstring.t, Buffer.Bigstring.t) t, error) result