Page
Library
Module
Module type
Parameter
Class
Class type
Source
M.MakeSeededMakeSeeded(K)(V) is a variant backed by Hashtbl.SeededS.
module K : Hashtbl.SeededHashedTypeval create : ?random:bool -> int -> tcreate ?random cap is a new map with capacity cap.
~random randomizes the underlying hash table. It defaults to false. See Hashtbl.create.
Note. The internal hash table is created with size cap.
val is_empty : t -> boolis_empty t is true iff t is empty.
val items : t -> intitems t is the number of bindings in t.
val size : t -> intsize t is the combined weight of bindings in t.
val capacity : t -> intcapacity t is the maximum combined weight of bindings this map will hold before they start being discarded in least-recently-used order.
val trim : t -> unittrim t discards bindings from t, if needed, until size t <= capacity t. The bindings are discarded in least-recently-used order.
val resize : int -> t -> unitresize cap t changes the capacity of t to cap, while leavind the bindings unchanged.
kfind k t is the v bound to k. When k is not bound in t, the result is None.
If promote is true, the binding k -> v is promoted to most-recently-used. It defaults to true.
add k v t adds the binding k -> v to t. If k is alread bound, the old binding is replaced. The binding k -> v becomes most-recently-used.
If trim is true, add trims the resulting map, ensuring it is not over capacity. It defaults to true.
lru t is the least-recently-used binding in t, or None, when t is empty.
val drop_lru : t -> unitdrop_lru t removes the binding lru t.
Traversal direction for operations that visit all bindings.
`Up means least-to-most recently used, or increasing relevance.`Down means most-to-least recently used, or decreasing relevance.fold f z t is f k0 v0 (... (f kn vn z)).
~dir controls the order of folding. Defaults to `Up.
iter f t applies f to all the bindings in t.
~dir controls the order of application. Defaults to `Up.
to_list t are the bindings in t. ~dir controls the order, defaults to `Up.
of_list kvs is a map with the bindings from kvs. Its size and capacity are the total weight of its bindings.
With respect to duplicates and the recently-used order, it behaves as if the bindings were added sequentially in the list order.
val pp :
?pp_size:(Format.formatter -> (int * int) -> unit) ->
?sep:(Format.formatter -> unit -> unit) ->
(Format.formatter -> (k * v) -> unit) ->
Format.formatter ->
t ->
unit