package octez-libs
Install
Dune Dependency
Authors
Maintainers
Sources
sha256=aa2f5bc99cc4ca2217c52a1af2a2cdfd3b383208cb859ca2e79ca0903396ca1d
sha512=d68bb3eb615e3dcccc845fddfc9901c95b3c6dc8e105e39522ce97637b1308a7fa7aa1d271351d5933febd7476b2819e1694f31198f1f0919681f1f9cc97cb3a
doc/octez-libs.stdlib/Tezos_stdlib/Hash_queue/Make/index.html
Module Hash_queue.Make
Source
Parameters
module K : Hashtbl.HashedType
module V : sig ... end
Signature
The type of hash queues holding bindings from K.t
to V.t
val create : int -> t
create n
creates an empty hash queue of capacity n
. New elements added to a full hash queue push the oldest ones out.
remove q k
removes the binding from k
in q
. If k
is not bound in c
, it does nothing.
replace q k v
binds the key k
to the value v
in the queue q
. This may or may not cause another binding to be removed, depending on the number of bindings already present in q
.
find_opt q k
is Some v
if k
is bound to v
in q
. It is None
otherwise.
val length : t -> int
length q
is the number of bindings held by q
.
val capacity : t -> int
capacity q
is the number of bindings q
can hold: capacity (create n) = n
val clear : t -> unit
clear q
removes all bindings from q
.
fold f q init
folds the function f
over the bindings of q
. The elements are iterated from oldest to newest.
Folding in the Lwt monad, from oldest to newest.
val fold_es :
(K.t -> V.t -> 'a -> ('a, 'error) result Lwt.t) ->
t ->
'a ->
('a, 'error) result Lwt.t
Folding in the error monad, from oldest to newest.
Returns the oldest element of the queue when not empty. Returns None
when empty.
take q
removes and returns the oldest element in queue q
, or returns None
if the queue is empty.
peek_at_most q n
returns the oldest n elements of the queue q
. If the queue has less than n
elements, returns all elements of the queue.
take_at_most q n
removes and returns the oldest n elements of the queue q
. If the queue has less than n
elements, removes and returns all elements of the queue.
Returns the keys of the elements stored in the queue from oldest to newest.