Up
Module
Sexpable
Signature
module type
S
= sig .. end
New code should use the
@@deriving sexp
syntax directly.
module type
S1
= sig .. end
module type
S2
= sig .. end
module type
S3
= sig .. end
module
Of_sexpable
(
Sexpable
:
S
) (
M
: sig .. end) :
S
with
type
t
:=
M.t
For when you want the sexp representation of one type to be the same as that for some other isomorphic type.
module
Of_sexpable1
(
Sexpable
:
S1
) (
M
: sig .. end) :
S1
with
type
'a
t
:= 'a
M.t
module
Of_sexpable2
(
Sexpable
:
S2
) (
M
: sig .. end) :
S2
with
type
('a, 'b)
t
:= ('a, 'b)
M.t
module
Of_stringable
(
M
:
Stringable.S
) :
S
with
type
t
:=
M.t
module
To_stringable
(
M
:
S
) :
Stringable.S
with
type
t
:=
M.t
module
Stable
: sig .. end
The following functors preserve stability: if applied to stable types with stable (de)serializations, they will produce stable types with stable (de)serializations.