package tezos-protocol-alpha
Install
Dune Dependency
Authors
Maintainers
Sources
sha256=43723d096307603703a1a89ed1b2eb202b365f5e7824b96b0cbf813b343a6cf7
sha512=b2a637f2e965000d3d49ad85277ca24d6cb07a1a7cf2bc69d296d8b03ad78c3eaa8e21e94b9162e62c2e11649cd03bc845b2a3dafe623b91065df69d47dc8e4f
doc/tezos-protocol-alpha.raw/Tezos_raw_protocol_alpha/Script_big_map/index.html
Module Tezos_raw_protocol_alpha.Script_big_map
Source
val empty :
'a Script_typed_ir.comparable_ty ->
('b, _) Script_typed_ir.ty ->
('a, 'b) Script_typed_ir.big_map
empty
is the big map with no bindings.
val mem :
Alpha_context.context ->
'key ->
('key, 'value) Script_typed_ir.big_map ->
(bool * Alpha_context.context)
Tezos_protocol_environment_alpha.Error_monad.tzresult
Tezos_protocol_environment_alpha.Lwt.t
mem ctxt key big_map
returns true
iff key
is bound in the given big_map
. Consumes the cost of hashing the given key. Consumes as Storage.Big_map.Contents.mem
if the key is not bound yet in the current overlay.
val get :
Alpha_context.context ->
'key ->
('key, 'value) Script_typed_ir.big_map ->
('value option * Alpha_context.context)
Tezos_protocol_environment_alpha.Error_monad.tzresult
Tezos_protocol_environment_alpha.Lwt.t
get ctxt key big_map
returns the value bound by key
in the given big_map
. If the key
is not bound, None
is returned instead. Consumes cost of hashing the given key. Consumes cost as Storage.Big_map.Contents.find
in case of the given key is absent in the current overlay. Consumes cost of parsing data if the value is readed from storage.
val update :
Alpha_context.context ->
'key ->
'value option ->
('key, 'value) Script_typed_ir.big_map ->
(('key, 'value) Script_typed_ir.big_map * Alpha_context.context)
Tezos_protocol_environment_alpha.Error_monad.tzresult
Tezos_protocol_environment_alpha.Lwt.t
update ctxt key new_value big_map
updates the value bound by key
with v
if the new_value
is Some v
. When the new_value
is None
, delete the entire entry bound by key
in the big_map
. Consumes cost for hashing the given key. See get_and_update
for details.
val get_and_update :
Alpha_context.context ->
'key ->
'value option ->
('key, 'value) Script_typed_ir.big_map ->
(('value option * ('key, 'value) Script_typed_ir.big_map)
* Alpha_context.context)
Tezos_protocol_environment_alpha.Error_monad.tzresult
Tezos_protocol_environment_alpha.Lwt.t
get_and_update ctxt key new_value big_map
works just like update ctxt key new_value big_map
except it also returns the old value bound by key
. Consumes cost for hashing the given key. This does not modify the underlying storage, only the diff table.