Functor CCMap.Make

module Make (O : Map.OrderedType: S 
  with type 'a t = 'a Map.Make(O).t
   and type key = O.t
O : Map.OrderedType

include Map.S
val get : key -> 'a t -> 'a option
Safe version of find
val get_or : key -> 'a t -> default:'a -> 'a
get_or k m ~default returns the value associated to k if present, and returns default otherwise (if k doesn't belong in m)
Since 0.16
val update : key -> ('a option -> 'a option) -> 'a t -> 'a t
update k f m calls f (Some v) if find k m = v, otherwise it calls None. In any case, if the result is None k is removed from m, and if the result is Some v' then add k v' m is returned.
val merge_safe : f:(key -> [ `Both of 'a * 'b | `Left of 'a | `Right of 'b ] -> 'c option) ->
'a t -> 'b t -> 'c t
merge_safe ~f a b merges the maps a and b together.
Since 0.17
val of_seq : (key * 'a) CCMap.sequence -> 'a t
Same as CCMap.S.of_list
val add_seq : 'a t -> (key * 'a) CCMap.sequence -> 'a t
Since 0.14
val to_seq : 'a t -> (key * 'a) CCMap.sequence
val of_list : (key * 'a) list -> 'a t
Build a map from the given list of bindings k_i -> v_i, added in order using add. If a key occurs several times, only its last binding will be present in the result.
val add_list : 'a t -> (key * 'a) list -> 'a t
Since 0.14
val keys : 'a t -> key CCMap.sequence
Iterate on keys only
Since 0.15
val values : 'a t -> 'a CCMap.sequence
Iterate on values only
Since 0.15
val to_list : 'a t -> (key * 'a) list
val pp : ?start:string ->
?stop:string ->
?arrow:string ->
?sep:string -> key CCMap.printer -> 'a CCMap.printer -> 'a t CCMap.printer