Module Serialize


module Serialize: sig .. end

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 writer -> ?key:string -> 'a -> unit
val peek : 'a reader -> string * 'a
val junk : 'a reader -> unit
val junk_structure : [> `end_of_list | `end_of_record | `list of [> `any ] | `record ]
reader -> unit
val make_io : ('a -> 'b) ->
('b -> 'a) -> ?key:string -> 'a -> 'b serializer -> 'a
val io_bool : ?key:string -> bool -> [> `bool of bool ] serializer -> bool
val io_char : ?key:string -> char -> [> `char of char ] serializer -> char
val io_float : ?key:string ->
float -> [> `float of float | `int of int ] serializer -> float
val io_int : ?key:string -> int -> [> `int of int ] serializer -> int
val io_string : ?key:string ->
string ->
[> `char of char | `string of string ] serializer -> string
val io_tag : ?key:string -> string -> [> `tag of string ] serializer -> string
val io_time : ?key:string ->
float -> [> `float of float | `time of float ] serializer -> float
val io_option : (?key:string -> 'a -> ([> `none | `some ] as 'b) serializer -> 'a) ->
'a -> ?key:string -> 'a option -> 'b serializer -> 'a option
val io_record : ('a ->
([> `end_of_list | `end_of_record | `list of [> `any ] | `record ] as 'b)
serializer -> 'a) ->
?key:string -> 'a -> 'b serializer -> 'a
val io_list : (?key:string ->
'a ->
([> `end_of_list | `end_of_record | `list of [> `any | `record ] | `record ]
as 'b)
serializer -> 'a) ->
'a -> ?key:string -> 'a list -> 'b serializer -> 'a list