Functor Arg_helper.Make

module Make: functor (S : sig
module Key: sig .. end
module Value: sig .. end
end) -> sig .. end
Parameters:
S : sig module Key : sig type t (** The textual representation of a key must not contain '=' or ','. *) val of_string : string -> t module Map : Map.S with type key = t end module Value : sig type t (** The textual representation of a value must not contain ','. *) val of_string : string -> t end end

type parsed;
let default: S.Value.t => parsed;
let set_base_default: (S.Value.t, parsed) => parsed;
let add_base_override: (S.Key.t, S.Value.t, parsed) => parsed;
let reset_base_overrides: parsed => parsed;
let set_user_default: (S.Value.t, parsed) => parsed;
let add_user_override: (S.Key.t, S.Value.t, parsed) => parsed;
let parse: (string, string, ref(parsed)) => unit;
type parse_result = 
| Ok
| Parse_failed of exn
let parse_no_error: (string, ref(parsed)) => parse_result;
let get: (~key: S.Key.t, parsed) => S.Value.t;