penumbra_stake::component::validator_handler::validator_store

Trait ValidatorDataRead

Source
pub trait ValidatorDataRead: StateRead {
Show 17 methods // Provided methods fn get_validator_info<'life0, 'life1, 'async_trait>( &'life0 self, identity_key: &'life1 IdentityKey, ) -> Pin<Box<dyn Future<Output = Result<Option<Info>>> + Send + 'async_trait>> where Self: Sync + 'async_trait, 'life0: 'async_trait, 'life1: 'async_trait { ... } fn get_validator_state( &self, identity_key: &IdentityKey, ) -> DomainFuture<State, Self::GetRawFut> { ... } fn get_validator_bonding_state<'life0, 'life1, 'async_trait>( &'life0 self, identity_key: &'life1 IdentityKey, ) -> Pin<Box<dyn Future<Output = Option<BondingState>> + Send + 'async_trait>> where Self: Sync + 'async_trait, 'life0: 'async_trait, 'life1: 'async_trait { ... } fn get_validator_pool_size<'life0, 'life1, 'async_trait>( &'life0 self, identity_key: &'life1 IdentityKey, ) -> Pin<Box<dyn Future<Output = Option<Amount>> + Send + 'async_trait>> where Self: Sync + 'async_trait, 'life0: 'async_trait, 'life1: 'async_trait { ... } fn get_validator_status<'life0, 'life1, 'async_trait>( &'life0 self, identity_key: &'life1 IdentityKey, ) -> Pin<Box<dyn Future<Output = Result<Option<Status>>> + Send + 'async_trait>> where Self: Sync + 'async_trait, 'life0: 'async_trait, 'life1: 'async_trait { ... } fn get_validator_rate( &self, identity_key: &IdentityKey, ) -> Pin<Box<dyn Future<Output = Result<Option<RateData>>> + Send + 'static>> { ... } fn get_prev_validator_rate<'life0, 'life1, 'async_trait>( &'life0 self, identity_key: &'life1 IdentityKey, ) -> Pin<Box<dyn Future<Output = Option<RateData>> + Send + 'async_trait>> where Self: Sync + 'async_trait, 'life0: 'async_trait, 'life1: 'async_trait { ... } fn get_validator_power( &self, validator: &IdentityKey, ) -> DomainFuture<Amount, Self::GetRawFut> { ... } fn get_last_disabled_height<'life0, 'life1, 'async_trait>( &'life0 self, identity_key: &'life1 IdentityKey, ) -> Pin<Box<dyn Future<Output = Option<u64>> + Send + 'async_trait>> where Self: Sync + 'async_trait, 'life0: 'async_trait, 'life1: 'async_trait { ... } fn get_validator_definition<'life0, 'life1, 'async_trait>( &'life0 self, identity_key: &'life1 IdentityKey, ) -> Pin<Box<dyn Future<Output = Result<Option<Validator>>> + Send + 'async_trait>> where Self: Sync + 'async_trait, 'life0: 'async_trait, 'life1: 'async_trait { ... } fn get_validator_uptime( &self, identity_key: &IdentityKey, ) -> DomainFuture<Uptime, Self::GetRawFut> { ... } fn lookup_identity_key_by_consensus_key<'life0, 'life1, 'async_trait>( &'life0 self, ck: &'life1 PublicKey, ) -> Pin<Box<dyn Future<Output = Option<IdentityKey>> + Send + 'async_trait>> where Self: Sync + 'async_trait, 'life0: 'async_trait, 'life1: 'async_trait { ... } fn lookup_consensus_key_by_comet_address<'life0, 'life1, 'async_trait>( &'life0 self, address: &'life1 [u8; 20], ) -> Pin<Box<dyn Future<Output = Option<PublicKey>> + Send + 'async_trait>> where Self: Sync + 'async_trait, 'life0: 'async_trait, 'life1: 'async_trait { ... } fn get_validator_definition_by_consensus_key<'life0, 'life1, 'async_trait>( &'life0 self, ck: &'life1 PublicKey, ) -> Pin<Box<dyn Future<Output = Result<Option<Validator>>> + Send + 'async_trait>> where Self: Sync + 'async_trait, 'life0: 'async_trait, 'life1: 'async_trait { ... } fn get_validator_definition_by_cometbft_address<'life0, 'life1, 'async_trait>( &'life0 self, address: &'life1 [u8; 20], ) -> Pin<Box<dyn Future<Output = Result<Option<Validator>>> + Send + 'async_trait>> where Self: Sync + 'async_trait, 'life0: 'async_trait, 'life1: 'async_trait { ... } fn compute_unbonding_height<'life0, 'life1, 'async_trait>( &'life0 self, id: &'life1 IdentityKey, start_height: u64, ) -> Pin<Box<dyn Future<Output = Result<Option<u64>>> + Send + 'async_trait>> where Self: Sync + 'async_trait, 'life0: 'async_trait, 'life1: 'async_trait { ... } fn fetch_validator_consensus_key( &self, identity_key: &IdentityKey, ) -> Pin<Box<dyn Future<Output = Result<Option<PublicKey>>> + Send + 'static>> { ... }
}
Available on crate feature component only.

Provided Methods§

Source

fn get_validator_info<'life0, 'life1, 'async_trait>( &'life0 self, identity_key: &'life1 IdentityKey, ) -> Pin<Box<dyn Future<Output = Result<Option<Info>>> + Send + 'async_trait>>
where Self: Sync + 'async_trait, 'life0: 'async_trait, 'life1: 'async_trait,

Source

fn get_validator_state( &self, identity_key: &IdentityKey, ) -> DomainFuture<State, Self::GetRawFut>

Source

fn get_validator_bonding_state<'life0, 'life1, 'async_trait>( &'life0 self, identity_key: &'life1 IdentityKey, ) -> Pin<Box<dyn Future<Output = Option<BondingState>> + Send + 'async_trait>>
where Self: Sync + 'async_trait, 'life0: 'async_trait, 'life1: 'async_trait,

Source

fn get_validator_pool_size<'life0, 'life1, 'async_trait>( &'life0 self, identity_key: &'life1 IdentityKey, ) -> Pin<Box<dyn Future<Output = Option<Amount>> + Send + 'async_trait>>
where Self: Sync + 'async_trait, 'life0: 'async_trait, 'life1: 'async_trait,

Returns the amount of delegation tokens in the specified validator’s pool.

Source

fn get_validator_status<'life0, 'life1, 'async_trait>( &'life0 self, identity_key: &'life1 IdentityKey, ) -> Pin<Box<dyn Future<Output = Result<Option<Status>>> + Send + 'async_trait>>
where Self: Sync + 'async_trait, 'life0: 'async_trait, 'life1: 'async_trait,

Convenience method to assemble a ValidatorStatus.

Source

fn get_validator_rate( &self, identity_key: &IdentityKey, ) -> Pin<Box<dyn Future<Output = Result<Option<RateData>>> + Send + 'static>>

Source

fn get_prev_validator_rate<'life0, 'life1, 'async_trait>( &'life0 self, identity_key: &'life1 IdentityKey, ) -> Pin<Box<dyn Future<Output = Option<RateData>> + Send + 'async_trait>>
where Self: Sync + 'async_trait, 'life0: 'async_trait, 'life1: 'async_trait,

Source

fn get_validator_power( &self, validator: &IdentityKey, ) -> DomainFuture<Amount, Self::GetRawFut>

Source

fn get_last_disabled_height<'life0, 'life1, 'async_trait>( &'life0 self, identity_key: &'life1 IdentityKey, ) -> Pin<Box<dyn Future<Output = Option<u64>> + Send + 'async_trait>>
where Self: Sync + 'async_trait, 'life0: 'async_trait, 'life1: 'async_trait,

Returns the block height at which the validator was last disabled. If the validator was never disabled, returns None.

Source

fn get_validator_definition<'life0, 'life1, 'async_trait>( &'life0 self, identity_key: &'life1 IdentityKey, ) -> Pin<Box<dyn Future<Output = Result<Option<Validator>>> + Send + 'async_trait>>
where Self: Sync + 'async_trait, 'life0: 'async_trait, 'life1: 'async_trait,

Source

fn get_validator_uptime( &self, identity_key: &IdentityKey, ) -> DomainFuture<Uptime, Self::GetRawFut>

Source

fn lookup_identity_key_by_consensus_key<'life0, 'life1, 'async_trait>( &'life0 self, ck: &'life1 PublicKey, ) -> Pin<Box<dyn Future<Output = Option<IdentityKey>> + Send + 'async_trait>>
where Self: Sync + 'async_trait, 'life0: 'async_trait, 'life1: 'async_trait,

Source

fn lookup_consensus_key_by_comet_address<'life0, 'life1, 'async_trait>( &'life0 self, address: &'life1 [u8; 20], ) -> Pin<Box<dyn Future<Output = Option<PublicKey>> + Send + 'async_trait>>
where Self: Sync + 'async_trait, 'life0: 'async_trait, 'life1: 'async_trait,

Source

fn get_validator_definition_by_consensus_key<'life0, 'life1, 'async_trait>( &'life0 self, ck: &'life1 PublicKey, ) -> Pin<Box<dyn Future<Output = Result<Option<Validator>>> + Send + 'async_trait>>
where Self: Sync + 'async_trait, 'life0: 'async_trait, 'life1: 'async_trait,

Source

fn get_validator_definition_by_cometbft_address<'life0, 'life1, 'async_trait>( &'life0 self, address: &'life1 [u8; 20], ) -> Pin<Box<dyn Future<Output = Result<Option<Validator>>> + Send + 'async_trait>>
where Self: Sync + 'async_trait, 'life0: 'async_trait, 'life1: 'async_trait,

Source

fn compute_unbonding_height<'life0, 'life1, 'async_trait>( &'life0 self, id: &'life1 IdentityKey, start_height: u64, ) -> Pin<Box<dyn Future<Output = Result<Option<u64>>> + Send + 'async_trait>>
where Self: Sync + 'async_trait, 'life0: 'async_trait, 'life1: 'async_trait,

Compute the unbonding height for an undelegation initiated at start_height, relative to the current state of the validator pool.

Returns None if the pool is Unbonded.

This can be used to check if the undelegation is allowed, or compute a penalty range, or to compute the epoch at which a delegation pool will be unbonded.

Source

fn fetch_validator_consensus_key( &self, identity_key: &IdentityKey, ) -> Pin<Box<dyn Future<Output = Result<Option<PublicKey>>> + Send + 'static>>

Dyn Compatibility§

This trait is not dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.

Implementors§