module Hmap:sig..end
v0.8.1 - homepage
type 'a key
'a.module Key:sig..end
type t
val empty : t empty is the empty map.val is_empty : t -> boolis_empty m is true iff m is empty.val mem : 'a key -> t -> boolmem k m is true iff k is bound in m.val add : 'a key -> 'a -> t -> t add k v m is m with k bound to v.val singleton : 'a key -> 'a -> t singleton k v is add k v empty.val rem : 'a key -> t -> t rem k m is m with k unbound.val find : 'a key -> t -> 'a optionfind k m is the value of k's binding in m, if any.val get : 'a key -> t -> 'aget k m is the value of k's binding in m.Invalid_argument if k is not bound in m.type binding =
val iter : (binding -> unit) -> t -> unititer f m applies f to all bindings of m.val fold : (binding -> 'a -> 'a) -> t -> 'a -> 'afold f m acc folds over the bindings of m with f, starting with
accval for_all : (binding -> bool) -> t -> boolfor_all p m is true iff all bindings of m satisfy p.val exists : (binding -> bool) -> t -> boolexists p m is true iff there exists a bindings of m that
satisfies p.val filter : (binding -> bool) -> t -> t filter p m are the bindings of m that satisfy p.val cardinal : t -> intcardinal m is the number of bindings in m.val any_binding : t -> binding optionany_binding m is a binding of m (if not empty).val get_any_binding : t -> binding get_any_binding m is a binding of m.Invalid_argument if m is empty.
The functorial interface allows to associate more information to the
keys. For example a key name or a key value pretty-printer.
module type KEY_INFO =sig..end
module type S =sig..end
Hmap.Make
module Make:
Key_info.t