Struct node_runtime::NposSolution16 [−][src]
pub struct NposSolution16 {Show fields
pub votes1: Vec<(u32, u16)>,
pub votes2: Vec<(u32, [(u16, PerU16); 1], u16)>,
pub votes3: Vec<(u32, [(u16, PerU16); 2], u16)>,
pub votes4: Vec<(u32, [(u16, PerU16); 3], u16)>,
pub votes5: Vec<(u32, [(u16, PerU16); 4], u16)>,
pub votes6: Vec<(u32, [(u16, PerU16); 5], u16)>,
pub votes7: Vec<(u32, [(u16, PerU16); 6], u16)>,
pub votes8: Vec<(u32, [(u16, PerU16); 7], u16)>,
pub votes9: Vec<(u32, [(u16, PerU16); 8], u16)>,
pub votes10: Vec<(u32, [(u16, PerU16); 9], u16)>,
pub votes11: Vec<(u32, [(u16, PerU16); 10], u16)>,
pub votes12: Vec<(u32, [(u16, PerU16); 11], u16)>,
pub votes13: Vec<(u32, [(u16, PerU16); 12], u16)>,
pub votes14: Vec<(u32, [(u16, PerU16); 13], u16)>,
pub votes15: Vec<(u32, [(u16, PerU16); 14], u16)>,
pub votes16: Vec<(u32, [(u16, PerU16); 15], u16)>,
}Fields
votes1: Vec<(u32, u16)>votes2: Vec<(u32, [(u16, PerU16); 1], u16)>votes3: Vec<(u32, [(u16, PerU16); 2], u16)>votes4: Vec<(u32, [(u16, PerU16); 3], u16)>votes5: Vec<(u32, [(u16, PerU16); 4], u16)>votes6: Vec<(u32, [(u16, PerU16); 5], u16)>votes7: Vec<(u32, [(u16, PerU16); 6], u16)>votes8: Vec<(u32, [(u16, PerU16); 7], u16)>votes9: Vec<(u32, [(u16, PerU16); 8], u16)>votes10: Vec<(u32, [(u16, PerU16); 9], u16)>votes11: Vec<(u32, [(u16, PerU16); 10], u16)>votes12: Vec<(u32, [(u16, PerU16); 11], u16)>votes13: Vec<(u32, [(u16, PerU16); 12], u16)>votes14: Vec<(u32, [(u16, PerU16); 13], u16)>votes15: Vec<(u32, [(u16, PerU16); 14], u16)>votes16: Vec<(u32, [(u16, PerU16); 15], u16)>Trait Implementations
Attempt to deserialise the value from input.
Attempt to skip the encoded value from input. Read more
fn encoded_fixed_size() -> Option<usize>
fn encoded_fixed_size() -> Option<usize>Returns the fixed encoded size of the type. Read more
Returns the “default value” for a type. Read more
A struct to encode a election assignment in a compact way.
Convert self to a slice and append it to the destination.
fn using_encoded<R, F>(&self, f: F) -> R where
F: FnOnce(&[u8]) -> R,
fn using_encoded<R, F>(&self, f: F) -> R where
F: FnOnce(&[u8]) -> R, Convert self to a slice and then invoke the given closure with it.
fn encoded_size(&self) -> usize
fn encoded_size(&self) -> usizeCalculates the encoded size. Read more
type VoterIndex = u32
type VoterIndex = u32The voter type. Needs to be an index (convert to usize).
type TargetIndex = u16
type TargetIndex = u16The target type. Needs to be an index (convert to usize).
Remove a certain voter. Read more
fn from_assignment<FV, FT, A>(
assignments: &[Assignment<A, PerU16>],
voter_index: FV,
target_index: FT
) -> Result<Self, Error> where
A: IdentifierT,
for<'r> FV: Fn(&'r A) -> Option<Self::VoterIndex>,
for<'r> FT: Fn(&'r A) -> Option<Self::TargetIndex>,
fn from_assignment<FV, FT, A>(
assignments: &[Assignment<A, PerU16>],
voter_index: FV,
target_index: FT
) -> Result<Self, Error> where
A: IdentifierT,
for<'r> FV: Fn(&'r A) -> Option<Self::VoterIndex>,
for<'r> FT: Fn(&'r A) -> Option<Self::TargetIndex>, Build self from a list of assignments.
fn into_assignment<A: IdentifierT>(
self,
voter_at: impl Fn(Self::VoterIndex) -> Option<A>,
target_at: impl Fn(Self::TargetIndex) -> Option<A>
) -> Result<Vec<Assignment<A, PerU16>>, Error>
fn into_assignment<A: IdentifierT>(
self,
voter_at: impl Fn(Self::VoterIndex) -> Option<A>,
target_at: impl Fn(Self::TargetIndex) -> Option<A>
) -> Result<Vec<Assignment<A, PerU16>>, Error>Convert self into a Vec<Assignment<A, Self::Accuracy>>
Get the length of all the voters that this type is encoding. Read more
Get the total count of edges. Read more
Get the number of unique targets in the whole struct. Read more
Get the average edge count.
This method tests for self and other values to be equal, and is used
by ==. Read more
This method tests for !=.
This method returns an ordering between self and other values if one exists. Read more
This method tests less than (for self and other) and is used by the < operator. Read more
This method tests less than or equal to (for self and other) and is used by the <=
operator. Read more
This method tests greater than (for self and other) and is used by the > operator. Read more
impl<'a> TryFrom<&'a [IndexAssignment<<NposSolution16 as NposSolution>::VoterIndex, <NposSolution16 as NposSolution>::TargetIndex, <NposSolution16 as NposSolution>::Accuracy>]> for NposSolution16
impl<'a> TryFrom<&'a [IndexAssignment<<NposSolution16 as NposSolution>::VoterIndex, <NposSolution16 as NposSolution>::TargetIndex, <NposSolution16 as NposSolution>::Accuracy>]> for NposSolution16fn try_from(
index_assignments: &'a [IndexAssignment<<NposSolution16 as NposSolution>::VoterIndex, <NposSolution16 as NposSolution>::TargetIndex, <NposSolution16 as NposSolution>::Accuracy>]
) -> Result<Self, Self::Error>
fn try_from(
index_assignments: &'a [IndexAssignment<<NposSolution16 as NposSolution>::VoterIndex, <NposSolution16 as NposSolution>::TargetIndex, <NposSolution16 as NposSolution>::Accuracy>]
) -> Result<Self, Self::Error>Performs the conversion.
Auto Trait Implementations
impl RefUnwindSafe for NposSolution16impl Send for NposSolution16impl Sync for NposSolution16impl Unpin for NposSolution16impl UnwindSafe for NposSolution16Blanket Implementations
Mutably borrows from an owned value. Read more
impl<T> Downcast for T where
T: Any,
impl<T> Downcast for T where
T: Any, Convert Box<dyn Trait> (where Trait: Downcast) to Box<dyn Any>. Box<dyn Any> can
then be further downcast into Box<ConcreteType> where ConcreteType implements Trait. Read more
pub fn into_any_rc(self: Rc<T>) -> Rc<dyn Any + 'static>
pub fn into_any_rc(self: Rc<T>) -> Rc<dyn Any + 'static>Convert Rc<Trait> (where Trait: Downcast) to Rc<Any>. Rc<Any> can then be
further downcast into Rc<ConcreteType> where ConcreteType implements Trait. Read more
Convert &Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot
generate &Any’s vtable from &Trait’s. Read more
pub fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
pub fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)Convert &mut Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot
generate &mut Any’s vtable from &mut Trait’s. Read more
Instruments this type with the provided Span, returning an
Instrumented wrapper. Read more
type Output = T
type Output = TShould always be Self
The inverse inclusion map: attempts to construct self from the equivalent element of its
superset. Read more
pub fn is_in_subset(&self) -> bool
pub fn is_in_subset(&self) -> boolChecks if self is actually part of its subset T (and can be converted to it).
pub fn to_subset_unchecked(&self) -> SS
pub fn to_subset_unchecked(&self) -> SSUse with care! Same as self.to_subset but without any property checks. Always succeeds.
pub fn from_subset(element: &SS) -> SP
pub fn from_subset(element: &SS) -> SPThe inclusion map: converts self to the equivalent element of its superset.
The counterpart to unchecked_from.
Consume self to return an equivalent value of T.
pub fn vzip(self) -> Vimpl<'_, '_, T> EncodeLike<&'_ &'_ T> for T where
T: Encode, impl<'_, T> EncodeLike<&'_ T> for T where
T: Encode, impl<'_, T> EncodeLike<&'_ mut T> for T where
T: Encode, impl<T> EncodeLike<Arc<T>> for T where
T: Encode, impl<T> EncodeLike<Rc<T>> for T where
T: Encode, impl<T> MaybeDebug for T where
T: Debug, impl<T> MaybeDebug for T where
T: Debug,