package tezos-protocol-014-PtKathma
This library provides basic operations (accessors and setters) on staking tokens.
val deactivate_only_call_from_delegate_storage :
Raw_context.t ->
Tezos_protocol_environment_014_PtKathma.Signature.Public_key_hash.t ->
Raw_context.t Tezos_protocol_environment_014_PtKathma.Lwt.t
val activate_only_call_from_delegate_storage :
Raw_context.t ->
Tezos_protocol_environment_014_PtKathma.Signature.Public_key_hash.t ->
Raw_context.t Tezos_protocol_environment_014_PtKathma.Error_monad.tzresult
Tezos_protocol_environment_014_PtKathma.Lwt.t
val fold :
Raw_context.t ->
f:
((Tezos_protocol_environment_014_PtKathma.Signature.Public_key_hash.t
* Tez_repr.t) ->
'a ->
'a Tezos_protocol_environment_014_PtKathma.Error_monad.tzresult
Tezos_protocol_environment_014_PtKathma.Lwt.t) ->
order:[ `Sorted | `Undefined ] ->
'a ->
'a Tezos_protocol_environment_014_PtKathma.Error_monad.tzresult
Tezos_protocol_environment_014_PtKathma.Lwt.t
fold ctxt ~f ~order init
folds f
on the list of active delegates with at least one roll. The folding process starts with init
. Each element of the list is a pair pkh, stake
, where pkh
is the public key hash of the delegate and stake
is the staking balance of the delegate.
val fold_snapshot :
Raw_context.t ->
index:int ->
f:
((Tezos_protocol_environment_014_PtKathma.Signature.Public_key_hash.t
* Tez_repr.t) ->
'a ->
'a Tezos_protocol_environment_014_PtKathma.Error_monad.tzresult
Tezos_protocol_environment_014_PtKathma.Lwt.t) ->
init:'a ->
'a Tezos_protocol_environment_014_PtKathma.Error_monad.tzresult
Tezos_protocol_environment_014_PtKathma.Lwt.t
fold_snapshot ctxt ~index ~f ~init
folds f
on the list of active delegates with at least one roll for the given snapshot index
. The folding process starts with init
. Each element of the list is a pair pkh, stake
, where pkh
is the public key hash of the delegate and stake
is the staking balance of the delegate for the given snapshot index
.
val max_snapshot_index :
Raw_context.t ->
int Tezos_protocol_environment_014_PtKathma.Error_monad.tzresult
Tezos_protocol_environment_014_PtKathma.Lwt.t
max_snapshot_index ctxt
returns the index of the last snapshot taken of staking balances and active delegates.
val set_selected_distribution_for_cycle :
Raw_context.t ->
Cycle_repr.t ->
(Tezos_protocol_environment_014_PtKathma.Signature.public_key_hash
* Tez_repr.t)
list ->
Tez_repr.t ->
Raw_context.t Tezos_protocol_environment_014_PtKathma.Error_monad.tzresult
Tezos_protocol_environment_014_PtKathma.Lwt.t
set_selected_distribution_for_cycle ctxt cycle distrib total_stake
saves the selected distribution distrib
of the total_stake
for the given cycle
.
val clear_at_cycle_end :
Raw_context.t ->
new_cycle:Cycle_repr.t ->
Raw_context.t Tezos_protocol_environment_014_PtKathma.Error_monad.tzresult
Tezos_protocol_environment_014_PtKathma.Lwt.t
val fold_on_active_delegates_with_rolls :
Raw_context.t ->
order:[ `Sorted | `Undefined ] ->
init:'a ->
f:
(Tezos_protocol_environment_014_PtKathma.Signature.Public_key_hash.t ->
unit ->
'a ->
'a Tezos_protocol_environment_014_PtKathma.Lwt.t) ->
'a Tezos_protocol_environment_014_PtKathma.Lwt.t
val get_selected_distribution :
Raw_context.t ->
Cycle_repr.t ->
(Tezos_protocol_environment_014_PtKathma.Signature.Public_key_hash.t
* Tez_repr.t)
list
Tezos_protocol_environment_014_PtKathma.Error_monad.tzresult
Tezos_protocol_environment_014_PtKathma.Lwt.t
val find_selected_distribution :
Raw_context.t ->
Cycle_repr.t ->
(Tezos_protocol_environment_014_PtKathma.Signature.Public_key_hash.t
* Tez_repr.t)
list
option
Tezos_protocol_environment_014_PtKathma.Error_monad.tzresult
Tezos_protocol_environment_014_PtKathma.Lwt.t
val prepare_stake_distribution :
Raw_context.t ->
Raw_context.t Tezos_protocol_environment_014_PtKathma.Error_monad.tzresult
Tezos_protocol_environment_014_PtKathma.Lwt.t
Copy the stake distribution for the current cycle (from Storage.Stake.Selected_distribution_for_cycle
) in the raw context.
val get_total_active_stake :
Raw_context.t ->
Cycle_repr.t ->
Tez_repr.t Tezos_protocol_environment_014_PtKathma.Error_monad.tzresult
Tezos_protocol_environment_014_PtKathma.Lwt.t
get_total_active_stake ctxt cycle
retrieves the amount in Tez of the active stake at cycle
from ctxt
.
val add_contract_stake :
Raw_context.t ->
Contract_repr.t ->
Tez_repr.t ->
Raw_context.t Tezos_protocol_environment_014_PtKathma.Error_monad.tzresult
Tezos_protocol_environment_014_PtKathma.Lwt.t
add_contract_stake ctxt contract amount
calls Stake_storage.add_stake ctxt delegate amount
if contract
has a delegate
. Otherwise this function does nothing.
val remove_contract_stake :
Raw_context.t ->
Contract_repr.t ->
Tez_repr.t ->
Raw_context.t Tezos_protocol_environment_014_PtKathma.Error_monad.tzresult
Tezos_protocol_environment_014_PtKathma.Lwt.t
remove_contract_stake ctxt contract amount
calls Stake_storage.remove_stake ctxt delegate amount
if contract
has a delegate
. Otherwise this function does nothing.