module Fold_map: Fold_map
module type Fold = sig .. end
module type Fold_sexpable = sig .. end
module Cons:
functor (T : sigend) -> Fold
with type t = T.t list
and type data = T.tmodule Cons_sexpable:
module Multiply: Fold_sexpable with type t = int and type data = int
module Add: Fold_sexpable with type t = int and type data = int
module type Fold_map = sig .. end
module type Fold_map_sexpable = sig .. end
module Make:
functor (Fold : Fold) -> Fold_map
with type in_value = Fold.data
and type out_value = Fold.tmodule Make_sexpable: