sig
val __pa_ounit_275876e34cf609db118f3d84b799a790 : string
module Common :
sig
type pos = int
type pos_ref = pos ref
type buf =
(char, Bigarray.int8_unsigned_elt, Bigarray.c_layout)
Bigarray.Array1.t
val create_buf : pos -> buf
val check_pos : buf -> pos -> unit
val check_next : buf -> pos -> unit
val safe_get_pos : buf -> pos_ref -> pos
val blit_string_buf :
?src_pos:pos -> string -> ?dst_pos:pos -> buf -> len:pos -> unit
val blit_buf_string :
?src_pos:pos -> buf -> ?dst_pos:pos -> string -> len:pos -> unit
val blit_buf :
?src_pos:pos -> src:buf -> ?dst_pos:pos -> dst:buf -> pos -> unit
exception Buffer_short
exception No_variant_match
module ReadError :
sig
type t =
Bin_prot.Common.ReadError.t =
Neg_int8
| Int_code
| Int_overflow
| Nat0_code
| Nat0_overflow
| Int32_code
| Int64_code
| Nativeint_code
| Unit_code
| Bool_code
| Option_code
| String_too_long
| Variant_tag
| Array_too_long
| Hashtbl_too_long
| Sum_tag of string
| Variant of string
| Poly_rec_bound of string
| Variant_wrong_type of string
| Silly_type of string
| Empty_type of string
val to_string : t -> string
end
exception Read_error of ReadError.t * pos
exception Read_exc of exn * pos
exception Poly_rec_write of string
exception Empty_type of string
val raise_read_error : ReadError.t -> pos -> 'a
val raise_read_exc : exn -> pos -> 'a
val raise_concurrent_modification : string -> 'a
val array_bound_error : unit -> 'a
type vec32 =
(float, Bigarray.float32_elt, Bigarray.fortran_layout)
Bigarray.Array1.t
type vec64 =
(float, Bigarray.float64_elt, Bigarray.fortran_layout)
Bigarray.Array1.t
type vec = vec64
type mat32 =
(float, Bigarray.float32_elt, Bigarray.fortran_layout)
Bigarray.Array2.t
type mat64 =
(float, Bigarray.float64_elt, Bigarray.fortran_layout)
Bigarray.Array2.t
type mat = mat64
val copy_htbl_list :
('a, 'b) Hashtbl.t -> ('a * 'b) list -> ('a, 'b) Hashtbl.t
external variant_of_int : pos -> [> ] = "%identity"
external unsafe_blit_buf :
src_pos:pos -> src:buf -> dst_pos:pos -> dst:buf -> len:pos -> unit
= "bin_prot_blit_buf_stub"
external unsafe_blit_string_buf :
src_pos:pos -> string -> dst_pos:pos -> buf -> len:pos -> unit
= "bin_prot_blit_string_buf_stub" "noalloc"
external unsafe_blit_buf_string :
src_pos:pos -> buf -> dst_pos:pos -> string -> len:pos -> unit
= "bin_prot_blit_buf_string_stub" "noalloc"
end
module Nat0 :
sig
type t = Bin_prot.Nat0.t
val of_int : Common.pos -> t
external unsafe_of_int : Common.pos -> t = "%identity"
end
module Unsafe_common :
sig
type sptr = Bin_prot.Unsafe_common.sptr
type eptr = Bin_prot.Unsafe_common.eptr
type sptr_ptr = Bin_prot.Unsafe_common.sptr_ptr
external get_sptr : Common.buf -> pos:Common.pos -> sptr
= "get_buf_ptr_stub" "noalloc"
external get_eptr : Common.buf -> pos:Common.pos -> eptr
= "get_buf_ptr_stub" "noalloc"
external shift_sptr : sptr -> Common.pos -> sptr = "shift_sptr_stub"
"noalloc"
external get_eptr_from_sptr_ptr : sptr_ptr -> pos:Common.pos -> eptr
= "get_eptr_from_sptr_ptr" "noalloc"
external get_buf_pos : start:sptr -> cur:sptr -> Common.pos
= "get_buf_pos_stub" "noalloc"
external get_safe_buf_pos :
Common.buf -> start:sptr -> cur:sptr -> Common.pos
= "get_safe_buf_pos_stub" "noalloc"
external alloc_sptr_ptr : Common.buf -> pos:Common.pos -> sptr_ptr
= "alloc_sptr_ptr_stub" "noalloc"
external dealloc_sptr_ptr : Common.buf -> sptr_ptr -> Common.pos
= "dealloc_sptr_ptr_stub" "noalloc"
external get_sptr_ptr : sptr_ptr -> Common.buf -> Common.pos
= "get_sptr_ptr_stub" "noalloc"
external set_sptr_ptr :
sptr_ptr -> Common.buf -> pos:Common.pos -> unit
= "set_sptr_ptr_stub" "noalloc"
external get_sptr_ptr_sptr : sptr_ptr -> sptr
= "get_sptr_ptr_sptr_stub" "noalloc"
external set_sptr_ptr_sptr : sptr_ptr -> sptr -> unit
= "set_sptr_ptr_sptr_stub" "noalloc"
external get_ptr_string : sptr -> eptr -> string
= "get_ptr_string_stub"
val get_read_init :
Common.buf -> pos_ref:Common.pos ref -> sptr_ptr * eptr
end
module Unsafe_read_c :
sig
exception Error of Common.ReadError.t
val raise_variant_wrong_type : string -> 'a
type 'a reader = Unsafe_common.sptr_ptr -> Unsafe_common.eptr -> 'a
type ('a, 'b) reader1 = 'a reader -> 'b reader
type ('a, 'b, 'c) reader2 = 'a reader -> ('b, 'c) reader1
type ('a, 'b, 'c, 'd) reader3 = 'a reader -> ('b, 'c, 'd) reader2
val bin_read_unit : unit reader
val bin_read_bool : bool reader
val bin_read_string : string reader
val bin_read_char : char reader
val bin_read_int : Common.pos reader
val bin_read_float : float reader
val bin_read_int32 : int32 reader
val bin_read_int64 : int64 reader
val bin_read_nativeint : nativeint reader
val bin_read_nat0 : Nat0.t reader
val bin_read_ref : ('a, 'a ref) reader1
val bin_read_lazy : ('a, 'a lazy_t) reader1
val bin_read_option : ('a, 'a option) reader1
val bin_read_pair : ('a, 'b, 'a * 'b) reader2
val bin_read_triple : ('a, 'b, 'c, 'a * 'b * 'c) reader3
val bin_read_list : ('a, 'a list) reader1
val bin_read_array : ('a, 'a array) reader1
val bin_read_hashtbl : ('a, 'b, ('a, 'b) Hashtbl.t) reader2
val bin_read_float32_vec : Common.vec32 reader
val bin_read_float64_vec : Common.vec reader
val bin_read_vec : Common.vec reader
val bin_read_float32_mat : Common.mat32 reader
val bin_read_float64_mat : Common.mat reader
val bin_read_mat : Common.mat reader
val bin_read_bigstring : Common.buf reader
val bin_read_float_array : float array reader
val bin_read_variant_int : Common.pos reader
val bin_read_variant_tag : [> ] reader
val bin_read_raw_string :
(string -> pos:Common.pos -> len:Common.pos -> unit) reader
val bin_read_int_8bit : Common.pos reader
val bin_read_int_16bit : Common.pos reader
val bin_read_int_32bit : Common.pos reader
val bin_read_int_64bit : Common.pos reader
val bin_read_int64_bits : int64 reader
val bin_read_network16_int : Common.pos reader
val bin_read_network32_int : Common.pos reader
val bin_read_network32_int32 : int32 reader
val bin_read_network64_int : Common.pos reader
val bin_read_network64_int64 : int64 reader
end
module Read_ml :
sig
type 'a reader = Common.buf -> pos_ref:Common.pos_ref -> 'a
type ('a, 'b) reader1 = 'a reader -> 'b reader
type ('a, 'b, 'c) reader2 = 'a reader -> ('b, 'c) reader1
type ('a, 'b, 'c, 'd) reader3 = 'a reader -> ('b, 'c, 'd) reader2
val bin_read_unit : unit reader
val bin_read_bool : bool reader
val bin_read_string : string reader
val bin_read_char : char reader
val bin_read_int : Common.pos reader
val bin_read_nat0 : Nat0.t reader
val bin_read_float : float reader
val bin_read_int32 : int32 reader
val bin_read_int64 : int64 reader
val bin_read_nativeint : nativeint reader
val bin_read_ref : ('a, 'a ref) reader1
val bin_read_lazy : ('a, 'a lazy_t) reader1
val bin_read_option : ('a, 'a option) reader1
val bin_read_pair : ('a, 'b, 'a * 'b) reader2
val bin_read_triple : ('a, 'b, 'c, 'a * 'b * 'c) reader3
val bin_read_list : ('a, 'a list) reader1
val bin_read_array : ('a, 'a array) reader1
val bin_read_hashtbl : ('a, 'b, ('a, 'b) Hashtbl.t) reader2
val bin_read_float32_vec : Common.vec32 reader
val bin_read_float64_vec : Common.vec reader
val bin_read_vec : Common.vec reader
val bin_read_float32_mat : Common.mat32 reader
val bin_read_float64_mat : Common.mat reader
val bin_read_mat : Common.mat reader
val bin_read_bigstring : Common.buf reader
val bin_read_float_array : float array reader
val bin_read_variant_int : Common.pos reader
val bin_read_variant_tag : [> ] reader
val bin_read_int_8bit : Common.pos reader
val bin_read_int_16bit : Common.pos reader
val bin_read_int_32bit : Common.pos reader
val bin_read_int_64bit : Common.pos reader
val bin_read_int64_bits : int64 reader
val bin_read_network16_int : Common.pos reader
val bin_read_network32_int : Common.pos reader
val bin_read_network32_int32 : int32 reader
val bin_read_network64_int : Common.pos reader
val bin_read_network64_int64 : int64 reader
end
module Unsafe_write_c :
sig
type 'a writer =
Unsafe_common.sptr ->
Unsafe_common.eptr -> 'a -> Unsafe_common.sptr
type ('a, 'b) writer1 = 'a writer -> 'b writer
type ('a, 'b, 'c) writer2 = 'a writer -> ('b, 'c) writer1
type ('a, 'b, 'c, 'd) writer3 = 'a writer -> ('b, 'c, 'd) writer2
val bin_write_unit : unit writer
val bin_write_bool : bool writer
val bin_write_string : string writer
val bin_write_char : char writer
val bin_write_int : Common.pos writer
val bin_write_float : float writer
val bin_write_int32 : int32 writer
val bin_write_int64 : int64 writer
val bin_write_nativeint : nativeint writer
val bin_write_nat0 : Nat0.t writer
val bin_write_ref : ('a, 'a ref) writer1
val bin_write_lazy : ('a, 'a lazy_t) writer1
val bin_write_option : ('a, 'a option) writer1
val bin_write_pair : ('a, 'b, 'a * 'b) writer2
val bin_write_triple : ('a, 'b, 'c, 'a * 'b * 'c) writer3
val bin_write_list : ('a, 'a list) writer1
val bin_write_array : ('a, 'a array) writer1
val bin_write_hashtbl : ('a, 'b, ('a, 'b) Hashtbl.t) writer2
val bin_write_float32_vec : Common.vec32 writer
val bin_write_float64_vec : Common.vec writer
val bin_write_vec : Common.vec writer
val bin_write_float32_mat : Common.mat32 writer
val bin_write_float64_mat : Common.mat writer
val bin_write_mat : Common.mat writer
val bin_write_bigstring : Common.buf writer
val bin_write_float_array : float array writer
val bin_write_variant_tag : [> ] writer
val bin_write_raw_string :
Unsafe_common.sptr ->
Unsafe_common.eptr ->
string -> pos:Common.pos -> len:Common.pos -> Unsafe_common.sptr
val bin_write_int_8bit : Common.pos writer
val bin_write_int_16bit : Common.pos writer
val bin_write_int_32bit : Common.pos writer
val bin_write_int_64bit : Common.pos writer
val bin_write_int64_bits : int64 writer
val bin_write_network16_int : Common.pos writer
val bin_write_network32_int : Common.pos writer
val bin_write_network32_int32 : int32 writer
val bin_write_network64_int : Common.pos writer
val bin_write_network64_int64 : int64 writer
val bin_write_array_no_length : ('a, 'a array) writer1
end
module Write_ml :
sig
type 'a writer = Common.buf -> pos:Common.pos -> 'a -> Common.pos
type ('a, 'b) writer1 = 'a writer -> 'b writer
type ('a, 'b, 'c) writer2 = 'a writer -> ('b, 'c) writer1
type ('a, 'b, 'c, 'd) writer3 = 'a writer -> ('b, 'c, 'd) writer2
val bin_write_unit : unit writer
val bin_write_bool : bool writer
val bin_write_string : string writer
val bin_write_char : char writer
val bin_write_int : Common.pos writer
val bin_write_nat0 : Nat0.t writer
val bin_write_float : float writer
val bin_write_int32 : int32 writer
val bin_write_int64 : int64 writer
val bin_write_nativeint : nativeint writer
val bin_write_ref : ('a, 'a ref) writer1
val bin_write_lazy : ('a, 'a lazy_t) writer1
val bin_write_option : ('a, 'a option) writer1
val bin_write_pair : ('a, 'b, 'a * 'b) writer2
val bin_write_triple : ('a, 'b, 'c, 'a * 'b * 'c) writer3
val bin_write_list : ('a, 'a list) writer1
val bin_write_array : ('a, 'a array) writer1
val bin_write_hashtbl : ('a, 'b, ('a, 'b) Hashtbl.t) writer2
val bin_write_float32_vec : Common.vec32 writer
val bin_write_float64_vec : Common.vec writer
val bin_write_vec : Common.vec writer
val bin_write_float32_mat : Common.mat32 writer
val bin_write_float64_mat : Common.mat writer
val bin_write_mat : Common.mat writer
val bin_write_bigstring : Common.buf writer
val bin_write_float_array : float array writer
val bin_write_variant_tag : [> ] writer
val bin_write_int_8bit : Common.pos writer
val bin_write_int_16bit : Common.pos writer
val bin_write_int_32bit : Common.pos writer
val bin_write_int_64bit : Common.pos writer
val bin_write_int64_bits : int64 writer
val bin_write_network16_int : Common.pos writer
val bin_write_network32_int : Common.pos writer
val bin_write_network32_int32 : int32 writer
val bin_write_network64_int : Common.pos writer
val bin_write_network64_int64 : int64 writer
val bin_write_array_no_length : ('a, 'a array) writer1
end
module Map_to_safe :
sig
type 'a reader = 'a Read_ml.reader
type ('a, 'b) reader1 = 'a Unsafe_read_c.reader -> 'b reader
type ('a, 'b, 'c) reader2 = 'a Unsafe_read_c.reader -> ('b, 'c) reader1
type ('a, 'b, 'c, 'd) reader3 =
'a Unsafe_read_c.reader -> ('b, 'c, 'd) reader2
type 'a writer = 'a Write_ml.writer
type ('a, 'b) writer1 = 'a Unsafe_write_c.writer -> 'b writer
type ('a, 'b, 'c) writer2 =
'a Unsafe_write_c.writer -> ('b, 'c) writer1
type ('a, 'b, 'c, 'd) writer3 =
'a Unsafe_write_c.writer -> ('b, 'c, 'd) writer2
end
module Size :
sig
type 'a sizer = 'a -> Common.pos
type ('a, 'b) sizer1 = 'a sizer -> 'b sizer
type ('a, 'b, 'c) sizer2 = 'a sizer -> ('b, 'c) sizer1
type ('a, 'b, 'c, 'd) sizer3 = 'a sizer -> ('b, 'c, 'd) sizer2
val bin_size_unit : unit sizer
val bin_size_bool : bool sizer
val bin_size_string : string sizer
val bin_size_char : char sizer
val bin_size_int : Common.pos sizer
val bin_size_float : float sizer
val bin_size_int32 : int32 sizer
val bin_size_int64 : int64 sizer
val bin_size_nativeint : nativeint sizer
val bin_size_nat0 : Nat0.t sizer
val bin_size_ref : ('a, 'a ref) sizer1
val bin_size_lazy_t : ('a, 'a lazy_t) sizer1
val bin_size_lazy : ('a, 'a lazy_t) sizer1
val bin_size_option : ('a, 'a option) sizer1
val bin_size_pair : ('a, 'b, 'a * 'b) sizer2
val bin_size_triple : ('a, 'b, 'c, 'a * 'b * 'c) sizer3
val bin_size_list : ('a, 'a list) sizer1
val bin_size_array : ('a, 'a array) sizer1
val bin_size_hashtbl : ('a, 'b, ('a, 'b) Hashtbl.t) sizer2
val bin_size_float32_vec : Common.vec32 sizer
val bin_size_float64_vec : Common.vec sizer
val bin_size_vec : Common.vec sizer
val bin_size_float32_mat : Common.mat32 sizer
val bin_size_float64_mat : Common.mat sizer
val bin_size_mat : Common.mat sizer
val bin_size_bigstring : Common.buf sizer
val bin_size_float_array : float array sizer
val bin_size_variant_tag : [> ] sizer
val bin_size_int_8bit : Common.pos sizer
val bin_size_int_16bit : Common.pos sizer
val bin_size_int_32bit : Common.pos sizer
val bin_size_int_64bit : Common.pos sizer
val bin_size_int64_bits : int64 sizer
val bin_size_network16_int : Common.pos sizer
val bin_size_network32_int : Common.pos sizer
val bin_size_network32_int32 : int32 sizer
val bin_size_network64_int : Common.pos sizer
val bin_size_network64_int64 : int64 sizer
val bin_size_array_no_length : ('a, 'a array) sizer1
end
module Type_class :
sig
type 'a writer =
'a Bin_prot.Type_class.writer = {
size : 'a Size.sizer;
write : 'a Map_to_safe.writer;
unsafe_write : 'a Unsafe_write_c.writer;
}
type 'a reader =
'a Bin_prot.Type_class.reader = {
read : 'a Map_to_safe.reader;
unsafe_read : 'a Unsafe_read_c.reader;
unsafe_vtag_read : (Common.pos -> 'a) Unsafe_read_c.reader;
}
type 'a t =
'a Bin_prot.Type_class.t = {
writer : 'a writer;
reader : 'a reader;
}
type 'a writer0 = 'a writer
type 'a reader0 = 'a reader
type 'a t0 = 'a t
module S1 :
sig
type ('a, 'b) writer = 'a writer0 -> 'b writer0
type ('a, 'b) reader = 'a reader0 -> 'b reader0
type ('a, 'b) t = 'a t0 -> 'b t0
end
module S2 :
sig
type ('a, 'b, 'c) writer = 'a writer0 -> ('b, 'c) S1.writer
type ('a, 'b, 'c) reader = 'a reader0 -> ('b, 'c) S1.reader
type ('a, 'b, 'c) t = 'a t0 -> ('b, 'c) S1.t
end
module S3 :
sig
type ('a, 'b, 'c, 'd) writer = 'a writer0 -> ('b, 'c, 'd) S2.writer
type ('a, 'b, 'c, 'd) reader = 'a reader0 -> ('b, 'c, 'd) S2.reader
type ('a, 'b, 'c, 'd) t = 'a t0 -> ('b, 'c, 'd) S2.t
end
val bin_writer_unit : unit writer0
val bin_reader_unit : unit reader0
val bin_unit : unit t0
val bin_writer_bool : bool writer0
val bin_reader_bool : bool reader0
val bin_bool : bool t0
val bin_writer_string : string writer0
val bin_reader_string : string reader0
val bin_string : string t0
val bin_writer_char : char writer0
val bin_reader_char : char reader0
val bin_char : char t0
val bin_writer_int : Common.pos writer0
val bin_reader_int : Common.pos reader0
val bin_int : Common.pos t0
val bin_writer_float : float writer0
val bin_reader_float : float reader0
val bin_float : float t0
val bin_writer_int32 : int32 writer0
val bin_reader_int32 : int32 reader0
val bin_int32 : int32 t0
val bin_writer_int64 : int64 writer0
val bin_reader_int64 : int64 reader0
val bin_int64 : int64 t0
val bin_writer_nativeint : nativeint writer0
val bin_reader_nativeint : nativeint reader0
val bin_nativeint : nativeint t0
val bin_writer_nat0 : Nat0.t writer0
val bin_reader_nat0 : Nat0.t reader0
val bin_nat0 : Nat0.t t0
val bin_writer_ref : ('a, 'a ref) S1.writer
val bin_reader_ref : ('a, 'a ref) S1.reader
val bin_ref : ('a, 'a ref) S1.t
val bin_writer_lazy : ('a, 'a lazy_t) S1.writer
val bin_reader_lazy : ('a, 'a lazy_t) S1.reader
val bin_lazy : ('a, 'a lazy_t) S1.t
val bin_writer_option : ('a, 'a option) S1.writer
val bin_reader_option : ('a, 'a option) S1.reader
val bin_option : ('a, 'a option) S1.t
val bin_writer_pair : ('a, 'b, 'a * 'b) S2.writer
val bin_reader_pair : ('a, 'b, 'a * 'b) S2.reader
val bin_pair : ('a, 'b, 'a * 'b) S2.t
val bin_writer_triple : ('a, 'b, 'c, 'a * 'b * 'c) S3.writer
val bin_reader_triple : ('a, 'b, 'c, 'a * 'b * 'c) S3.reader
val bin_triple : ('a, 'b, 'c, 'a * 'b * 'c) S3.t
val bin_writer_list : ('a, 'a list) S1.writer
val bin_reader_list : ('a, 'a list) S1.reader
val bin_list : ('a, 'a list) S1.t
val bin_writer_array : ('a, 'a array) S1.writer
val bin_reader_array : ('a, 'a array) S1.reader
val bin_array : ('a, 'a array) S1.t
val bin_writer_hashtbl : ('a, 'b, ('a, 'b) Hashtbl.t) S2.writer
val bin_reader_hashtbl : ('a, 'b, ('a, 'b) Hashtbl.t) S2.reader
val bin_hashtbl : ('a, 'b, ('a, 'b) Hashtbl.t) S2.t
val bin_writer_float32_vec : Common.vec32 writer0
val bin_reader_float32_vec : Common.vec32 reader0
val bin_float32_vec : Common.vec32 t0
val bin_writer_float64_vec : Common.vec writer0
val bin_reader_float64_vec : Common.vec reader0
val bin_float64_vec : Common.vec t0
val bin_writer_vec : Common.vec writer0
val bin_reader_vec : Common.vec reader0
val bin_vec : Common.vec t0
val bin_writer_float32_mat : Common.mat32 writer0
val bin_reader_float32_mat : Common.mat32 reader0
val bin_float32_mat : Common.mat32 t0
val bin_writer_float64_mat : Common.mat writer0
val bin_reader_float64_mat : Common.mat reader0
val bin_float64_mat : Common.mat t0
val bin_writer_mat : Common.mat writer0
val bin_reader_mat : Common.mat reader0
val bin_mat : Common.mat t0
val bin_writer_bigstring : Common.buf writer0
val bin_reader_bigstring : Common.buf reader0
val bin_bigstring : Common.buf t0
val bin_writer_float_array : float array writer0
val bin_reader_float_array : float array reader0
val bin_float_array : float array t0
val bin_writer_variant_tag : [> ] writer0
val bin_reader_variant_tag : [> ] reader0
val bin_variant_tag : [> ] t0
val bin_writer_int_8bit : Common.pos writer0
val bin_reader_int_8bit : Common.pos reader0
val bin_int_8bit : Common.pos t0
val bin_writer_int_16bit : Common.pos writer0
val bin_reader_int_16bit : Common.pos reader0
val bin_int_16bit : Common.pos t0
val bin_writer_int_32bit : Common.pos writer0
val bin_reader_int_32bit : Common.pos reader0
val bin_int_32bit : Common.pos t0
val bin_writer_int_64bit : Common.pos writer0
val bin_reader_int_64bit : Common.pos reader0
val bin_int_64bit : Common.pos t0
val bin_writer_int64_bits : int64 writer0
val bin_reader_int64_bits : int64 reader0
val bin_int64_bits : int64 t0
val bin_writer_network16_int : Common.pos writer0
val bin_reader_network16_int : Common.pos reader0
val bin_network16_int : Common.pos t0
val bin_writer_network32_int : Common.pos writer0
val bin_reader_network32_int : Common.pos reader0
val bin_network32_int : Common.pos t0
val bin_writer_network32_int32 : int32 writer0
val bin_reader_network32_int32 : int32 reader0
val bin_network32_int32 : int32 t0
val bin_writer_network64_int : Common.pos writer0
val bin_reader_network64_int : Common.pos reader0
val bin_network64_int : Common.pos t0
val bin_writer_network64_int64 : int64 writer0
val bin_reader_network64_int64 : int64 reader0
val bin_network64_int64 : int64 t0
val bin_writer_array_no_length : ('a, 'a array) S1.writer
val cnv_writer : ('a -> 'b) -> 'b writer0 -> 'a writer0
val cnv_reader : ('b -> 'a) -> 'b reader0 -> 'a reader0
val cnv : ('a -> 'b) -> ('b -> 'a) -> 'b t0 -> 'a t0
end
module Binable :
sig
module type S =
sig
type t
val bin_size_t : t Size.sizer
val bin_write_t : t Map_to_safe.writer
val bin_write_t_ : t Unsafe_write_c.writer
val bin_read_t : t Map_to_safe.reader
val bin_read_t_ : t Unsafe_read_c.reader
val bin_read_t__ : (Common.pos -> t) Unsafe_read_c.reader
val bin_writer_t : t Type_class.writer
val bin_reader_t : t Type_class.reader
val bin_t : t Type_class.t
end
module type S1 =
sig
type 'a t
val bin_size_t : ('a, 'a t) Size.sizer1
val bin_write_t : ('a, 'a t) Map_to_safe.writer1
val bin_write_t_ : ('a, 'a t) Unsafe_write_c.writer1
val bin_read_t : ('a, 'a t) Map_to_safe.reader1
val bin_read_t_ : ('a, 'a t) Unsafe_read_c.reader1
val bin_read_t__ : ('a, Common.pos -> 'a t) Unsafe_read_c.reader1
val bin_writer_t : ('a, 'a t) Type_class.S1.writer
val bin_reader_t : ('a, 'a t) Type_class.S1.reader
val bin_t : ('a, 'a t) Type_class.S1.t
end
module type S2 =
sig
type ('a, 'b) t
val bin_size_t : ('a, 'b, ('a, 'b) t) Size.sizer2
val bin_write_t : ('a, 'b, ('a, 'b) t) Map_to_safe.writer2
val bin_write_t_ : ('a, 'b, ('a, 'b) t) Unsafe_write_c.writer2
val bin_read_t : ('a, 'b, ('a, 'b) t) Map_to_safe.reader2
val bin_read_t_ : ('a, 'b, ('a, 'b) t) Unsafe_read_c.reader2
val bin_read_t__ :
('a, 'b, Common.pos -> ('a, 'b) t) Unsafe_read_c.reader2
val bin_writer_t : ('a, 'b, ('a, 'b) t) Type_class.S2.writer
val bin_reader_t : ('a, 'b, ('a, 'b) t) Type_class.S2.reader
val bin_t : ('a, 'b, ('a, 'b) t) Type_class.S2.t
end
end
module Write_c :
sig
val unsafe_get_init :
Common.buf ->
pos:Common.pos ->
Unsafe_common.sptr * Unsafe_common.sptr * Unsafe_common.eptr
val make : 'a Unsafe_write_c.writer -> 'a Map_to_safe.writer
val make1 :
('a, 'b) Unsafe_write_c.writer1 -> ('a, 'b) Write_ml.writer1
val make2 :
('a, 'b, 'c) Unsafe_write_c.writer2 -> ('a, 'b, 'c) Write_ml.writer2
val make3 :
('a, 'b, 'c, 'd) Unsafe_write_c.writer3 ->
('a, 'b, 'c, 'd) Write_ml.writer3
val unmake :
'a Map_to_safe.writer ->
Common.buf -> start:Unsafe_common.sptr -> 'a Unsafe_write_c.writer
val bin_write_unit : unit Map_to_safe.writer
val bin_write_bool : bool Map_to_safe.writer
val bin_write_string : string Map_to_safe.writer
val bin_write_char : char Map_to_safe.writer
val bin_write_int : Common.pos Map_to_safe.writer
val bin_write_nat0 : Nat0.t Map_to_safe.writer
val bin_write_float : float Map_to_safe.writer
val bin_write_int32 : int32 Map_to_safe.writer
val bin_write_int64 : int64 Map_to_safe.writer
val bin_write_nativeint : nativeint Map_to_safe.writer
val bin_write_ref : ('a, 'a ref) Write_ml.writer1
val bin_write_lazy : ('a, 'a lazy_t) Write_ml.writer1
val bin_write_option : ('a, 'a option) Write_ml.writer1
val bin_write_pair : ('a, 'b, 'a * 'b) Write_ml.writer2
val bin_write_triple : ('a, 'b, 'c, 'a * 'b * 'c) Write_ml.writer3
val bin_write_list : ('a, 'a list) Write_ml.writer1
val bin_write_array : ('a, 'a array) Write_ml.writer1
val bin_write_hashtbl : ('a, 'b, ('a, 'b) Hashtbl.t) Write_ml.writer2
val bin_write_float32_vec : Common.vec32 Map_to_safe.writer
val bin_write_float64_vec : Common.vec Map_to_safe.writer
val bin_write_vec : Common.vec Map_to_safe.writer
val bin_write_float32_mat : Common.mat32 Map_to_safe.writer
val bin_write_float64_mat : Common.mat Map_to_safe.writer
val bin_write_mat : Common.mat Map_to_safe.writer
val bin_write_bigstring : Common.buf Map_to_safe.writer
val bin_write_float_array : float array Map_to_safe.writer
val bin_write_variant_tag : [> ] Map_to_safe.writer
val bin_write_array_no_length : ('a, 'a array) Write_ml.writer1
val bin_write_int_64bit : Common.pos Map_to_safe.writer
val bin_write_int64_bits : int64 Map_to_safe.writer
val bin_write_network16_int : Common.pos Map_to_safe.writer
val bin_write_network32_int : Common.pos Map_to_safe.writer
val bin_write_network32_int32 : int32 Map_to_safe.writer
val bin_write_network64_int : Common.pos Map_to_safe.writer
val bin_write_network64_int64 : int64 Map_to_safe.writer
end
module Read_c :
sig
val make : 'a Unsafe_read_c.reader -> 'a Map_to_safe.reader
val make1 : ('a, 'b) Unsafe_read_c.reader1 -> ('a, 'b) Read_ml.reader1
val make2 :
('a, 'b, 'c) Unsafe_read_c.reader2 -> ('a, 'b, 'c) Read_ml.reader2
val make3 :
('a, 'b, 'c, 'd) Unsafe_read_c.reader3 ->
('a, 'b, 'c, 'd) Read_ml.reader3
val unmake :
'b Map_to_safe.reader -> Common.buf -> 'b Unsafe_read_c.reader
val handle_error :
Common.buf -> Unsafe_common.sptr_ptr -> Common.ReadError.t -> 'a
val handle_exc : Common.buf -> Unsafe_common.sptr_ptr -> exn -> 'a
val at_end :
Common.buf -> Unsafe_common.sptr_ptr -> Common.pos_ref -> 'a -> 'a
val bin_read_unit : unit Map_to_safe.reader
val bin_read_bool : bool Map_to_safe.reader
val bin_read_string : string Map_to_safe.reader
val bin_read_char : char Map_to_safe.reader
val bin_read_int : Common.pos Map_to_safe.reader
val bin_read_nat0 : Nat0.t Map_to_safe.reader
val bin_read_float : float Map_to_safe.reader
val bin_read_int32 : int32 Map_to_safe.reader
val bin_read_int64 : int64 Map_to_safe.reader
val bin_read_nativeint : nativeint Map_to_safe.reader
val bin_read_ref : ('a, 'a ref) Read_ml.reader1
val bin_read_lazy : ('a, 'a lazy_t) Read_ml.reader1
val bin_read_option : ('a, 'a option) Read_ml.reader1
val bin_read_pair : ('a, 'b, 'a * 'b) Read_ml.reader2
val bin_read_triple : ('a, 'b, 'c, 'a * 'b * 'c) Read_ml.reader3
val bin_read_list : ('a, 'a list) Read_ml.reader1
val bin_read_array : ('a, 'a array) Read_ml.reader1
val bin_read_hashtbl : ('a, 'b, ('a, 'b) Hashtbl.t) Read_ml.reader2
val bin_read_float32_vec : Common.vec32 Map_to_safe.reader
val bin_read_float64_vec : Common.vec Map_to_safe.reader
val bin_read_vec : Common.vec Map_to_safe.reader
val bin_read_float32_mat : Common.mat32 Map_to_safe.reader
val bin_read_float64_mat : Common.mat Map_to_safe.reader
val bin_read_mat : Common.mat Map_to_safe.reader
val bin_read_bigstring : Common.buf Map_to_safe.reader
val bin_read_float_array : float array Map_to_safe.reader
val bin_read_variant_int : Common.pos Map_to_safe.reader
val bin_read_variant_tag : [> ] Map_to_safe.reader
val bin_read_int_64bit : Common.pos Map_to_safe.reader
val bin_read_int64_bits : int64 Map_to_safe.reader
val bin_read_network16_int : Common.pos Map_to_safe.reader
val bin_read_network32_int : Common.pos Map_to_safe.reader
val bin_read_network32_int32 : int32 Map_to_safe.reader
val bin_read_network64_int : Common.pos Map_to_safe.reader
val bin_read_network64_int64 : int64 Map_to_safe.reader
end
module Std :
sig
type 'a sizer = 'a -> Common.pos
type ('a, 'b) sizer1 = 'a sizer -> 'b sizer
type ('a, 'b, 'c) sizer2 = 'a sizer -> ('b, 'c) sizer1
type ('a, 'b, 'c, 'd) sizer3 = 'a sizer -> ('b, 'c, 'd) sizer2
val bin_size_unit : unit sizer
val bin_size_bool : bool sizer
val bin_size_string : string sizer
val bin_size_char : char sizer
val bin_size_int : Common.pos sizer
val bin_size_float : float sizer
val bin_size_int32 : int32 sizer
val bin_size_int64 : int64 sizer
val bin_size_nativeint : nativeint sizer
val bin_size_nat0 : Nat0.t sizer
val bin_size_ref : ('a, 'a ref) sizer1
val bin_size_lazy_t : ('a, 'a lazy_t) sizer1
val bin_size_lazy : ('a, 'a lazy_t) sizer1
val bin_size_option : ('a, 'a option) sizer1
val bin_size_pair : ('a, 'b, 'a * 'b) sizer2
val bin_size_triple : ('a, 'b, 'c, 'a * 'b * 'c) sizer3
val bin_size_list : ('a, 'a list) sizer1
val bin_size_array : ('a, 'a array) sizer1
val bin_size_hashtbl : ('a, 'b, ('a, 'b) Hashtbl.t) sizer2
val bin_size_float32_vec : Common.vec32 sizer
val bin_size_float64_vec : Common.vec sizer
val bin_size_vec : Common.vec sizer
val bin_size_float32_mat : Common.mat32 sizer
val bin_size_float64_mat : Common.mat sizer
val bin_size_mat : Common.mat sizer
val bin_size_bigstring : Common.buf sizer
val bin_size_float_array : float array sizer
val bin_size_variant_tag : [> ] sizer
val bin_size_int_8bit : Common.pos sizer
val bin_size_int_16bit : Common.pos sizer
val bin_size_int_32bit : Common.pos sizer
val bin_size_int_64bit : Common.pos sizer
val bin_size_int64_bits : int64 sizer
val bin_size_network16_int : Common.pos sizer
val bin_size_network32_int : Common.pos sizer
val bin_size_network32_int32 : int32 sizer
val bin_size_network64_int : Common.pos sizer
val bin_size_network64_int64 : int64 sizer
val bin_size_array_no_length : ('a, 'a array) sizer1
val bin_unit : unit Type_class.t
val bin_writer_unit : unit Type_class.writer
val bin_write_unit_ : unit Unsafe_write_c.writer
val bin_write_unit : unit Map_to_safe.writer
val bin_reader_unit : unit Type_class.reader
val bin_read_unit : unit Map_to_safe.reader
val bin_read_unit_ : unit Unsafe_read_c.reader
val bin_read_unit__ : 'a -> 'b -> 'c -> 'd
val bin_bool : bool Type_class.t
val bin_writer_bool : bool Type_class.writer
val bin_write_bool_ : bool Unsafe_write_c.writer
val bin_write_bool : bool Map_to_safe.writer
val bin_reader_bool : bool Type_class.reader
val bin_read_bool : bool Map_to_safe.reader
val bin_read_bool_ : bool Unsafe_read_c.reader
val bin_read_bool__ : 'a -> 'b -> 'c -> 'd
val bin_string : string Type_class.t
val bin_writer_string : string Type_class.writer
val bin_write_string_ : string Unsafe_write_c.writer
val bin_write_string : string Map_to_safe.writer
val bin_reader_string : string Type_class.reader
val bin_read_string : string Map_to_safe.reader
val bin_read_string_ : string Unsafe_read_c.reader
val bin_read_string__ : 'a -> 'b -> 'c -> 'd
val bin_char : char Type_class.t
val bin_writer_char : char Type_class.writer
val bin_write_char_ : char Unsafe_write_c.writer
val bin_write_char : char Map_to_safe.writer
val bin_reader_char : char Type_class.reader
val bin_read_char : char Map_to_safe.reader
val bin_read_char_ : char Unsafe_read_c.reader
val bin_read_char__ : 'a -> 'b -> 'c -> 'd
val bin_int : Common.pos Type_class.t
val bin_writer_int : Common.pos Type_class.writer
val bin_write_int_ : Common.pos Unsafe_write_c.writer
val bin_write_int : Common.pos Map_to_safe.writer
val bin_reader_int : Common.pos Type_class.reader
val bin_read_int : Common.pos Map_to_safe.reader
val bin_read_int_ : Common.pos Unsafe_read_c.reader
val bin_read_int__ : 'a -> 'b -> 'c -> 'd
val bin_float : float Type_class.t
val bin_writer_float : float Type_class.writer
val bin_write_float_ : float Unsafe_write_c.writer
val bin_write_float : float Map_to_safe.writer
val bin_reader_float : float Type_class.reader
val bin_read_float : float Map_to_safe.reader
val bin_read_float_ : float Unsafe_read_c.reader
val bin_read_float__ : 'a -> 'b -> 'c -> 'd
val bin_int32 : int32 Type_class.t
val bin_writer_int32 : int32 Type_class.writer
val bin_write_int32_ : int32 Unsafe_write_c.writer
val bin_write_int32 : int32 Map_to_safe.writer
val bin_reader_int32 : int32 Type_class.reader
val bin_read_int32 : int32 Map_to_safe.reader
val bin_read_int32_ : int32 Unsafe_read_c.reader
val bin_read_int32__ : 'a -> 'b -> 'c -> 'd
val bin_int64 : int64 Type_class.t
val bin_writer_int64 : int64 Type_class.writer
val bin_write_int64_ : int64 Unsafe_write_c.writer
val bin_write_int64 : int64 Map_to_safe.writer
val bin_reader_int64 : int64 Type_class.reader
val bin_read_int64 : int64 Map_to_safe.reader
val bin_read_int64_ : int64 Unsafe_read_c.reader
val bin_read_int64__ : 'a -> 'b -> 'c -> 'd
val bin_nativeint : nativeint Type_class.t
val bin_writer_nativeint : nativeint Type_class.writer
val bin_write_nativeint_ : nativeint Unsafe_write_c.writer
val bin_write_nativeint : nativeint Map_to_safe.writer
val bin_reader_nativeint : nativeint Type_class.reader
val bin_read_nativeint : nativeint Map_to_safe.reader
val bin_read_nativeint_ : nativeint Unsafe_read_c.reader
val bin_read_nativeint__ : 'a -> 'b -> 'c -> 'd
val bin_ref : ('a, 'a ref) Type_class.S1.t
val bin_writer_ref : ('a, 'a ref) Type_class.S1.writer
val bin_write_ref_ : ('a, 'a ref) Unsafe_write_c.writer1
val bin_write_ref : ('a, 'a ref) Write_ml.writer1
val bin_reader_ref : ('a, 'a ref) Type_class.S1.reader
val bin_read_ref : ('a, 'a ref) Read_ml.reader1
val bin_read_ref_ : ('a, 'a ref) Unsafe_read_c.reader1
val bin_read_ref__ : 'a -> 'b -> 'c -> 'd -> 'e
val bin_lazy_t : ('a, 'a lazy_t) Type_class.S1.t
val bin_writer_lazy_t : ('a, 'a lazy_t) Type_class.S1.writer
val bin_write_lazy_t_ : ('a, 'a lazy_t) Unsafe_write_c.writer1
val bin_write_lazy_t : ('a, 'a lazy_t) Write_ml.writer1
val bin_reader_lazy_t : ('a, 'a lazy_t) Type_class.S1.reader
val bin_read_lazy_t : ('a, 'a lazy_t) Read_ml.reader1
val bin_read_lazy_t_ : ('a, 'a lazy_t) Unsafe_read_c.reader1
val bin_read_lazy_t__ : 'a -> 'b -> 'c -> 'd -> 'e
val bin_lazy : ('a, 'a lazy_t) Type_class.S1.t
val bin_writer_lazy : ('a, 'a lazy_t) Type_class.S1.writer
val bin_write_lazy_ : ('a, 'a lazy_t) Unsafe_write_c.writer1
val bin_write_lazy : ('a, 'a lazy_t) Write_ml.writer1
val bin_reader_lazy : ('a, 'a lazy_t) Type_class.S1.reader
val bin_read_lazy : ('a, 'a lazy_t) Read_ml.reader1
val bin_read_lazy_ : ('a, 'a lazy_t) Unsafe_read_c.reader1
val bin_read_lazy__ : 'a -> 'b -> 'c -> 'd -> 'e
val bin_option : ('a, 'a option) Type_class.S1.t
val bin_writer_option : ('a, 'a option) Type_class.S1.writer
val bin_write_option_ : ('a, 'a option) Unsafe_write_c.writer1
val bin_write_option : ('a, 'a option) Write_ml.writer1
val bin_reader_option : ('a, 'a option) Type_class.S1.reader
val bin_read_option : ('a, 'a option) Read_ml.reader1
val bin_read_option_ : ('a, 'a option) Unsafe_read_c.reader1
val bin_read_option__ : 'a -> 'b -> 'c -> 'd -> 'e
val bin_list : ('a, 'a list) Type_class.S1.t
val bin_writer_list : ('a, 'a list) Type_class.S1.writer
val bin_write_list_ : ('a, 'a list) Unsafe_write_c.writer1
val bin_write_list : ('a, 'a list) Write_ml.writer1
val bin_reader_list : ('a, 'a list) Type_class.S1.reader
val bin_read_list : ('a, 'a list) Read_ml.reader1
val bin_read_list_ : ('a, 'a list) Unsafe_read_c.reader1
val bin_read_list__ : 'a -> 'b -> 'c -> 'd -> 'e
val bin_array : ('a, 'a array) Type_class.S1.t
val bin_writer_array : ('a, 'a array) Type_class.S1.writer
val bin_write_array_ : ('a, 'a array) Unsafe_write_c.writer1
val bin_write_array : ('a, 'a array) Write_ml.writer1
val bin_reader_array : ('a, 'a array) Type_class.S1.reader
val bin_read_array : ('a, 'a array) Read_ml.reader1
val bin_read_array_ : ('a, 'a array) Unsafe_read_c.reader1
val bin_read_array__ : 'a -> 'b -> 'c -> 'd -> 'e
val bin_hashtbl : ('a, 'b, ('a, 'b) Hashtbl.t) Type_class.S2.t
val bin_writer_hashtbl :
('a, 'b, ('a, 'b) Hashtbl.t) Type_class.S2.writer
val bin_write_hashtbl_ :
('a, 'b, ('a, 'b) Hashtbl.t) Unsafe_write_c.writer2
val bin_write_hashtbl : ('a, 'b, ('a, 'b) Hashtbl.t) Write_ml.writer2
val bin_reader_hashtbl :
('a, 'b, ('a, 'b) Hashtbl.t) Type_class.S2.reader
val bin_read_hashtbl : ('a, 'b, ('a, 'b) Hashtbl.t) Read_ml.reader2
val bin_read_hashtbl_ :
('a, 'b, ('a, 'b) Hashtbl.t) Unsafe_read_c.reader2
val bin_read_hashtbl__ : 'a -> 'b -> 'c -> 'd -> 'e -> 'f
val bin_bigstring : Common.buf Type_class.t
val bin_writer_bigstring : Common.buf Type_class.writer
val bin_write_bigstring_ : Common.buf Unsafe_write_c.writer
val bin_write_bigstring : Common.buf Map_to_safe.writer
val bin_reader_bigstring : Common.buf Type_class.reader
val bin_read_bigstring : Common.buf Map_to_safe.reader
val bin_read_bigstring_ : Common.buf Unsafe_read_c.reader
val bin_read_bigstring__ : 'a -> 'b -> 'c -> 'd
val bin_mat : Common.mat Type_class.t
val bin_writer_mat : Common.mat Type_class.writer
val bin_write_mat_ : Common.mat Unsafe_write_c.writer
val bin_write_mat : Common.mat Map_to_safe.writer
val bin_reader_mat : Common.mat Type_class.reader
val bin_read_mat : Common.mat Map_to_safe.reader
val bin_read_mat_ : Common.mat Unsafe_read_c.reader
val bin_read_mat__ : 'a -> 'b -> 'c -> 'd
val bin_float32_mat : Common.mat32 Type_class.t
val bin_writer_float32_mat : Common.mat32 Type_class.writer
val bin_write_float32_mat_ : Common.mat32 Unsafe_write_c.writer
val bin_write_float32_mat : Common.mat32 Map_to_safe.writer
val bin_reader_float32_mat : Common.mat32 Type_class.reader
val bin_read_float32_mat : Common.mat32 Map_to_safe.reader
val bin_read_float32_mat_ : Common.mat32 Unsafe_read_c.reader
val bin_read_float32_mat__ : 'a -> 'b -> 'c -> 'd
val bin_float64_mat : Common.mat Type_class.t
val bin_writer_float64_mat : Common.mat Type_class.writer
val bin_write_float64_mat_ : Common.mat Unsafe_write_c.writer
val bin_write_float64_mat : Common.mat Map_to_safe.writer
val bin_reader_float64_mat : Common.mat Type_class.reader
val bin_read_float64_mat : Common.mat Map_to_safe.reader
val bin_read_float64_mat_ : Common.mat Unsafe_read_c.reader
val bin_read_float64_mat__ : 'a -> 'b -> 'c -> 'd
val bin_vec : Common.vec Type_class.t
val bin_writer_vec : Common.vec Type_class.writer
val bin_write_vec_ : Common.vec Unsafe_write_c.writer
val bin_write_vec : Common.vec Map_to_safe.writer
val bin_reader_vec : Common.vec Type_class.reader
val bin_read_vec : Common.vec Map_to_safe.reader
val bin_read_vec_ : Common.vec Unsafe_read_c.reader
val bin_read_vec__ : 'a -> 'b -> 'c -> 'd
val bin_float32_vec : Common.vec32 Type_class.t
val bin_writer_float32_vec : Common.vec32 Type_class.writer
val bin_write_float32_vec_ : Common.vec32 Unsafe_write_c.writer
val bin_write_float32_vec : Common.vec32 Map_to_safe.writer
val bin_reader_float32_vec : Common.vec32 Type_class.reader
val bin_read_float32_vec : Common.vec32 Map_to_safe.reader
val bin_read_float32_vec_ : Common.vec32 Unsafe_read_c.reader
val bin_read_float32_vec__ : 'a -> 'b -> 'c -> 'd
val bin_float64_vec : Common.vec Type_class.t
val bin_writer_float64_vec : Common.vec Type_class.writer
val bin_write_float64_vec_ : Common.vec Unsafe_write_c.writer
val bin_write_float64_vec : Common.vec Map_to_safe.writer
val bin_reader_float64_vec : Common.vec Type_class.reader
val bin_read_float64_vec : Common.vec Map_to_safe.reader
val bin_read_float64_vec_ : Common.vec Unsafe_read_c.reader
val bin_read_float64_vec__ : 'a -> 'b -> 'c -> 'd
end
module Utils :
sig
val bin_dump : ?header:bool -> 'a Type_class.writer -> 'a -> Common.buf
val bin_read_stream :
?max_size:Common.pos ->
read:(Common.buf -> pos:Common.pos -> len:Common.pos -> unit) ->
'a Type_class.reader -> 'a
module type Make_binable_spec =
sig
module Binable : Binable.S
type t
val to_binable : t -> Binable.t
val of_binable : Binable.t -> t
end
module Make_binable :
functor (Bin_spec : Make_binable_spec) ->
sig
val bin_size_t : Bin_spec.t Size.sizer
val bin_write_t : Bin_spec.t Map_to_safe.writer
val bin_write_t_ : Bin_spec.t Unsafe_write_c.writer
val bin_read_t : Bin_spec.t Map_to_safe.reader
val bin_read_t_ : Bin_spec.t Unsafe_read_c.reader
val bin_read_t__ :
(Common.pos -> Bin_spec.t) Unsafe_read_c.reader
val bin_writer_t : Bin_spec.t Type_class.writer
val bin_reader_t : Bin_spec.t Type_class.reader
val bin_t : Bin_spec.t Type_class.t
end
module type Make_binable1_spec =
sig
module Binable : Binable.S1
type 'a t
val to_binable : 'a t -> 'a Binable.t
val of_binable : 'a Binable.t -> 'a t
end
module Make_binable1 :
functor (Bin_spec : Make_binable1_spec) ->
sig
val bin_size_t : ('a, 'a Bin_spec.t) Size.sizer1
val bin_write_t : ('a, 'a Bin_spec.t) Map_to_safe.writer1
val bin_write_t_ : ('a, 'a Bin_spec.t) Unsafe_write_c.writer1
val bin_read_t : ('a, 'a Bin_spec.t) Map_to_safe.reader1
val bin_read_t_ : ('a, 'a Bin_spec.t) Unsafe_read_c.reader1
val bin_read_t__ :
('a, Common.pos -> 'a Bin_spec.t) Unsafe_read_c.reader1
val bin_writer_t : ('a, 'a Bin_spec.t) Type_class.S1.writer
val bin_reader_t : ('a, 'a Bin_spec.t) Type_class.S1.reader
val bin_t : ('a, 'a Bin_spec.t) Type_class.S1.t
end
module type Make_binable2_spec =
sig
module Binable : Binable.S2
type ('a, 'b) t
val to_binable : ('a, 'b) t -> ('a, 'b) Binable.t
val of_binable : ('a, 'b) Binable.t -> ('a, 'b) t
end
module Make_binable2 :
functor (Bin_spec : Make_binable2_spec) ->
sig
val bin_size_t : ('a, 'b, ('a, 'b) Bin_spec.t) Size.sizer2
val bin_write_t :
('a, 'b, ('a, 'b) Bin_spec.t) Map_to_safe.writer2
val bin_write_t_ :
('a, 'b, ('a, 'b) Bin_spec.t) Unsafe_write_c.writer2
val bin_read_t :
('a, 'b, ('a, 'b) Bin_spec.t) Map_to_safe.reader2
val bin_read_t_ :
('a, 'b, ('a, 'b) Bin_spec.t) Unsafe_read_c.reader2
val bin_read_t__ :
('a, 'b, Common.pos -> ('a, 'b) Bin_spec.t)
Unsafe_read_c.reader2
val bin_writer_t :
('a, 'b, ('a, 'b) Bin_spec.t) Type_class.S2.writer
val bin_reader_t :
('a, 'b, ('a, 'b) Bin_spec.t) Type_class.S2.reader
val bin_t : ('a, 'b, ('a, 'b) Bin_spec.t) Type_class.S2.t
end
module type Make_iterable_binable_spec =
sig
type t
type el
type acc
val module_name : string option
val length : t -> Common.pos
val iter : t -> f:(el -> unit) -> unit
val init : Common.pos -> acc
val insert : acc -> el -> Common.pos -> acc
val finish : acc -> t
val bin_size_el : el Size.sizer
val bin_write_el_ : el Unsafe_write_c.writer
val bin_read_el_ : el Unsafe_read_c.reader
end
module Make_iterable_binable :
functor (Iterable_spec : Make_iterable_binable_spec) ->
sig
val bin_size_t : Iterable_spec.t Size.sizer
val bin_write_t : Iterable_spec.t Map_to_safe.writer
val bin_write_t_ : Iterable_spec.t Unsafe_write_c.writer
val bin_read_t : Iterable_spec.t Map_to_safe.reader
val bin_read_t_ : Iterable_spec.t Unsafe_read_c.reader
val bin_read_t__ :
(Common.pos -> Iterable_spec.t) Unsafe_read_c.reader
val bin_writer_t : Iterable_spec.t Type_class.writer
val bin_reader_t : Iterable_spec.t Type_class.reader
val bin_t : Iterable_spec.t Type_class.t
end
module type Make_iterable_binable1_spec =
sig
type 'a t
type 'a el
type 'a acc
val module_name : string option
val length : 'a t -> Common.pos
val iter : 'a t -> f:('a el -> unit) -> unit
val init : Common.pos -> 'a acc
val insert : 'a acc -> 'a el -> Common.pos -> 'a acc
val finish : 'a acc -> 'a t
val bin_size_el : ('a, 'a el) Size.sizer1
val bin_write_el_ : ('a, 'a el) Unsafe_write_c.writer1
val bin_read_el_ : ('a, 'a el) Unsafe_read_c.reader1
end
module Make_iterable_binable1 :
functor (Iterable_spec : Make_iterable_binable1_spec) ->
sig
val bin_size_t : ('a, 'a Iterable_spec.t) Size.sizer1
val bin_write_t : ('a, 'a Iterable_spec.t) Map_to_safe.writer1
val bin_write_t_ :
('a, 'a Iterable_spec.t) Unsafe_write_c.writer1
val bin_read_t : ('a, 'a Iterable_spec.t) Map_to_safe.reader1
val bin_read_t_ : ('a, 'a Iterable_spec.t) Unsafe_read_c.reader1
val bin_read_t__ :
('a, Common.pos -> 'a Iterable_spec.t) Unsafe_read_c.reader1
val bin_writer_t : ('a, 'a Iterable_spec.t) Type_class.S1.writer
val bin_reader_t : ('a, 'a Iterable_spec.t) Type_class.S1.reader
val bin_t : ('a, 'a Iterable_spec.t) Type_class.S1.t
end
module type Make_iterable_binable2_spec =
sig
type ('a, 'b) t
type ('a, 'b) el
type ('a, 'b) acc
val module_name : string option
val length : ('a, 'b) t -> Common.pos
val iter : ('a, 'b) t -> f:(('a, 'b) el -> unit) -> unit
val init : Common.pos -> ('a, 'b) acc
val insert :
('a, 'b) acc -> ('a, 'b) el -> Common.pos -> ('a, 'b) acc
val finish : ('a, 'b) acc -> ('a, 'b) t
val bin_size_el : ('a, 'b, ('a, 'b) el) Size.sizer2
val bin_write_el_ : ('a, 'b, ('a, 'b) el) Unsafe_write_c.writer2
val bin_read_el_ : ('a, 'b, ('a, 'b) el) Unsafe_read_c.reader2
end
module Make_iterable_binable2 :
functor (Iterable_spec : Make_iterable_binable2_spec) ->
sig
val bin_size_t : ('a, 'b, ('a, 'b) Iterable_spec.t) Size.sizer2
val bin_write_t :
('a, 'b, ('a, 'b) Iterable_spec.t) Map_to_safe.writer2
val bin_write_t_ :
('a, 'b, ('a, 'b) Iterable_spec.t) Unsafe_write_c.writer2
val bin_read_t :
('a, 'b, ('a, 'b) Iterable_spec.t) Map_to_safe.reader2
val bin_read_t_ :
('a, 'b, ('a, 'b) Iterable_spec.t) Unsafe_read_c.reader2
val bin_read_t__ :
('a, 'b, Common.pos -> ('a, 'b) Iterable_spec.t)
Unsafe_read_c.reader2
val bin_writer_t :
('a, 'b, ('a, 'b) Iterable_spec.t) Type_class.S2.writer
val bin_reader_t :
('a, 'b, ('a, 'b) Iterable_spec.t) Type_class.S2.reader
val bin_t : ('a, 'b, ('a, 'b) Iterable_spec.t) Type_class.S2.t
end
end
module Writer :
sig
type 'a t =
'a Bin_prot.Type_class.writer = {
size : 'a Size.sizer;
write : 'a Map_to_safe.writer;
unsafe_write : 'a Unsafe_write_c.writer;
}
val to_string : 'a t -> 'a -> string
end
end