package tezos-protocol-alpha
Install
dune-project
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_mapSource
val empty :
'a Script_typed_ir.comparable_ty ->
('b, _) Script_typed_ir.ty ->
('a, 'b) Script_typed_ir.big_mapempty 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.tmem 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.tget 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.tupdate 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.tget_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.