package core_extended

  1. Overview
  2. Docs
Legend:
Library
Module
Module type
Parameter
Class
Class type
module type Key = sig ... end
type ('key1, 'key2, 'data) t
include sig ... end
val sexp_of_t : ('key1 -> Sexplib.Sexp.t) -> ('key2 -> Sexplib.Sexp.t) -> ('data -> Sexplib.Sexp.t) -> ('key1, 'key2, 'data) t -> Sexplib.Sexp.t
include Core.Invariant.S3 with type ('a, 'b, 'c) t := ('a, 'b, 'c) t
val invariant : ('a -> unit) -> ('b -> unit) -> ('c -> unit) -> ('a, 'b, 'c) t -> unit
val clear : (_, _, _) t -> unit
val add_exn : ('key1, 'key2, 'data) t -> 'key1 -> 'key2 -> 'data -> unit
val set : ('key1, 'key2, 'data) t -> 'key1 -> 'key2 -> 'data -> unit
val remove_exn : ('key1, 'key2, 'data) t -> 'key1 -> 'key2 -> unit
val remove_all1 : ('key1, 'key2, 'data) t -> 'key1 -> unit
val find : ('key1, 'key2, 'data) t -> 'key1 -> 'key2 -> 'data option
val find1 : ('key1, 'key2, 'data) t -> 'key1 -> ('key2, 'data) Core.Hashtbl.t option
val mem : ('key1, 'key2, 'data) t -> 'key1 -> 'key2 -> bool
val mem1 : ('key1, 'key2, 'data) t -> 'key1 -> bool

mem1 t key1 is true iff \exists key2 s.t. find t key1 key2 is not None *

val iter : ('key1, 'key2, 'data) t -> f:('key1 -> 'key2 -> 'data -> unit) -> unit
val iter1 : ('key1, 'key2, 'data) t -> f:('key1 -> ('key2, 'data) Core.Hashtbl.t -> unit) -> unit
val iter_key2 : ('key1, 'key2, 'data) t -> 'key1 -> f:('key2 -> 'data -> unit) -> unit

iter_key2 t key1 ~f is a no-op unless mem1 t key1 *

module Make (Key1 : Key) (Key2 : Key) : sig ... end
OCaml

Innovation. Community. Security.