OCaml library : Marshal

`sig
type extern_flags = No_sharing | Closures | Compat_32
val to_channel :
Stdlib.out_channel -> 'a -> Marshal.extern_flags list -> unit
external to_bytes : 'a -> Marshal.extern_flags list -> bytes
= "caml_output_value_to_bytes"
external to_string : 'a -> Marshal.extern_flags list -> string
= "caml_output_value_to_string"
val to_buffer :
bytes -> int -> int -> 'a -> Marshal.extern_flags list -> int
val from_channel : Stdlib.in_channel -> 'a
val from_bytes : bytes -> int -> 'a
val from_string : string -> int -> 'a
val header_size : int
val data_size : bytes -> int -> int
val total_size : bytes -> int -> int
end`