package tezos-protocol-012-Psithaca
Install
Dune Dependency
Authors
Maintainers
Sources
sha256=7062cd57addd452852598a2214ade393130efa087b99068d53713bdf912b3680
sha512=08e4091144a03ce3c107fb91a66501bd8b65ca3278917c455a2eaac6df3e108ade63f6ab8340a4bb152d60f404326e464d0ec95d26cafe8e82f870465d24a5fc
doc/tezos-protocol-012-Psithaca.raw/Tezos_raw_protocol_012_Psithaca/Ticket_storage/index.html
Module Tezos_raw_protocol_012_Psithaca.Ticket_storage
Source
A value of type key_hash
is a hashed combination of:
- Ticketer
- Content type
- Content
- Owner
script_expr_hash_of_key_hash key_hash
returns a Script_expr_hash.t
value representation of the given key_hash
. This is useful for comparing and pretty-printing key-hash values.
val make_key_hash :
Raw_context.t ->
ticketer:Script_repr.node ->
typ:Script_repr.node ->
contents:Script_repr.node ->
owner:Script_repr.node ->
(key_hash * Raw_context.t)
Tezos_protocol_environment_012_Psithaca.Error_monad.tzresult
make_key_hash ctxt ~ticketer ~typ ~contents ~owner
creates a hashed representation of the given ticketer
, typ
, contents
and owner
.
val get_balance :
Raw_context.t ->
key_hash ->
(Tezos_protocol_environment_012_Psithaca.Z.t option * Raw_context.t)
Tezos_protocol_environment_012_Psithaca.Error_monad.tzresult
Tezos_protocol_environment_012_Psithaca.Lwt.t
get_balance ctxt key
receives the ticket balance for the given key
in the context ctxt
. The key
represents a ticket content and a ticket creator pair. In case there exists no value for the given key
, None
is returned.
val adjust_balance :
Raw_context.t ->
key_hash ->
delta:Tezos_protocol_environment_012_Psithaca.Z.t ->
(Tezos_protocol_environment_012_Psithaca.Z.t * Raw_context.t)
Tezos_protocol_environment_012_Psithaca.Error_monad.tzresult
Tezos_protocol_environment_012_Psithaca.Lwt.t
adjust_balance ctxt key ~delta
adjusts the balance of the given key (representing a ticket content, creator and owner pair) and delta
. The value of delta
can be positive as well as negative. If there is no pre-exising balance for the given ticket type and owner, it is assumed to be 0 and the new balance is delta
. The function also returns the difference between the old and the new size of the storage. Note that the difference may be negative. For example, because when setting the balance to zero, an entry is removed.
The function fails with a Negative_ticket_balance
error in case the resulting balance is negative.