package tezos-protocol-016-PtMumbai
This module groups everything related to delegate registration. For the invariants maintained, see the submodule Contract
.
It also groups "trivial" getters/setters related to delegates.
It is responsible for maintaining the following tables:
type Tezos_protocol_environment_016_PtMumbai.Error_monad.error +=
| Unregistered_delegate of Tezos_protocol_environment_016_PtMumbai.Signature.Public_key_hash.t
module Contract : sig ... end
This module ensures the following invariants:
val registered :
Raw_context.t ->
Tezos_protocol_environment_016_PtMumbai.Signature.Public_key_hash.t ->
bool Tezos_protocol_environment_016_PtMumbai.Lwt.t
Has a delegate been registered in the delegate table?
val fold :
Raw_context.t ->
order:[ `Sorted | `Undefined ] ->
init:'a ->
f:
(Tezos_protocol_environment_016_PtMumbai.Signature.Public_key_hash.t ->
'a ->
'a Tezos_protocol_environment_016_PtMumbai.Lwt.t) ->
'a Tezos_protocol_environment_016_PtMumbai.Lwt.t
Iterate on all registered delegates.
val list :
Raw_context.t ->
Tezos_protocol_environment_016_PtMumbai.Signature.Public_key_hash.t list
Tezos_protocol_environment_016_PtMumbai.Lwt.t
List all registered delegates.
val set_frozen_deposits_limit :
Raw_context.t ->
Tezos_protocol_environment_016_PtMumbai.Signature.Public_key_hash.t ->
Tez_repr.t option ->
Raw_context.t Tezos_protocol_environment_016_PtMumbai.Lwt.t
val frozen_deposits :
Raw_context.t ->
Tezos_protocol_environment_016_PtMumbai.Signature.Public_key_hash.t ->
Storage.deposits Tezos_protocol_environment_016_PtMumbai.Error_monad.tzresult
Tezos_protocol_environment_016_PtMumbai.Lwt.t
Returns a delegate's frozen deposits, both the current amount and the initial freezed amount.
A delegate's frozen balance is only composed of frozen deposits; rewards and fees are not frozen, but simply credited at the right moment.
val full_balance :
Raw_context.t ->
Tezos_protocol_environment_016_PtMumbai.Signature.Public_key_hash.t ->
Tez_repr.t Tezos_protocol_environment_016_PtMumbai.Error_monad.tzresult
Tezos_protocol_environment_016_PtMumbai.Lwt.t
Returns the full 'balance' of the implicit contract associated to a given key, i.e. the sum of the spendable balance (given by balance
or Contract_storage.get_balance
) and of the frozen balance. The frozen balance is composed of all frozen bonds associated to the contract (given by Contract_storage.get_frozen_bonds
) and of the frozen deposits (given by frozen_deposits
).
Only use this function for RPCs: this is expensive.
val delegated_balance :
Raw_context.t ->
Tezos_protocol_environment_016_PtMumbai.Signature.Public_key_hash.t ->
Tez_repr.t Tezos_protocol_environment_016_PtMumbai.Error_monad.tzresult
Tezos_protocol_environment_016_PtMumbai.Lwt.t
Only use this function for RPCs: this is expensive.
val drain :
Raw_context.t ->
delegate:Tezos_protocol_environment_016_PtMumbai.Signature.Public_key_hash.t ->
destination:
Tezos_protocol_environment_016_PtMumbai.Signature.Public_key_hash.t ->
(Raw_context.t * bool * Tez_repr.t * Receipt_repr.balance_updates)
Tezos_protocol_environment_016_PtMumbai.Error_monad.tzresult
Tezos_protocol_environment_016_PtMumbai.Lwt.t