Univ_map.Mergemodule Input1_data : sig ... endmodule Input2_data : sig ... endmodule Output_data : sig ... endtype 's f = {f : a. key:'a Key.t ->
[ `Left of ('s, 'a) Input1_data.t | `Right of ('s, 'a) Input2_data.t | `Both of ('s, 'a) Input1_data.t * ('s, 'a) Input2_data.t ] -> ('s, 'a) Output_data.t Base.Option.t; | 
}val merge : 's Make1(Key)(Input1_data).t -> 's Make1(Key)(Input2_data).t -> f:'s f -> 's Make1(Key)(Output_data).tThe analogue of the normal Map.merge function.