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: usize
Implementations§
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> 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> 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 Twhere
Outer: AsRef<T> + AsMut<T> + From<T>,
T: From<Outer>,
impl<T, Outer> IsWrappedBy<Outer> for Twhere Outer: AsRef<T> + AsMut<T> + From<T>, T: From<Outer>,
§impl<T> Pointable for T
impl<T> Pointable 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 more§impl<SS, SP> SupersetOf<SS> for SPwhere
SS: SubsetOf<SP>,
impl<SS, SP> SupersetOf<SS> for SPwhere SS: SubsetOf<SP>,
§fn to_subset(&self) -> Option<SS>
fn to_subset(&self) -> Option<SS>
The inverse inclusion map: attempts to construct
self
from the equivalent element of its
superset. Read more§fn is_in_subset(&self) -> bool
fn is_in_subset(&self) -> bool
Checks if
self
is actually part of its subset T
(and can be converted to it).§fn to_subset_unchecked(&self) -> SS
fn to_subset_unchecked(&self) -> SS
Use with care! Same as
self.to_subset
but without any property checks. Always succeeds.§fn from_subset(element: &SS) -> SP
fn from_subset(element: &SS) -> SP
The inclusion map: converts
self
to the equivalent element of its superset.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 Swhere
T: Bounded,
S: TryInto<T>,
impl<T, S> UniqueSaturatedInto<T> for Swhere T: Bounded, S: TryInto<T>,
source§fn unique_saturated_into(self) -> T
fn unique_saturated_into(self) -> T
Consume self to return an equivalent value of
T
.