pub struct StaticTracker<DataProvider> {
pub size: usize,
pub counter: usize,
/* private fields */
}Expand description
Keeps track of the SCALE encoded byte length of the snapshot’s voters or targets.
The tracker calculates the bytes used based on static rules, without requiring any actual encoding or extra allocations.
Fields§
§size: usize§counter: usizeImplementations§
source§impl<DataProvider> StaticTracker<DataProvider>where
DataProvider: ElectionDataProvider,
impl<DataProvider> StaticTracker<DataProvider>where
DataProvider: ElectionDataProvider,
sourcepub fn try_register_voter(
&mut self,
voter: &VoterOf<DataProvider>,
bounds: &DataProviderBounds
) -> Result<(), ()>
pub fn try_register_voter( &mut self, voter: &VoterOf<DataProvider>, bounds: &DataProviderBounds ) -> Result<(), ()>
Tries to register a new voter.
If the new voter exhausts the provided bounds, return an error. Otherwise, the internal state of the tracker is updated with the new registered voter.
sourcepub fn try_register_target(
&mut self,
target: DataProvider::AccountId,
bounds: &DataProviderBounds
) -> Result<(), ()>
pub fn try_register_target( &mut self, target: DataProvider::AccountId, bounds: &DataProviderBounds ) -> Result<(), ()>
Tries to register a new target.
If the new target exhausts the provided bounds, return an error. Otherwise, the internal state of the tracker is updated with the new registered target.
Trait Implementations§
source§impl<DataProvider: Clone> Clone for StaticTracker<DataProvider>
impl<DataProvider: Clone> Clone for StaticTracker<DataProvider>
source§fn clone(&self) -> StaticTracker<DataProvider>
fn clone(&self) -> StaticTracker<DataProvider>
Returns a copy of the value. Read more
1.0.0 · source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moresource§impl<DataProvider: Debug> Debug for StaticTracker<DataProvider>
impl<DataProvider: Debug> Debug for StaticTracker<DataProvider>
source§impl<DataProvider> Default for StaticTracker<DataProvider>
impl<DataProvider> Default for StaticTracker<DataProvider>
impl<DataProvider: Copy> Copy for StaticTracker<DataProvider>
Auto Trait Implementations§
impl<DataProvider> Freeze for StaticTracker<DataProvider>
impl<DataProvider> RefUnwindSafe for StaticTracker<DataProvider>where
DataProvider: RefUnwindSafe,
impl<DataProvider> Send for StaticTracker<DataProvider>where
DataProvider: Send,
impl<DataProvider> Sync for StaticTracker<DataProvider>where
DataProvider: Sync,
impl<DataProvider> Unpin for StaticTracker<DataProvider>where
DataProvider: Unpin,
impl<DataProvider> UnwindSafe for StaticTracker<DataProvider>where
DataProvider: UnwindSafe,
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
Mutably borrows from an owned value. Read more
source§impl<T> CheckedConversion for T
impl<T> CheckedConversion for T
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, 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>,
Consume self to return an equivalent value of
T. Read moresource§impl<T, U> TryIntoKey<U> for Twhere
U: TryFromKey<T>,
impl<T, U> TryIntoKey<U> for Twhere
U: TryFromKey<T>,
type Error = <U as TryFromKey<T>>::Error
fn try_into_key(self) -> Result<U, <U as TryFromKey<T>>::Error>
source§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
The counterpart to
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
Consume self to return an equivalent value of
T.