Module Extended_hashtbl.Access_control

module Access_control: sig .. end

type ('key, 'data, +'z) any 
module Immutable: sig .. end
module Read_only: sig .. end
module Read_write: sig .. end
val of_hashtbl : ('key, 'data) Core.Std.Hashtbl.t ->
('key, 'data, 'a) any
val clear : ('a, 'b) Read_write.t -> unit
val copy : ('a, 'b, 'c) any ->
('a, 'b, 'd) any
val fold : ('a, 'b, 'd) any ->
init:'c -> f:(key:'a -> data:'b -> 'c -> 'c) -> 'c
val iter : ('a, 'b, 'c) any ->
f:(key:'a -> data:'b -> unit) -> unit
val existsi : ('a, 'b, 'c) any ->
f:(key:'a -> data:'b -> bool) -> bool
val exists : ('a, 'b, 'c) any -> f:('b -> bool) -> bool
val length : ('a, 'b, 'c) any -> int
val is_empty : ('a, 'b, 'c) any -> bool
val mem : ('a, 'b, 'c) any -> 'a -> bool
val remove : ('a, 'b) Read_write.t -> 'a -> unit
val remove_one : ('a, 'b list) Read_write.t -> 'a -> unit
val replace : ('a, 'b) Read_write.t ->
key:'a -> data:'b -> unit
val set : ('a, 'b) Read_write.t ->
key:'a -> data:'b -> unit
val add : ('a, 'b) Read_write.t ->
key:'a -> data:'b -> [ `Duplicate | `Ok ]
val add_exn : ('a, 'b) Read_write.t ->
key:'a -> data:'b -> unit
val change : ('a, 'b) Read_write.t ->
'a -> ('b option -> 'b option) -> unit
val add_multi : ('a, 'b list) Read_write.t ->
key:'a -> data:'b -> unit
val map : ('a, 'b, 'd) any ->
f:('b -> 'c) -> ('a, 'c, 'e) any
val mapi : ('a, 'b, 'd) any ->
f:(key:'a -> data:'b -> 'c) ->
('a, 'c, 'e) any
val filter_map : ('a, 'b, 'd) any ->
f:('b -> 'c option) -> ('a, 'c, 'e) any
val filter_mapi : ('a, 'b, 'd) any ->
f:(key:'a -> data:'b -> 'c option) ->
('a, 'c, 'e) any
val filter : ('a, 'b, 'c) any ->
f:('b -> bool) -> ('a, 'b, 'd) any
val filteri : ('a, 'b, 'c) any ->
f:(key:'a -> data:'b -> bool) ->
('a, 'b, 'd) any
val find_or_add : ('a, 'b, 'c) any ->
'a -> default:(unit -> 'b) -> 'b
val find : ('a, 'b, 'c) any -> 'a -> 'b option
val find_exn : ('a, 'b, 'c) any -> 'a -> 'b
val iter_vals : ('a, 'b, 'c) any -> f:('b -> unit) -> unit
val merge : ('k, 'a, 'd) any ->
('k, 'b, 'e) any ->
f:(key:'k -> [ `Both of 'a * 'b | `Left of 'a | `Right of 'b ] -> 'c option) ->
('k, 'c, 'f) any
val merge_into : f:(key:'a -> 'b -> 'b option -> 'b option) ->
src:('a, 'b, 'c) any ->
dst:('a, 'b) Read_write.t -> unit
val keys : ('a, 'b, 'c) any -> 'a list
val data : ('a, 'b, 'c) any -> 'b list
val filter_inplace : ('a, 'b) Read_write.t ->
f:('b -> bool) -> unit
val filteri_inplace : ('a, 'b) Read_write.t ->
f:('a -> 'b -> bool) -> unit
val equal : ('a, 'b, 'c) any ->
('a, 'b, 'd) any ->
('b -> 'b -> bool) -> bool
val to_alist : ('a, 'b, 'c) any -> ('a * 'b) list
val incr : ?by:int ->
('a, int) Read_write.t -> 'a -> unit