Search by name, SuiNS, address, digest, object ID, coin type or checkpoint.

API

validator_set

Module0x0000…0003
Move path
0x0000…0003::validator_set
Functions
6214 public, 0 entry
Structs
6
validator_set

Declarations

Rebuilt from the module interface. No verified source is published, and function bodies are only available as bytecode.

module validator_set;
struct ValidatorEpochInfoEvent has copy, drop {
epoch: u64,
validator_address: address,
reference_gas_survey_quote: u64,
stake: u64,
commission_rate: u64,
pool_staking_reward: u64,
storage_fund_staking_reward: u64,
pool_token_exchange_rate: staking_pool::PoolTokenExchangeRate,
tallying_rule_reporters: vector<address>,
tallying_rule_global_score: u64,
}
struct ValidatorEpochInfoEventV2 has copy, drop {
epoch: u64,
validator_address: address,
reference_gas_survey_quote: u64,
stake: u64,
voting_power: u64,
commission_rate: u64,
pool_staking_reward: u64,
storage_fund_staking_reward: u64,
pool_token_exchange_rate: staking_pool::PoolTokenExchangeRate,
tallying_rule_reporters: vector<address>,
tallying_rule_global_score: u64,
}
struct ValidatorJoinEvent has copy, drop {
epoch: u64,
validator_address: address,
staking_pool_id: ID,
}
struct ValidatorLeaveEvent has copy, drop {
epoch: u64,
validator_address: address,
staking_pool_id: ID,
is_voluntary: bool,
}
struct ValidatorSet has store {
total_stake: u64,
active_validators: vector<validator::Validator>,
pending_active_validators: TableVec<validator::Validator>,
pending_removals: vector<u64>,
staking_pool_mappings: Table<ID, address>,
inactive_validators: Table<ID, validator_wrapper::ValidatorWrapper>,
validator_candidates: Table<address, validator_wrapper::ValidatorWrapper>,
at_risk_validators: VecMap<address, u64>,
extra_fields: Bag,
}
struct VotingPowerAdmissionStartEpochKey has copy, drop, store {
dummy_field: bool,
}
public(package) fun active_validator(&ValidatorSet,address): &validator::Validator
public(package) fun active_validator_addresses(&ValidatorSet): vector<address>
public(package) fun active_validator_mut(&mut ValidatorSet,address): &mut validator::Validator
public fun active_validators(&ValidatorSet): &vector<validator::Validator>
public(package) fun advance_epoch(&mut ValidatorSet,&mut Balance<SUI>,&mut Balance<SUI>,&mut VecMap<address, VecSet<address>>,u64,u64)
public(package) fun any_validator(&mut ValidatorSet,address): &validator::Validator
public(package) fun any_validator_mut(&mut ValidatorSet,address): &mut validator::Validator
public(package) fun assert_no_pending_or_active_duplicates(&ValidatorSet,&validator::Validator)
public(package) fun calculate_total_stakes(&vector<validator::Validator>): u64
fun can_join(&ValidatorSet,u64): bool
public(package) fun candidate_validator(&mut ValidatorSet,address): &validator::Validator
public(package) fun candidate_validator_mut(&mut ValidatorSet,address): &mut validator::Validator
fun clean_report_records_leaving_validator(&mut VecMap<address, VecSet<address>>,address)
fun compute_adjusted_reward_distribution(&vector<validator::Validator>,u64,u64,vector<u64>,vector<u64>,u64,VecMap<u64, u64>,u64,VecMap<u64, u64>): (vector<u64>, vector<u64>)
fun compute_reward_adjustments(vector<u64>,u64,&vector<u64>,&vector<u64>): (u64, VecMap<u64, u64>, u64, VecMap<u64, u64>)
fun compute_slashed_validators(&ValidatorSet,VecMap<address, VecSet<address>>): vector<address>
fun compute_unadjusted_reward_distribution(&vector<validator::Validator>,u64,u64,u64): (vector<u64>, vector<u64>)
public(package) fun convert_to_fungible_staked_sui(&mut ValidatorSet,staking_pool::StakedSui): staking_pool::FungibleStakedSui
public fun derive_reference_gas_price(&ValidatorSet): u64
fun distribute_reward(&mut vector<validator::Validator>,&vector<u64>,&vector<u64>,&mut Balance<SUI>,&mut Balance<SUI>)
fun emit_validator_epoch_events(u64,&vector<validator::Validator>,&vector<u64>,&vector<u64>,&VecMap<address, VecSet<address>>,&vector<address>)
fun find_validator(&vector<validator::Validator>,address): Option<u64>
fun find_validator_from_table_vec(&TableVec<validator::Validator>,address): Option<u64>
public(package) fun get_active_or_pending_or_candidate_validator_ref(&mut ValidatorSet,address,u8): &validator::Validator
public fun get_active_validator_ref(&ValidatorSet,address): &validator::Validator
fun get_candidate_or_active_validator_mut(&mut ValidatorSet,address): &mut validator::Validator
public fun get_pending_validator_ref(&ValidatorSet,address): &validator::Validator
fun get_validator_indices(&vector<validator::Validator>,&vector<address>): vector<u64>
fun get_validator_ref(&vector<validator::Validator>,address): &validator::Validator
fun get_voting_power_thresholds(&ValidatorSet): (u64, u64, u64)
public(package) fun is_active_validator(&ValidatorSet,address): bool
public(package) fun is_active_validator_by_sui_address(&ValidatorSet,address): bool
public(package) fun is_at_risk_validator(&ValidatorSet,address): bool
fun is_duplicate_with_active_validator(&ValidatorSet,&validator::Validator): bool
fun is_duplicate_with_pending_validator(&ValidatorSet,&validator::Validator): bool
public fun is_inactive_validator(&ValidatorSet,ID): bool
public fun is_validator_candidate(&ValidatorSet,address): bool
public(package) fun new(vector<validator::Validator>): ValidatorSet
public(package) fun next_epoch_validator_count(&ValidatorSet): u64
public(package) fun pending_validator(&ValidatorSet,address): &validator::Validator
public(package) fun pending_validator_mut(&mut ValidatorSet,address): &mut validator::Validator
public(package) fun pool_exchange_rates(&mut ValidatorSet,ID): &Table<u64, staking_pool::PoolTokenExchangeRate>
fun process_pending_removals(&mut ValidatorSet,&mut VecMap<address, VecSet<address>>)
fun process_validator_departure(&mut ValidatorSet,validator::Validator,&mut VecMap<address, VecSet<address>>,bool): u64
public(package) fun redeem_fungible_staked_sui(&mut ValidatorSet,staking_pool::FungibleStakedSui): Balance<SUI>
public(package) fun request_add_stake(&mut ValidatorSet,address,Balance<SUI>): staking_pool::StakedSui
public(package) fun request_add_validator(&mut ValidatorSet)
public(package) fun request_add_validator_candidate(&mut ValidatorSet,validator::Validator)
public(package) fun request_remove_validator(&mut ValidatorSet)
public(package) fun request_remove_validator_candidate(&mut ValidatorSet)
public(package) fun request_withdraw_stake(&mut ValidatorSet,staking_pool::StakedSui): Balance<SUI>
public fun staking_pool_mappings(&ValidatorSet): &Table<ID, address>
public fun sum_voting_power_by_addresses(&vector<validator::Validator>,&vector<address>): u64
public fun total_stake(&ValidatorSet): u64
fun update_validator_positions_and_calculate_total_stake(&mut ValidatorSet,u64,&mut VecMap<address, VecSet<address>>): u64
public fun validator_address_by_pool_id(&mut ValidatorSet,&ID): address
public(package) fun validator_by_pool_id(&mut ValidatorSet,ID): &validator::Validator
public fun validator_stake_amount(&ValidatorSet,address): u64
public fun validator_staking_pool_id(&ValidatorSet,address): ID
public fun validator_total_stake_amount(&ValidatorSet,address): u64
public fun validator_voting_power(&ValidatorSet,address): u64