package tezos-client-015-PtLimaPt
Install
dune-project
Dependency
Authors
Maintainers
Sources
sha256=ad9e08819871c75ba6f4530b125f7d157799398e4d77a1e6bfea9d91ff37ff55
sha512=c5dc4d40cc09bc6980fbbdb5c2e105bf4252cf9cfcb2b49660b0ebe4dc789f6709ec3b3bf2f87d81580d3eed9521eeb1c960f24d9b14eb0285aaba1f84d10a9b
doc/tezos-client-015-PtLimaPt.sapling/Tezos_client_sapling_015_PtLimaPt/Context/index.html
Module Tezos_client_sapling_015_PtLimaPt.ContextSource
This module allows the creation of Sapling transactions: shield, unshield and transfer. Because Sapling uses an UTXO model, it is necessary for the client to maintain locally the set of unspent outputs for each viewing key, for each smart contract. This operation is called scanning. This local cache is updated downloading from the node only the difference from the last scanned state.
This module is used to represent any shielded token to avoid confusing it with Tez.
Convert a Sapling transaction to a suitable argument for the Smart Contract.
State of a contract, potentially involving several viewing keys
val shield :
Tezos_client_base.Client_context.full ->
dst:Tezos_sapling.Core.Client.Viewing_key.address ->
?message:bytes ->
Tez.t ->
Contract_state.t ->
string ->
Tezos_sapling.Core.Client.UTXO.transaction Tezos_base.TzPervasives.tzresult
Lwt.tshield ~message ~dst tez cstate anti-replay returns a transaction shielding tez tez to a sapling address dst using a sapling storage cstate and the anti-replay string.
val unshield :
src:Tezos_sapling.Core.Client.Spending_key.t ->
bound_data:string ->
backdst:Tezos_sapling.Core.Client.Viewing_key.address ->
Shielded_tez.t ->
Contract_state.t ->
string ->
Tezos_sapling.Core.Client.UTXO.transaction Tezos_base.TzPervasives.tzresultunshield ~src_name ~src ~dst ~backdst stez cstate storage returns a transaction unshielding stez shielded tokens from a sapling wallet src to a transparent tezos address dst, sending the change back to backdst and using a Sapling storage cstate and a anti-replay string. The transaction is refused if there is an insufficient amount of shielded tez in the wallet src, the error is raised with src_name.
val transfer :
Tezos_client_base.Client_context.full ->
src:Tezos_sapling.Core.Client.Spending_key.t ->
dst:Tezos_sapling.Core.Client.Viewing_key.address ->
backdst:Tezos_sapling.Core.Client.Viewing_key.address ->
?message:bytes ->
Shielded_tez.t ->
Contract_state.t ->
string ->
Tezos_sapling.Core.Client.UTXO.transaction Tezos_base.TzPervasives.tzresult
Lwt.ttransfer ~message ~src ~dst ~backdst amount cstate anti-replay creates a Sapling transaction of amount shielded tez from Sapling wallet src to Sapling address dst, sending the change to backdst, using a Sapling storage cstate and a anti-replay string. ~message is a message that will be uploaded encrypted on chain.