Module SetMap

module SetMap: sig .. end
Our own implementattion of Set and Map

Purely functionnal. Functions without _with_logs do NOT raise any exception.


module type OrderedType = sig .. end
type ('parameters, 'error, 'a) with_log_wrap = ('parameters -> 'error -> string -> string option -> exn -> 'error) ->
'parameters -> 'error -> 'a
module type Set = sig .. end
module type Map = sig .. end
module type S = sig .. end
module Make: 
functor (Ord : OrderedType) -> S with type elt = Ord.t
module type Projection = sig .. end
module Proj: 
functor (A : S) ->
functor (B : S) -> Projection with type elt_a = A.elt and type elt_b = B.elt and type 'a map_a = 'a A.Map.t and type 'a map_b = 'a B.Map.t
module type Projection2 = sig .. end
module Proj2: 
functor (A : S) ->
functor (B : S) ->
functor (C : S) -> Projection2 with type elt_a = A.elt and type elt_b = B.elt and type 'a map_a = 'a A.Map.t and type 'a map_b = 'a B.Map.t and type elt_c = C.elt and type 'a map_c = 'a C.Map.t