package tezos-protocol-alpha
Install
Dune Dependency
Authors
Maintainers
Sources
sha256=7062cd57addd452852598a2214ade393130efa087b99068d53713bdf912b3680
sha512=08e4091144a03ce3c107fb91a66501bd8b65ca3278917c455a2eaac6df3e108ade63f6ab8340a4bb152d60f404326e464d0ec95d26cafe8e82f870465d24a5fc
doc/tezos-protocol-alpha.raw/Tezos_raw_protocol_alpha/Storage/Sc_rollup/Game/index.html
Module Sc_rollup.Game
Source
Refutation games are indexed by the rollup, by one staker, and by its opponent staker. Hence, each game appears twice. This is convenient to quickly compute the opponents of a given staker.
include Storage_sigs.Non_iterable_indexed_carbonated_data_storage
with type key = Tezos_protocol_environment_alpha.Signature.Public_key_hash.t
with type value = Sc_rollup_game_repr.Index.t
with type t =
(Raw_context.t * Sc_rollup_repr.t)
* Tezos_protocol_environment_alpha.Signature.Public_key_hash.t
An abstract type for keys
The type of values
val mem :
context ->
key ->
(Raw_context.t * bool) Tezos_protocol_environment_alpha.Error_monad.tzresult
Tezos_protocol_environment_alpha.Lwt.t
Tells if a given key is already bound to a storage bucket. Consumes Gas_repr.read_bytes_cost Z.zero
.
val get :
context ->
key ->
(Raw_context.t * value) Tezos_protocol_environment_alpha.Error_monad.tzresult
Tezos_protocol_environment_alpha.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. Consumes Gas_repr.read_bytes_cost <size of the value>
.
val find :
context ->
key ->
(Raw_context.t * value option)
Tezos_protocol_environment_alpha.Error_monad.tzresult
Tezos_protocol_environment_alpha.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. Consumes Gas_repr.read_bytes_cost <size of the value>
if present or Gas_repr.read_bytes_cost Z.zero
.
val update :
context ->
key ->
value ->
(Raw_context.t * int) Tezos_protocol_environment_alpha.Error_monad.tzresult
Tezos_protocol_environment_alpha.Lwt.t
Updates the content of a bucket ; returns A Storage_Error
Missing_key
if the value does not exists. Consumes serialization cost. Consumes Gas_repr.write_bytes_cost <size of the new value>
. Returns the difference from the old to the new size.
val init :
context ->
key ->
value ->
(Raw_context.t * int) Tezos_protocol_environment_alpha.Error_monad.tzresult
Tezos_protocol_environment_alpha.Lwt.t
Allocates a storage bucket at the given key and initializes it ; returns a Storage_errorExisting_key
if the bucket exists. Consumes serialization cost. Consumes Gas_repr.write_bytes_cost <size of the value>
. Returns the size.
val add :
context ->
key ->
value ->
(Raw_context.t * int * bool)
Tezos_protocol_environment_alpha.Error_monad.tzresult
Tezos_protocol_environment_alpha.Lwt.t
Allocates a storage bucket at the given key and initializes it with a value ; just updates it if the bucket exists. Consumes serialization cost. Consumes Gas_repr.write_bytes_cost <size of the new value>
. Returns the difference from the old (maybe 0) to the new size, and a boolean indicating if a value was already associated to this key.
val add_or_remove :
context ->
key ->
value option ->
(Raw_context.t * int * bool)
Tezos_protocol_environment_alpha.Error_monad.tzresult
Tezos_protocol_environment_alpha.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. Consumes serialization cost. Consumes the same gas cost as either remove
or init_set
. Returns the difference from the old (maybe 0) to the new size, and a boolean indicating if a value was already associated to this key.
val remove_existing :
context ->
key ->
(Raw_context.t * int) Tezos_protocol_environment_alpha.Error_monad.tzresult
Tezos_protocol_environment_alpha.Lwt.t
Delete a storage bucket and its contents ; returns a Storage_errorMissing_key
if the bucket does not exists. Consumes Gas_repr.write_bytes_cost Z.zero
. Returns the freed size.
val remove :
context ->
key ->
(Raw_context.t * int * bool)
Tezos_protocol_environment_alpha.Error_monad.tzresult
Tezos_protocol_environment_alpha.Lwt.t
Removes a storage bucket and its contents ; does nothing if the bucket does not exists. Consumes Gas_repr.write_bytes_cost Z.zero
. Returns the freed size, and a boolean indicating if a value was already associated to this key.
Returns the list of all storage bucket keys. Not carbonated (i.e. gas is not consumed); use with care.
val list_key_values :
?offset:int ->
?length:int ->
t ->
(Raw_context.t * (key * value) list)
Tezos_protocol_environment_alpha.Error_monad.tzresult
Tezos_protocol_environment_alpha.Lwt.t
list_key_values ?offset ?length storage
lists the key and value pairs of each entry in the given storage
. The first offset
values are ignored (if passed). Negative offsets are treated as 0
. There will be no more than length
values in the result list (if passed). Negative values are treated as 0
.
The returned context
takes into account gas consumption of traversing the keys and loading values.
Returns true
iff context
is empty.