sig
type key
type value
type t
val empty : CCMultiMap.S.t
val is_empty : CCMultiMap.S.t -> bool
val add :
CCMultiMap.S.t ->
CCMultiMap.S.key -> CCMultiMap.S.value -> CCMultiMap.S.t
val remove :
CCMultiMap.S.t ->
CCMultiMap.S.key -> CCMultiMap.S.value -> CCMultiMap.S.t
val remove_all : CCMultiMap.S.t -> CCMultiMap.S.key -> CCMultiMap.S.t
val mem : CCMultiMap.S.t -> CCMultiMap.S.key -> bool
val find : CCMultiMap.S.t -> CCMultiMap.S.key -> CCMultiMap.S.value list
val find_iter :
CCMultiMap.S.t ->
CCMultiMap.S.key -> (CCMultiMap.S.value -> unit) -> unit
val count : CCMultiMap.S.t -> CCMultiMap.S.key -> int
val iter :
CCMultiMap.S.t ->
(CCMultiMap.S.key -> CCMultiMap.S.value -> unit) -> unit
val fold :
CCMultiMap.S.t ->
'a -> ('a -> CCMultiMap.S.key -> CCMultiMap.S.value -> 'a) -> 'a
val size : CCMultiMap.S.t -> int
val union : CCMultiMap.S.t -> CCMultiMap.S.t -> CCMultiMap.S.t
val inter : CCMultiMap.S.t -> CCMultiMap.S.t -> CCMultiMap.S.t
val diff : CCMultiMap.S.t -> CCMultiMap.S.t -> CCMultiMap.S.t
val equal : CCMultiMap.S.t -> CCMultiMap.S.t -> bool
val compare : CCMultiMap.S.t -> CCMultiMap.S.t -> int
val submap : CCMultiMap.S.t -> CCMultiMap.S.t -> bool
val to_seq :
CCMultiMap.S.t ->
(CCMultiMap.S.key * CCMultiMap.S.value) CCMultiMap.sequence
val of_seq :
?init:CCMultiMap.S.t ->
(CCMultiMap.S.key * CCMultiMap.S.value) CCMultiMap.sequence ->
CCMultiMap.S.t
val keys : CCMultiMap.S.t -> CCMultiMap.S.key CCMultiMap.sequence
val values : CCMultiMap.S.t -> CCMultiMap.S.value CCMultiMap.sequence
end