[−][src]Enum pallet_elections::Call
Dispatchable calls.
Each variant of this enum maps to a dispatchable function from the associated module.
Variants
set_approvals(Vec<bool>, VoteIndex, u32, <<T as Trait>::Currency as Currency<<T as Trait>::AccountId>>::Balance)
Set candidate approvals. Approval slots stay valid as long as candidates in those slots are registered.
Locks value
from the balance of origin
indefinitely. Only [retract_voter
] or
[reap_inactive_voter
] can unlock the balance.
hint
argument is interpreted differently based on:
- if
origin
is setting approvals for the first time: The index will be checked for being a valid hole in the voter list.- if the hint is correctly pointing to a hole, no fee is deducted from
origin
. - Otherwise, the call will succeed but the index is ignored and simply a push to the
last chunk with free space happens. If the new push causes a new chunk to be
created, a fee indicated by [
VotingFee
] is deducted.
- if the hint is correctly pointing to a hole, no fee is deducted from
- if
origin
is already a voter: the index must be valid and point to the correct position of theorigin
in the current voters list.
Note that any trailing false
votes in votes
is ignored; In approval voting, not
voting for a candidate and voting false, are equal.
- O(1).
- Two extra DB entries, one DB change.
- Argument
votes
is limited in length to number of candidates.
Remove a voter. For it not to be a bond-consuming no-op, all approved candidate indices must now be either unregistered or registered to a candidate that registered the slot after the voter gave their last approval set.
Both indices must be provided as explained in [voter_at
] function.
May be called by anyone. Returns the voter deposit to signed
.
- O(1).
- Two fewer DB entries, one DB change.
retract_voter(u32)
Remove a voter. All votes are cancelled and the voter deposit is returned.
The index must be provided as explained in [voter_at
] function.
Also removes the lock on the balance of the voter. See [do_set_approvals()
].
- O(1).
- Two fewer DB entries, one DB change.
submit_candidacy(u32)
Submit oneself for candidacy.
Account must have enough transferrable funds in it to pay the bond.
NOTE: if origin
has already assigned approvals via [set_approvals
],
it will NOT have any usable funds to pass candidacy bond and must first retract.
Note that setting approvals will lock the entire balance of the voter until
retraction or being reported.
- Independent of input.
- Three DB changes.
present_winner(<T::Lookup as StaticLookup>::Source, <<T as Trait>::Currency as Currency<<T as Trait>::AccountId>>::Balance, VoteIndex)
Claim that candidate
is one of the top carry_count + desired_seats
candidates. Only
works iff the presentation period is active. candidate
should have at least collected
some non-zero total
votes and origin
must have enough funds to pay for a potential
slash.
- O(voters) compute.
- One DB change.
set_desired_seats(u32)
Set the desired member count; if lower than the current count, then seats will not be up election when they expire. If more, then a new vote will be started if one is not already in progress.
remove_member(<T::Lookup as StaticLookup>::Source)
Remove a particular member from the set. This is effective immediately.
Note: A tally should happen instantly (if not already in a presentation period) to fill the seat if removal means that the desired members are not met.
set_presentation_duration(T::BlockNumber)
Set the presentation duration. If there is currently a vote being presented for, will
invoke finalize_vote
.
set_term_duration(T::BlockNumber)
Set the presentation duration. If there is current a vote being presented for, will
invoke finalize_vote
.
Trait Implementations
impl<T: Trait> Clone for Call<T>
[src]
pub fn clone(&self) -> Self
[src]
pub fn clone_from(&mut self, source: &Self)
1.0.0[src]
impl<T: Trait> Debug for Call<T>
[src]
impl<T: Trait> Decode for Call<T> where
<T::Lookup as StaticLookup>::Source: Decode,
<T::Lookup as StaticLookup>::Source: Decode,
<T::Lookup as StaticLookup>::Source: Decode,
<T::Lookup as StaticLookup>::Source: Decode,
<T::Lookup as StaticLookup>::Source: Decode,
<T::Lookup as StaticLookup>::Source: Decode,
<<T as Trait>::Currency as Currency<<T as Trait>::AccountId>>::Balance: HasCompact,
<<T as Trait>::Currency as Currency<<T as Trait>::AccountId>>::Balance: HasCompact,
T::BlockNumber: HasCompact,
T::BlockNumber: HasCompact,
[src]
<T::Lookup as StaticLookup>::Source: Decode,
<T::Lookup as StaticLookup>::Source: Decode,
<T::Lookup as StaticLookup>::Source: Decode,
<T::Lookup as StaticLookup>::Source: Decode,
<T::Lookup as StaticLookup>::Source: Decode,
<T::Lookup as StaticLookup>::Source: Decode,
<<T as Trait>::Currency as Currency<<T as Trait>::AccountId>>::Balance: HasCompact,
<<T as Trait>::Currency as Currency<<T as Trait>::AccountId>>::Balance: HasCompact,
T::BlockNumber: HasCompact,
T::BlockNumber: HasCompact,
pub fn decode<__CodecInputEdqy: Input>(
__codec_input_edqy: &mut __CodecInputEdqy
) -> Result<Self, Error>
[src]
__codec_input_edqy: &mut __CodecInputEdqy
) -> Result<Self, Error>
impl<T: Trait> Encode for Call<T> where
<T::Lookup as StaticLookup>::Source: Encode,
<T::Lookup as StaticLookup>::Source: Encode,
<T::Lookup as StaticLookup>::Source: Encode,
<T::Lookup as StaticLookup>::Source: Encode,
<T::Lookup as StaticLookup>::Source: Encode,
<T::Lookup as StaticLookup>::Source: Encode,
<<T as Trait>::Currency as Currency<<T as Trait>::AccountId>>::Balance: HasCompact,
<<T as Trait>::Currency as Currency<<T as Trait>::AccountId>>::Balance: HasCompact,
T::BlockNumber: HasCompact,
T::BlockNumber: HasCompact,
[src]
<T::Lookup as StaticLookup>::Source: Encode,
<T::Lookup as StaticLookup>::Source: Encode,
<T::Lookup as StaticLookup>::Source: Encode,
<T::Lookup as StaticLookup>::Source: Encode,
<T::Lookup as StaticLookup>::Source: Encode,
<T::Lookup as StaticLookup>::Source: Encode,
<<T as Trait>::Currency as Currency<<T as Trait>::AccountId>>::Balance: HasCompact,
<<T as Trait>::Currency as Currency<<T as Trait>::AccountId>>::Balance: HasCompact,
T::BlockNumber: HasCompact,
T::BlockNumber: HasCompact,
pub fn encode_to<__CodecOutputEdqy: Output>(
&self,
__codec_dest_edqy: &mut __CodecOutputEdqy
)
[src]
&self,
__codec_dest_edqy: &mut __CodecOutputEdqy
)
pub fn size_hint(&self) -> usize
[src]
pub fn encode(&self) -> Vec<u8, Global>
[src]
pub fn using_encoded<R, F>(&self, f: F) -> R where
F: FnOnce(&[u8]) -> R,
[src]
F: FnOnce(&[u8]) -> R,
impl<T: Trait> EncodeLike<Call<T>> for Call<T> where
<T::Lookup as StaticLookup>::Source: Encode,
<T::Lookup as StaticLookup>::Source: Encode,
<T::Lookup as StaticLookup>::Source: Encode,
<T::Lookup as StaticLookup>::Source: Encode,
<T::Lookup as StaticLookup>::Source: Encode,
<T::Lookup as StaticLookup>::Source: Encode,
<<T as Trait>::Currency as Currency<<T as Trait>::AccountId>>::Balance: HasCompact,
<<T as Trait>::Currency as Currency<<T as Trait>::AccountId>>::Balance: HasCompact,
T::BlockNumber: HasCompact,
T::BlockNumber: HasCompact,
[src]
<T::Lookup as StaticLookup>::Source: Encode,
<T::Lookup as StaticLookup>::Source: Encode,
<T::Lookup as StaticLookup>::Source: Encode,
<T::Lookup as StaticLookup>::Source: Encode,
<T::Lookup as StaticLookup>::Source: Encode,
<T::Lookup as StaticLookup>::Source: Encode,
<<T as Trait>::Currency as Currency<<T as Trait>::AccountId>>::Balance: HasCompact,
<<T as Trait>::Currency as Currency<<T as Trait>::AccountId>>::Balance: HasCompact,
T::BlockNumber: HasCompact,
T::BlockNumber: HasCompact,
impl<T: Trait> Eq for Call<T>
[src]
impl<T: Trait> GetCallName for Call<T>
[src]
pub fn get_call_name(&self) -> &'static str
[src]
pub fn get_call_names() -> &'static [&'static str]
[src]
impl<T: Trait> GetDispatchInfo for Call<T>
[src]
pub fn get_dispatch_info(&self) -> DispatchInfo
[src]
impl<T: Trait> PartialEq<Call<T>> for Call<T>
[src]
pub fn eq(&self, _other: &Self) -> bool
[src]
#[must_use]pub fn ne(&self, other: &Rhs) -> bool
1.0.0[src]
impl<T: Trait> UnfilteredDispatchable for Call<T>
[src]
type Origin = T::Origin
The origin type of the runtime, (i.e. frame_system::Trait::Origin
).
pub fn dispatch_bypass_filter(
self,
_origin: Self::Origin
) -> DispatchResultWithPostInfo
[src]
self,
_origin: Self::Origin
) -> DispatchResultWithPostInfo
Auto Trait Implementations
impl<T> RefUnwindSafe for Call<T> where
T: RefUnwindSafe,
<<T as Trait>::Currency as Currency<<T as Trait>::AccountId>>::Balance: RefUnwindSafe,
<T as Trait>::BlockNumber: RefUnwindSafe,
<<T as Trait>::Lookup as StaticLookup>::Source: RefUnwindSafe,
[src]
T: RefUnwindSafe,
<<T as Trait>::Currency as Currency<<T as Trait>::AccountId>>::Balance: RefUnwindSafe,
<T as Trait>::BlockNumber: RefUnwindSafe,
<<T as Trait>::Lookup as StaticLookup>::Source: RefUnwindSafe,
impl<T> Send for Call<T> where
T: Send,
<<T as Trait>::Currency as Currency<<T as Trait>::AccountId>>::Balance: Send,
<T as Trait>::BlockNumber: Send,
<<T as Trait>::Lookup as StaticLookup>::Source: Send,
[src]
T: Send,
<<T as Trait>::Currency as Currency<<T as Trait>::AccountId>>::Balance: Send,
<T as Trait>::BlockNumber: Send,
<<T as Trait>::Lookup as StaticLookup>::Source: Send,
impl<T> Sync for Call<T> where
T: Sync,
<<T as Trait>::Currency as Currency<<T as Trait>::AccountId>>::Balance: Sync,
<T as Trait>::BlockNumber: Sync,
<<T as Trait>::Lookup as StaticLookup>::Source: Sync,
[src]
T: Sync,
<<T as Trait>::Currency as Currency<<T as Trait>::AccountId>>::Balance: Sync,
<T as Trait>::BlockNumber: Sync,
<<T as Trait>::Lookup as StaticLookup>::Source: Sync,
impl<T> Unpin for Call<T> where
T: Unpin,
<<T as Trait>::Currency as Currency<<T as Trait>::AccountId>>::Balance: Unpin,
<T as Trait>::BlockNumber: Unpin,
<<T as Trait>::Lookup as StaticLookup>::Source: Unpin,
[src]
T: Unpin,
<<T as Trait>::Currency as Currency<<T as Trait>::AccountId>>::Balance: Unpin,
<T as Trait>::BlockNumber: Unpin,
<<T as Trait>::Lookup as StaticLookup>::Source: Unpin,
impl<T> UnwindSafe for Call<T> where
T: UnwindSafe,
<<T as Trait>::Currency as Currency<<T as Trait>::AccountId>>::Balance: UnwindSafe,
<T as Trait>::BlockNumber: UnwindSafe,
<<T as Trait>::Lookup as StaticLookup>::Source: UnwindSafe,
[src]
T: UnwindSafe,
<<T as Trait>::Currency as Currency<<T as Trait>::AccountId>>::Balance: UnwindSafe,
<T as Trait>::BlockNumber: UnwindSafe,
<<T as Trait>::Lookup as StaticLookup>::Source: UnwindSafe,
Blanket Implementations
impl<T> Any for T where
T: 'static + ?Sized,
[src]
T: 'static + ?Sized,
impl<T> Borrow<T> for T where
T: ?Sized,
[src]
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
[src]
T: ?Sized,
pub fn borrow_mut(&mut self) -> &mut T
[src]
impl<T> CheckedConversion for T
[src]
pub fn checked_from<T>(t: T) -> Option<Self> where
Self: TryFrom<T>,
[src]
Self: TryFrom<T>,
pub fn checked_into<T>(self) -> Option<T> where
Self: TryInto<T>,
[src]
Self: TryInto<T>,
impl<S> Codec for S where
S: Encode + Decode,
[src]
S: Encode + Decode,
impl<T> DecodeAll for T where
T: Decode,
[src]
T: Decode,
impl<T> DecodeLimit for T where
T: Decode,
[src]
T: Decode,
pub fn decode_all_with_depth_limit(limit: u32, input: &[u8]) -> Result<T, Error>
[src]
pub fn decode_with_depth_limit(limit: u32, input: &[u8]) -> Result<T, Error>
[src]
impl<T> DynClone for T where
T: Clone,
[src]
T: Clone,
pub fn __clone_box(&self, Private) -> *mut ()
[src]
impl<'_, '_, T> EncodeLike<&'_ &'_ T> for T where
T: Encode,
[src]
T: Encode,
impl<'_, T> EncodeLike<&'_ T> for T where
T: Encode,
[src]
T: Encode,
impl<'_, T> EncodeLike<&'_ mut T> for T where
T: Encode,
[src]
T: Encode,
impl<T> EncodeLike<Arc<T>> for T where
T: Encode,
[src]
T: Encode,
impl<T> EncodeLike<Box<T, Global>> for T where
T: Encode,
[src]
T: Encode,
impl<'a, T> EncodeLike<Cow<'a, T>> for T where
T: Encode + ToOwned,
[src]
T: Encode + ToOwned,
impl<T> EncodeLike<Rc<T>> for T where
T: Encode,
[src]
T: Encode,
impl<T> From<T> for T
[src]
impl<S> FullCodec for S where
S: Decode + FullEncode,
[src]
S: Decode + FullEncode,
impl<S> FullEncode for S where
S: Encode + EncodeLike<S>,
[src]
S: Encode + EncodeLike<S>,
impl<T> Hashable for T where
T: Codec,
[src]
T: Codec,
pub fn blake2_128(&self) -> [u8; 16]
[src]
pub fn blake2_256(&self) -> [u8; 32]
[src]
pub fn blake2_128_concat(&self) -> Vec<u8, Global>
[src]
pub fn twox_128(&self) -> [u8; 16]
[src]
pub fn twox_256(&self) -> [u8; 32]
[src]
pub fn twox_64_concat(&self) -> Vec<u8, Global>
[src]
pub fn identity(&self) -> Vec<u8, Global>
[src]
impl<T> Instrument for T
[src]
pub fn instrument(self, span: Span) -> Instrumented<Self>
[src]
pub fn in_current_span(self) -> Instrumented<Self>
[src]
impl<T, U> Into<U> for T where
U: From<T>,
[src]
U: From<T>,
impl<T> IsType<T> for T
[src]
pub fn from_ref(t: &T) -> &T
[src]
pub fn into_ref(&self) -> &T
[src]
pub fn from_mut(t: &mut T) -> &mut T
[src]
pub fn into_mut(&mut self) -> &mut T
[src]
impl<T, Outer> IsWrappedBy<Outer> for T where
T: From<Outer>,
Outer: AsRef<T> + AsMut<T> + From<T>,
[src]
T: From<Outer>,
Outer: AsRef<T> + AsMut<T> + From<T>,
pub fn from_ref(outer: &Outer) -> &T
[src]
Get a reference to the inner from the outer.
pub fn from_mut(outer: &mut Outer) -> &mut T
[src]
Get a mutable reference to the inner from the outer.
impl<T> KeyedVec for T where
T: Codec,
[src]
T: Codec,
impl<T> MaybeDebug for T where
T: Debug,
T: Debug,
impl<T> MaybeDebug for T where
T: Debug,
T: Debug,
impl<T> MaybeRefUnwindSafe for T where
T: RefUnwindSafe,
T: RefUnwindSafe,
impl<T> Member for T where
T: 'static + Clone + PartialEq<T> + Eq + Send + Sync + Debug,
[src]
T: 'static + Clone + PartialEq<T> + Eq + Send + Sync + Debug,
impl<T> Parameter for T where
T: Codec + EncodeLike<T> + Clone + Eq + Debug,
[src]
T: Codec + EncodeLike<T> + Clone + Eq + Debug,
impl<T> Same<T> for T
type Output = T
Should always be Self
impl<T> SaturatedConversion for T
pub fn saturated_from<T>(t: T) -> Self where
Self: UniqueSaturatedFrom<T>,
Self: UniqueSaturatedFrom<T>,
pub fn saturated_into<T>(self) -> T where
Self: UniqueSaturatedInto<T>,
Self: UniqueSaturatedInto<T>,
impl<T> ToOwned for T where
T: Clone,
[src]
T: Clone,
type Owned = T
The resulting type after obtaining ownership.
pub fn to_owned(&self) -> T
[src]
pub fn clone_into(&self, target: &mut T)
[src]
impl<T, U> TryFrom<U> for T where
U: Into<T>,
[src]
U: Into<T>,
type Error = Infallible
The type returned in the event of a conversion error.
pub fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>
[src]
impl<T, U> TryInto<U> for T where
U: TryFrom<T>,
[src]
U: TryFrom<T>,
type Error = <U as TryFrom<T>>::Error
The type returned in the event of a conversion error.
pub fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>
[src]
impl<S, T> UncheckedInto<T> for S where
T: UncheckedFrom<S>,
[src]
T: UncheckedFrom<S>,
pub fn unchecked_into(self) -> T
[src]
impl<T, S> UniqueSaturatedInto<T> for S where
T: Bounded,
S: TryInto<T>,
T: Bounded,
S: TryInto<T>,
pub fn unique_saturated_into(self) -> T
impl<V, T> VZip<V> for T where
V: MultiLane<T>,
V: MultiLane<T>,