pub struct StakingPagedQueryApi<'api> { /* private fields */ }Implementations§
Source§impl<'api> StakingPagedQueryApi<'api>
impl<'api> StakingPagedQueryApi<'api>
Sourcepub fn bonded(&self) -> StoragePaged<AccountId, AccountId>
pub fn bonded(&self) -> StoragePaged<AccountId, AccountId>
Map from all locked “stash” accounts to the controller account.
TWOX-NOTE: SAFE since AccountId is a secure hash.
Sourcepub fn ledger(&self) -> StoragePaged<AccountId, StakingLedger>
pub fn ledger(&self) -> StoragePaged<AccountId, StakingLedger>
Map from all (unlocked) “controller” accounts to the info regarding the staking.
Note: All the reads and mutations to this storage MUST be done through the methods exposed
by [StakingLedger] to ensure data and lock consistency.
Sourcepub fn payee(&self) -> StoragePaged<AccountId, RewardDestination<AccountId>>
pub fn payee(&self) -> StoragePaged<AccountId, RewardDestination<AccountId>>
Where the reward payment should be made. Keyed by stash.
TWOX-NOTE: SAFE since AccountId is a secure hash.
Sourcepub fn validators(&self) -> StoragePaged<AccountId, ValidatorPrefs>
pub fn validators(&self) -> StoragePaged<AccountId, ValidatorPrefs>
The map from (wannabe) validator stash key to the preferences of that validator.
TWOX-NOTE: SAFE since AccountId is a secure hash.
Sourcepub fn nominators(&self) -> StoragePaged<AccountId, Nominations>
pub fn nominators(&self) -> StoragePaged<AccountId, Nominations>
The map from nominator stash key to their nomination preferences, namely the validators that they wish to support.
Note that the keys of this storage map might become non-decodable in case the
account’s [NominationsQuota::MaxNominations] configuration is decreased.
In this rare case, these nominators
are still existent in storage, their key is correct and retrievable (i.e. contains_key
indicates that they exist), but their value cannot be decoded. Therefore, the non-decodable
nominators will effectively not-exist, until they re-submit their preferences such that it
is within the bounds of the newly set Config::MaxNominations.
This implies that ::iter_keys().count() and ::iter().count() might return different
values for this map. Moreover, the main ::count() is aligned with the former, namely the
number of keys that exist.
Lastly, if any of the nominators become non-decodable, they can be chilled immediately via
[Call::chill_other] dispatchable by anyone.
TWOX-NOTE: SAFE since AccountId is a secure hash.
Sourcepub fn virtual_stakers(&self) -> StoragePaged<AccountId, ()>
pub fn virtual_stakers(&self) -> StoragePaged<AccountId, ()>
Stakers whose funds are managed by other pallets.
This pallet does not apply any locks on them, therefore they are only virtually bonded. They are expected to be keyless accounts and hence should not be allowed to mutate their ledger directly via this pallet. Instead, these accounts are managed by other pallets and accessed via low level apis. We keep track of them to do minimal integrity checks.
Sourcepub fn eras_start_session_index(&self) -> StoragePaged<u32, u32>
pub fn eras_start_session_index(&self) -> StoragePaged<u32, u32>
The session index at which the era start for the last [Config::HistoryDepth] eras.
Note: This tracks the starting session (i.e. session index when era start being active)
for the eras in [CurrentEra - HISTORY_DEPTH, CurrentEra].
Sourcepub fn eras_stakers(
&self,
key_0: u32,
) -> StoragePaged<AccountId, Exposure<AccountId, u128>>
pub fn eras_stakers( &self, key_0: u32, ) -> StoragePaged<AccountId, Exposure<AccountId, u128>>
Exposure of validator at era.
This is keyed first by the era index to allow bulk deletion and then the stash account.
Is it removed after [Config::HistoryDepth] eras.
If stakers hasn’t been set or has been removed then empty exposure is returned.
Note: Deprecated since v14. Use EraInfo instead to work with exposures.
Sourcepub fn eras_stakers_overview(
&self,
key_0: u32,
) -> StoragePaged<AccountId, PagedExposureMetadata<u128>>
pub fn eras_stakers_overview( &self, key_0: u32, ) -> StoragePaged<AccountId, PagedExposureMetadata<u128>>
Summary of validator exposure at a given era.
This contains the total stake in support of the validator and their own stake. In addition, it can also be used to get the number of nominators backing this validator and the number of exposure pages they are divided into. The page count is useful to determine the number of pages of rewards that needs to be claimed.
This is keyed first by the era index to allow bulk deletion and then the stash account.
Should only be accessed through EraInfo.
Is it removed after [Config::HistoryDepth] eras.
If stakers hasn’t been set or has been removed then empty overview is returned.
Sourcepub fn eras_stakers_clipped(
&self,
key_0: u32,
) -> StoragePaged<AccountId, Exposure<AccountId, u128>>
pub fn eras_stakers_clipped( &self, key_0: u32, ) -> StoragePaged<AccountId, Exposure<AccountId, u128>>
Clipped Exposure of validator at era.
Note: This is deprecated, should be used as read-only and will be removed in the future.
New Exposures are stored in a paged manner in ErasStakersPaged instead.
This is similar to [ErasStakers] but number of nominators exposed is reduced to the
T::MaxExposurePageSize biggest stakers.
(Note: the field total and own of the exposure remains unchanged).
This is used to limit the i/o cost for the nominator payout.
This is keyed fist by the era index to allow bulk deletion and then the stash account.
It is removed after [Config::HistoryDepth] eras.
If stakers hasn’t been set or has been removed then empty exposure is returned.
Note: Deprecated since v14. Use EraInfo instead to work with exposures.
Sourcepub fn eras_stakers_paged(
&self,
key_0: u32,
key_1: AccountId,
) -> StoragePaged<u32, ExposurePage<AccountId, u128>>
pub fn eras_stakers_paged( &self, key_0: u32, key_1: AccountId, ) -> StoragePaged<u32, ExposurePage<AccountId, u128>>
Paginated exposure of a validator at given era.
This is keyed first by the era index to allow bulk deletion, then stash account and finally
the page. Should only be accessed through EraInfo.
This is cleared after [Config::HistoryDepth] eras.
Sourcepub fn claimed_rewards(&self, key_0: u32) -> StoragePaged<AccountId, Vec<u32>>
pub fn claimed_rewards(&self, key_0: u32) -> StoragePaged<AccountId, Vec<u32>>
History of claimed paged rewards by era and validator.
This is keyed by era and validator stash which maps to the set of page indexes which have been claimed.
It is removed after [Config::HistoryDepth] eras.
Sourcepub fn eras_validator_prefs(
&self,
key_0: u32,
) -> StoragePaged<AccountId, ValidatorPrefs>
pub fn eras_validator_prefs( &self, key_0: u32, ) -> StoragePaged<AccountId, ValidatorPrefs>
Similar to ErasStakers, this holds the preferences of validators.
This is keyed first by the era index to allow bulk deletion and then the stash account.
Is it removed after [Config::HistoryDepth] eras.
Sourcepub fn eras_validator_reward(&self) -> StoragePaged<u32, u128>
pub fn eras_validator_reward(&self) -> StoragePaged<u32, u128>
The total validator era payout for the last [Config::HistoryDepth] eras.
Eras that haven’t finished yet or has been removed doesn’t have reward.
Sourcepub fn eras_reward_points(
&self,
) -> StoragePaged<u32, EraRewardPoints<AccountId>>
pub fn eras_reward_points( &self, ) -> StoragePaged<u32, EraRewardPoints<AccountId>>
Rewards for the last [Config::HistoryDepth] eras.
If reward hasn’t been set or has been removed then 0 reward is returned.
Sourcepub fn eras_total_stake(&self) -> StoragePaged<u32, u128>
pub fn eras_total_stake(&self) -> StoragePaged<u32, u128>
The total amount staked for the last [Config::HistoryDepth] eras.
If total hasn’t been set or has been removed then 0 stake is returned.
Sourcepub fn unapplied_slashes(
&self,
) -> StoragePaged<u32, Vec<UnappliedSlash<AccountId, u128>>>
pub fn unapplied_slashes( &self, ) -> StoragePaged<u32, Vec<UnappliedSlash<AccountId, u128>>>
All unapplied slashes that are queued for later.
Sourcepub fn validator_slash_in_era(
&self,
key_0: u32,
) -> StoragePaged<AccountId, (Perbill, u128)>
pub fn validator_slash_in_era( &self, key_0: u32, ) -> StoragePaged<AccountId, (Perbill, u128)>
All slashing events on validators, mapped by era to the highest slash proportion and slash value of the era.
Sourcepub fn nominator_slash_in_era(
&self,
key_0: u32,
) -> StoragePaged<AccountId, u128>
pub fn nominator_slash_in_era( &self, key_0: u32, ) -> StoragePaged<AccountId, u128>
All slashing events on nominators, mapped by era to the highest slash value of the era.
Sourcepub fn slashing_spans(&self) -> StoragePaged<AccountId, SlashingSpans>
pub fn slashing_spans(&self) -> StoragePaged<AccountId, SlashingSpans>
Slashing spans for stash accounts.
Sourcepub fn span_slash(&self) -> StoragePaged<(AccountId, u32), SpanRecord<u128>>
pub fn span_slash(&self) -> StoragePaged<(AccountId, u32), SpanRecord<u128>>
Records information about the maximum slash of a stash within a slashing span, as well as how much reward has been paid out.
Trait Implementations§
Source§impl<'api> Clone for StakingPagedQueryApi<'api>
impl<'api> Clone for StakingPagedQueryApi<'api>
Source§fn clone(&self) -> StakingPagedQueryApi<'api>
fn clone(&self) -> StakingPagedQueryApi<'api>
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreAuto Trait Implementations§
impl<'api> Freeze for StakingPagedQueryApi<'api>
impl<'api> !RefUnwindSafe for StakingPagedQueryApi<'api>
impl<'api> Send for StakingPagedQueryApi<'api>
impl<'api> Sync for StakingPagedQueryApi<'api>
impl<'api> Unpin for StakingPagedQueryApi<'api>
impl<'api> UnsafeUnpin for StakingPagedQueryApi<'api>
impl<'api> !UnwindSafe for StakingPagedQueryApi<'api>
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Source§impl<T> CheckedConversion for T
impl<T> CheckedConversion for T
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§impl<Src, Dest> IntoTuple<Dest> for Srcwhere
Dest: FromTuple<Src>,
impl<Src, Dest> IntoTuple<Dest> for Srcwhere
Dest: FromTuple<Src>,
fn into_tuple(self) -> Dest
Source§impl<T, Outer> IsWrappedBy<Outer> for T
impl<T, Outer> IsWrappedBy<Outer> for T
Source§impl<T> SaturatedConversion for T
impl<T> SaturatedConversion for T
Source§fn saturated_from<T>(t: T) -> Selfwhere
Self: UniqueSaturatedFrom<T>,
fn saturated_from<T>(t: T) -> Selfwhere
Self: UniqueSaturatedFrom<T>,
Source§fn saturated_into<T>(self) -> Twhere
Self: UniqueSaturatedInto<T>,
fn saturated_into<T>(self) -> Twhere
Self: UniqueSaturatedInto<T>,
T. Read moreSource§impl<S, T> UncheckedInto<T> for Swhere
T: UncheckedFrom<S>,
impl<S, T> UncheckedInto<T> for Swhere
T: UncheckedFrom<S>,
Source§fn unchecked_into(self) -> T
fn unchecked_into(self) -> T
unchecked_from.Source§impl<T, S> UniqueSaturatedInto<T> for S
impl<T, S> UniqueSaturatedInto<T> for S
Source§fn unique_saturated_into(self) -> T
fn unique_saturated_into(self) -> T
T.