package tezos-protocol-011-PtHangz2
type snapshot = Cycle_repr.t * int
type key = Roll_repr.t
include Storage_sigs.Indexed_data_storage
with type key := key
with type value =
Tezos_protocol_environment_011_PtHangz2.Signature.Public_key.t
with type t := Raw_context.t
include Storage_sigs.Non_iterable_indexed_data_storage
with type key := key
with type value =
Tezos_protocol_environment_011_PtHangz2.Signature.Public_key.t
with type t := Raw_context.t
type context = Raw_context.t
The type of values
val mem : context -> key -> bool Tezos_protocol_environment_011_PtHangz2.Lwt.t
Tells if a given key is already bound to a storage bucket
val get :
context ->
key ->
value Tezos_protocol_environment_011_PtHangz2.Error_monad.tzresult
Tezos_protocol_environment_011_PtHangz2.Lwt.t
Retrieve a value from the storage bucket at a given key ; returns Storage_errorMissing_key
if the key is not set ; returns Storage_errorCorrupted_data
if the deserialisation fails.
val find :
context ->
key ->
value option Tezos_protocol_environment_011_PtHangz2.Error_monad.tzresult
Tezos_protocol_environment_011_PtHangz2.Lwt.t
Retrieve a value from the storage bucket at a given key ; returns None
if the value is not set ; returns Storage_error
Corrupted_data
if the deserialisation fails.
val update :
context ->
key ->
value ->
Raw_context.t Tezos_protocol_environment_011_PtHangz2.Error_monad.tzresult
Tezos_protocol_environment_011_PtHangz2.Lwt.t
Updates the content of a bucket ; returns A Storage_Error
Missing_key
if the value does not exists.
val init :
context ->
key ->
value ->
Raw_context.t Tezos_protocol_environment_011_PtHangz2.Error_monad.tzresult
Tezos_protocol_environment_011_PtHangz2.Lwt.t
Allocates a storage bucket at the given key and initializes it ; returns a Storage_errorExisting_key
if the bucket exists.
val add :
context ->
key ->
value ->
Raw_context.t Tezos_protocol_environment_011_PtHangz2.Lwt.t
Allocates a storage bucket at the given key and initializes it with a value ; just updates it if the bucket exists.
val add_or_remove :
context ->
key ->
value option ->
Raw_context.t Tezos_protocol_environment_011_PtHangz2.Lwt.t
When the value is Some v
, allocates the data and initializes it with v
; just updates it if the bucket exists. When the value is None
, delete the storage bucket when the value ; does nothing if the bucket does not exists.
val remove_existing :
context ->
key ->
Raw_context.t Tezos_protocol_environment_011_PtHangz2.Error_monad.tzresult
Tezos_protocol_environment_011_PtHangz2.Lwt.t
Delete a storage bucket and its contents ; returns a Storage_errorMissing_key
if the bucket does not exists.
val remove :
context ->
key ->
Raw_context.t Tezos_protocol_environment_011_PtHangz2.Lwt.t
Removes a storage bucket and its contents ; does nothing if the bucket does not exists.
val clear :
context ->
Raw_context.t Tezos_protocol_environment_011_PtHangz2.Lwt.t
Empties all the keys and associated data.
val keys : context -> key list Tezos_protocol_environment_011_PtHangz2.Lwt.t
Lists all the keys.
val bindings :
context ->
(key * value) list Tezos_protocol_environment_011_PtHangz2.Lwt.t
Lists all the keys and associated data.
val fold :
context ->
init:'a ->
f:(key -> value -> 'a -> 'a Tezos_protocol_environment_011_PtHangz2.Lwt.t) ->
'a Tezos_protocol_environment_011_PtHangz2.Lwt.t
Iterates over all the keys and associated data.
val fold_keys :
context ->
init:'a ->
f:(key -> 'a -> 'a Tezos_protocol_environment_011_PtHangz2.Lwt.t) ->
'a Tezos_protocol_environment_011_PtHangz2.Lwt.t
Iterate over all the keys.
module Snapshot :
Storage_sigs.Indexed_data_storage
with type key = snapshot * key
and type value = value
and type t = Raw_context.t
val snapshot_exists :
context ->
snapshot ->
bool Tezos_protocol_environment_011_PtHangz2.Lwt.t
val delete_snapshot :
context ->
snapshot ->
Raw_context.t Tezos_protocol_environment_011_PtHangz2.Lwt.t