package olinq

  1. Overview
  2. Docs
type ('a, 'b) t
val get : ('a, 'b) t -> ('a, 'b) map
val add : ('a, 'b) t -> 'a -> 'b -> unit
val add_multimap : ('a, 'b list) t -> 'a -> 'b -> unit
val add_count : ('a, int) t -> 'a -> unit
val update : ('a, 'b) t -> 'a -> f:('b -> 'b) -> or_:'b -> unit

update build k ~f ~or_ finds the value v associated to k, and maps k to f v. If k is not bound, it becomes bound to or_

val of_hash : ?eq:('a -> 'a -> bool) -> ?hash:('a -> int) -> ?size:int -> unit -> ('a, 'b) t
val of_cmp : ?cmp:('a -> 'a -> int) -> unit -> ('a, 'b) t
type 'a src =
  1. | Cmp of 'a ord
  2. | Hash of 'a equal * 'a hash * int
  3. | Default
val of_src : 'a src -> ('a, 'b) t
val src_of_args : ?cmp:'a ord -> ?eq:'a equal -> ?hash:'a hash -> unit -> 'a src
val make : ?cmp:'a ord -> ?eq:'a equal -> ?hash:'a hash -> unit -> ('a, 'b) t