core-and-more

Includes core, and some more useful extensions
IN THIS PACKAGE
type key = F.Arg.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 = F.Result.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 =
| Empty
| Leaf of key * value
| 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 -> F.Arg.t -> bool
val lookup : t -> F.Arg.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 : F.Arg.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 -> 'a ) -> only_d2_fn:( value -> 'a ) -> t -> t -> (key * 'a) 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 -> 'a ) -> t -> 'a -> 'a