Module Core_kernel.Sexpable

This module extends Base.Sexpable.

include module type of sig ... end
module type S = sig ... end
module type S1 = sig ... end
module type S2 = sig ... end
module type S3 = sig ... end
module Of_sexpable : functor (Sexpable : S) -> functor (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 : functor (Sexpable : S1) -> functor (M : sig ... end) -> S1 with type 'a t := 'a M.t
module Of_sexpable2 : functor (Sexpable : S2) -> functor (M : sig ... end) -> S2 with type ('a, 'b) t := ('a'b) M.t
module Of_sexpable3 : functor (Sexpable : S3) -> functor (M : sig ... end) -> S3 with type ('a, 'b, 'c) t := ('a'b'c) M.t
module Of_stringable : functor (M : Base.Stringable.S) -> S with type t := M.t
module To_stringable : functor (M : S) -> Base.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.