package core-and-more

  1. Overview
  2. Docs

Parameters

module K : sig ... end
module V : sig ... end

Signature

type key = K.t
val compare_key : key -> key -> Ppx_deriving_runtime.int
val equal_key : key -> key -> Ppx_deriving_runtime.bool
val hash_fold_key : Base.Hash.state -> key -> Base.Hash.state
val hash_key : key -> Base.Hash.hash_value
type value = V.t
val compare_value : value -> value -> Ppx_deriving_runtime.int
val equal_value : value -> value -> Ppx_deriving_runtime.bool
val hash_fold_value : Base.Hash.state -> value -> Base.Hash.state
val hash_value : value -> Base.Hash.hash_value
module CompareDict : sig ... end
type t =
  1. | Empty
  2. | Leaf of key * value
  3. | Branch of int * int * t * t
val compare : t -> t -> Ppx_deriving_runtime.int
val hash_fold_t : Base.Hash.state -> t -> Base.Hash.state
val hash : t -> Base.Hash.hash_value
val empty : t
val mk_leaf : key -> value -> t
val mk_branch : int -> int -> t -> t -> t
val zero_bit : int -> int -> bool
val contains_key : t -> K.t -> bool
val lookup : t -> K.t -> value option
val lowest_bit : int -> int
val branching_bit : int -> int -> int
val mask : int -> int -> int
val unsigned_lt : int -> int -> bool
val join : (int * t * int * t) -> t
val match_prefix : int -> int -> int -> bool
val insert_or_combine : combiner:(value -> value -> value) -> t -> key -> value -> t
val insert : t -> key -> value -> t
val remove : K.t -> t -> t
val as_kvp_list : t -> (key * value) list
val merge_to_dict : combiner:(value -> value -> value) -> t -> t -> t
val merge : combiner:(value -> value -> 'a) -> only_d1_fn:(value -> 'a0) -> only_d2_fn:(value -> 'a1) -> t -> t -> (key * 'a2) list
val iter : f:(key -> value -> unit) -> t -> unit
val map : f:(value -> value) -> t -> t
val mapi : f:(key -> value -> value) -> t -> t
val fold : (key -> value -> 'a -> 'b) -> t -> 'c -> 'd