base

Full standard library replacement for OCaml
IN THIS PACKAGE
type ('a, 'b) t
type 'a key
val add_multi : ( 'a, 'b list ) t -> key:'a key -> data:'b -> unit

add_multi t ~key ~data if key is present in the table then cons data on the list, otherwise add key with a single element list.

val remove_multi : ( 'a, _ list ) t -> 'a key -> unit

remove_multi t key updates the table, removing the head of the list bound to key. If the list has only one element (or is empty) then the binding is removed.

val find_multi : ( 'a, 'b list ) t -> 'a key -> 'b list

find_multi t key returns the empty list if key is not present in the table, returns t's values for key otherwise.