Stable_witness.Of_serializable1
module Stable_format : T1
val of_serializable :
('a t -> 'a Stable_format.t t) ->
('a Stable_format.t -> 'a M.t) ->
('a M.t -> 'a Stable_format.t) ->
'a t ->
'a M.t t
This is the analogue of of_serializable
for types with 1 type parameter, e.g. 'a M.t
.
An example usage would look something like this:
let stable_witness (type a) : a Stable_witness.t -> a M.t Stable_witness.t =
fun witness ->
let module Stable_witness =
Stable_witness.Of_serializable1 (Stable_format) (M)
in
Stable_witness.of_serializable
Stable_format.stable_witness
M.of_stable_format
M.to_stable_format
witness
;;