Module Decompress_impl.RFC1951_deflate
type ('i, 'o) t = {hold : int;bits : int;temp : ([ Safe.ro | Safe.wo ], 'o) Safe.t;o_off : int;o_pos : int;o_len : int;i_off : int;i_pos : int;i_len : int;level : int;wbits : int;write : int;adler : Checkseum.Adler32.t;state : ('i, 'o) state;wi : 'i B.t;wo : 'o B.t;
}and ('i, 'o) state = | MakeBlock of ('i, 'o) block| WriteBlock of ('i, 'o) k| FastBlock of (int * int) array * (int * int) array * Hunk.t Q.t * code * flush| AlignBlock of F.t option * bool| FixedBlock of F.t| AlignF of ('i, 'o) k| Finish of int| Exception of error
and ('i, 'o) res = | Cont of ('i, 'o) t| Wait of ('i, 'o) t| Flush of ('i, 'o) t| Ok of ('i, 'o) t| Error of ('i, 'o) t * error
and flush = | Sync of F.t| Partial of F.t| Full| Final
and code = | Length| ExtLength| Dist| ExtDist
and meth = | PARTIAL| SYNC| FULL
val await : ('i, 'o) t -> ('i, 'o) resval error : ('i, 'o) t -> error -> ('i, 'o) resval ok : ('i, 'o) t -> int -> ('i, 'o) resval put_byte :
ctor:
(('a -> ([< `Rd | `Wr Wr ] as 'b, 'c) Safe.t -> ('d, 'c) t -> ('d, 'c) res) ->
('d, 'c) state) ->
int ->
('a -> ('b, 'c) Safe.t -> ('d, 'c) t -> ('d, 'c) res) ->
'a ->
('b, 'c) Safe.t ->
('d, 'c) t ->
('d, 'c) resval put_short_lsb :
ctor:
(('a -> ([< `Rd | `Wr Wr ] as 'b, 'c) Safe.t -> ('d, 'c) t -> ('d, 'c) res) ->
('d, 'c) state) ->
int ->
('a -> ('b, 'c) Safe.t -> ('d, 'c) t -> ('d, 'c) res) ->
'a ->
('b, 'c) Safe.t ->
('d, 'c) t ->
('d, 'c) resval align :
ctor:
(('a -> ([< `Rd | `Wr Wr ] as 'b, 'c) Safe.t -> ('d, 'c) t -> ('d, 'c) res) ->
('d, 'c) state) ->
('a -> ('b, 'c) Safe.t -> ('d, 'c) t -> ('d, 'c) res) ->
'a ->
('b, 'c) Safe.t ->
('d, 'c) t ->
('d, 'c) resval put_bits :
ctor:
(('a -> ([< `Rd | `Wr Wr ] as 'b, 'c) Safe.t -> ('d, 'c) t -> ('d, 'c) res) ->
('d, 'c) state) ->
(int * int) ->
('a -> ('b, 'c) Safe.t -> ('d, 'c) t -> ('d, 'c) res) ->
'a ->
('b, 'c) Safe.t ->
('d, 'c) t ->
('d, 'c) resval put_bit :
ctor:
(('a -> ([< `Rd | `Wr Wr ] as 'b, 'c) Safe.t -> ('d, 'c) t -> ('d, 'c) res) ->
('d, 'c) state) ->
bool ->
('a -> ('b, 'c) Safe.t -> ('d, 'c) t -> ('d, 'c) res) ->
'a ->
('b, 'c) Safe.t ->
('d, 'c) t ->
('d, 'c) resval get_tree_symbols :
int ->
int array ->
int ->
int array ->
int array * int arrayval block_of_level :
witness:'a L.B.t ->
wbits:int ->
?frequencies:F.t ->
int ->
('a, 'b) blockval zip : 'a array -> 'b array -> ('a * 'b) arrayval write_fast_block :
'a ->
([< `Rd | `Wr Wr ], 'b) Safe.t ->
('c, 'b) t ->
(int * int) array ->
(int * int) array ->
Hunk.t Q.t ->
code ->
flush ->
('c, 'b) resval flush : int -> int -> ('a, 'b) t -> ('a, 'b) tval get_frequencies : ('a, 'b) t -> F.tval set_frequencies :
?paranoid:bool ->
(int array * int array) ->
('a, 'b) t ->
('a, 'b) tval to_final : 'a -> flushval to_full : 'a -> flushval finish : ('a, 'a) t -> ('a, 'a) tval no_flush : int -> int -> ('a, 'b) t -> ('a, 'b) tval partial_flush : int -> int -> ('a, 'a) t -> ('a, 'a) tval sync_flush : int -> int -> ('a, 'a) t -> ('a, 'a) tval full_flush : int -> int -> ('a, 'a) t -> ('a, 'a) tval flush_of_meth : meth -> int -> int -> ('a, 'a) t -> ('a, 'a) tval eval :
'a ->
'a ->
('a, 'a) t ->
[> `Await of ('a, 'a) t
| `End of ('a, 'a) t
| `Error of ('a, 'a) t * error
| `Flush of ('a, 'a) t ]val used_in : ('a, 'b) t -> intval used_out : ('a, 'b) t -> intval bits_remaining : ('a, 'b) t -> intval default : witness:'a Safe.B.t -> ?wbits:int -> int -> ('a, 'a) tinclude sig ... end
val to_result :
'a ->
'a ->
?meth:(meth * int) ->
('a -> int option -> int) ->
('a -> int -> int) ->
('a, 'a) t ->
(('a, 'a) t, error) resultval bytes :
'a ->
'a ->
?meth:(meth * int) ->
('a -> int option -> int) ->
('a -> int -> int) ->
('a, 'a) t ->
(('a, 'a) t, error) resultval bigstring :
'a ->
'a ->
?meth:(meth * int) ->
('a -> int option -> int) ->
('a -> int -> int) ->
('a, 'a) t ->
(('a, 'a) t, error) result