sig
type 'a writer =
[ `writing of
(unit -> unit) list Pervasives.ref * (string -> 'a -> unit) ]
type 'a reader =
[ `reading of
string Pervasives.ref * 'a Pervasives.ref * (unit -> unit) *
(float -> float) ]
type 'a serializer =
[ `reading of
string Pervasives.ref * 'a Pervasives.ref * (unit -> unit) *
(float -> float)
| `writing of
(unit -> unit) list Pervasives.ref * (string -> 'a -> unit) ]
val write : 'a Serialize.writer -> ?key:string -> 'a -> unit
val peek : 'a Serialize.reader -> string * 'a
val junk : 'a Serialize.reader -> unit
val junk_structure :
[> `end_of_list | `end_of_record | `list of [> `any ] | `record ]
Serialize.reader -> unit
val make_io :
('a -> 'b) ->
('b -> 'a) -> ?key:string -> 'a -> 'b Serialize.serializer -> 'a
val io_bool :
?key:string -> bool -> [> `bool of bool ] Serialize.serializer -> bool
val io_char :
?key:string -> char -> [> `char of char ] Serialize.serializer -> char
val io_float :
?key:string ->
float -> [> `float of float | `int of int ] Serialize.serializer -> float
val io_int :
?key:string -> int -> [> `int of int ] Serialize.serializer -> int
val io_string :
?key:string ->
string ->
[> `char of char | `string of string ] Serialize.serializer -> string
val io_tag :
?key:string ->
string -> [> `tag of string ] Serialize.serializer -> string
val io_time :
?key:string ->
float ->
[> `float of float | `time of float ] Serialize.serializer -> float
val io_option :
(?key:string ->
'a -> ([> `none | `some ] as 'b) Serialize.serializer -> 'a) ->
'a -> ?key:string -> 'a option -> 'b Serialize.serializer -> 'a option
val io_record :
('a ->
([> `end_of_list | `end_of_record | `list of [> `any ] | `record ] as 'b)
Serialize.serializer -> 'a) ->
?key:string -> 'a -> 'b Serialize.serializer -> 'a
val io_list :
(?key:string ->
'a ->
([> `end_of_list
| `end_of_record
| `list of [> `any | `record ]
| `record ]
as 'b)
Serialize.serializer -> 'a) ->
'a -> ?key:string -> 'a list -> 'b Serialize.serializer -> 'a list
end