Struct pallet_ranked_collective::pallet::Pallet  
source · pub struct Pallet<T, I = ()>(_);Expand description
The Pallet struct, the main type that implements traits and standalone
functions within the pallet.
Implementations§
source§impl<T: Config<I>, I: 'static> Pallet<T, I>
 
impl<T: Config<I>, I: 'static> Pallet<T, I>
sourcepub fn add_member(
    origin: OriginFor<T>,
    who: <<T as Config>::Lookup as StaticLookup>::Source
) -> DispatchResult
 
pub fn add_member( origin: OriginFor<T>, who: <<T as Config>::Lookup as StaticLookup>::Source ) -> DispatchResult
Introduce a new member.
origin: Must be theAdminOrigin.who: Account of non-member which will become a member.rank: The rank to give the new member.
Weight: O(1)
sourcepub fn promote_member(
    origin: OriginFor<T>,
    who: <<T as Config>::Lookup as StaticLookup>::Source
) -> DispatchResult
 
pub fn promote_member( origin: OriginFor<T>, who: <<T as Config>::Lookup as StaticLookup>::Source ) -> DispatchResult
Increment the rank of an existing member by one.
origin: Must be theAdminOrigin.who: Account of existing member.
Weight: O(1)
sourcepub fn demote_member(
    origin: OriginFor<T>,
    who: <<T as Config>::Lookup as StaticLookup>::Source
) -> DispatchResult
 
pub fn demote_member( origin: OriginFor<T>, who: <<T as Config>::Lookup as StaticLookup>::Source ) -> DispatchResult
Decrement the rank of an existing member by one. If the member is already at rank zero, then they are removed entirely.
origin: Must be theAdminOrigin.who: Account of existing member of rank greater than zero.
Weight: O(1), less if the member’s index is highest in its rank.
sourcepub fn remove_member(
    origin: OriginFor<T>,
    who: <<T as Config>::Lookup as StaticLookup>::Source,
    min_rank: Rank
) -> DispatchResultWithPostInfo
 
pub fn remove_member( origin: OriginFor<T>, who: <<T as Config>::Lookup as StaticLookup>::Source, min_rank: Rank ) -> DispatchResultWithPostInfo
Remove the member entirely.
origin: Must be theAdminOrigin.who: Account of existing member of rank greater than zero.min_rank: The rank of the member or greater.
Weight: O(min_rank).
sourcepub fn vote(
    origin: OriginFor<T>,
    poll: PollIndexOf<T, I>,
    aye: bool
) -> DispatchResultWithPostInfo
 
pub fn vote( origin: OriginFor<T>, poll: PollIndexOf<T, I>, aye: bool ) -> DispatchResultWithPostInfo
Add an aye or nay vote for the sender to the given proposal.
origin: Must beSignedby a member account.poll: Index of a poll which is ongoing.aye:trueif the vote is to approve the proposal,falseotherwise.
Transaction fees are be waived if the member is voting on any particular proposal for the first time and the call is successful. Subsequent vote changes will charge a fee.
Weight: O(1), less if there was no previous vote on the poll by the member.
sourcepub fn cleanup_poll(
    origin: OriginFor<T>,
    poll_index: PollIndexOf<T, I>,
    max: u32
) -> DispatchResultWithPostInfo
 
pub fn cleanup_poll( origin: OriginFor<T>, poll_index: PollIndexOf<T, I>, max: u32 ) -> DispatchResultWithPostInfo
Remove votes from the given poll. It must have ended.
origin: Must beSignedby any account.poll_index: Index of a poll which is completed and for which votes continue to exist.max: Maximum number of vote items from remove in this call.
Transaction fees are waived if the operation is successful.
Weight O(max) (less if there are fewer items to remove than max).
source§impl<T: Config<I>, I: 'static> Pallet<T, I>
 
impl<T: Config<I>, I: 'static> Pallet<T, I>
sourcepub fn do_add_member(who: T::AccountId) -> DispatchResult
 
pub fn do_add_member(who: T::AccountId) -> DispatchResult
Adds a member into the ranked collective at level 0.
No origin checks are executed.
sourcepub fn do_promote_member(
    who: T::AccountId,
    maybe_max_rank: Option<Rank>
) -> DispatchResult
 
pub fn do_promote_member( who: T::AccountId, maybe_max_rank: Option<Rank> ) -> DispatchResult
Promotes a member in the ranked collective into the next higher rank.
A maybe_max_rank may be provided to check that the member does not get promoted beyond
a certain rank. Is None is provided, then the rank will be incremented without checks.
sourcepub fn do_add_member_to_rank(who: T::AccountId, rank: Rank) -> DispatchResult
 
pub fn do_add_member_to_rank(who: T::AccountId, rank: Rank) -> DispatchResult
Add a member to the rank collective, and continue to promote them until a certain rank is reached.
sourcepub fn as_rank(
    o: &<T::RuntimeOrigin as OriginTrait>::PalletsOrigin
) -> Option<u16>
 
pub fn as_rank( o: &<T::RuntimeOrigin as OriginTrait>::PalletsOrigin ) -> Option<u16>
Determine the rank of the account behind the Signed origin o, None if the account
is unknown to this collective or o is not Signed.
Trait Implementations§
source§impl<T, I: 'static> Benchmarking for Pallet<T, I>where
    T: Config + Config<I>,
 
impl<T, I: 'static> Benchmarking for Pallet<T, I>where T: Config + Config<I>,
source§fn benchmarks(extra: bool) -> Vec<BenchmarkMetadata>
 
fn benchmarks(extra: bool) -> Vec<BenchmarkMetadata>
source§fn run_benchmark(
    extrinsic: &[u8],
    c: &[(BenchmarkParameter, u32)],
    whitelist: &[TrackedStorageKey],
    verify: bool,
    internal_repeats: u32
) -> Result<Vec<BenchmarkResult>, BenchmarkError>
 
fn run_benchmark( extrinsic: &[u8], c: &[(BenchmarkParameter, u32)], whitelist: &[TrackedStorageKey], verify: bool, internal_repeats: u32 ) -> Result<Vec<BenchmarkResult>, BenchmarkError>
source§impl<T: Config<I>, I: 'static> GetMaxVoters for Pallet<T, I>
 
impl<T: Config<I>, I: 'static> GetMaxVoters for Pallet<T, I>
source§impl<T: Config<I>, I: 'static> GetStorageVersion for Pallet<T, I>
 
impl<T: Config<I>, I: 'static> GetStorageVersion for Pallet<T, I>
source§fn current_storage_version() -> Self::CurrentStorageVersion
 
fn current_storage_version() -> Self::CurrentStorageVersion
source§fn on_chain_storage_version() -> StorageVersion
 
fn on_chain_storage_version() -> StorageVersion
source§impl<T: Config<I>, I: 'static> Hooks<<<<T as Config>::Block as HeaderProvider>::HeaderT as Header>::Number> for Pallet<T, I>
 
impl<T: Config<I>, I: 'static> Hooks<<<<T as Config>::Block as HeaderProvider>::HeaderT as Header>::Number> for Pallet<T, I>
source§fn on_initialize(_n: BlockNumber) -> Weight
 
fn on_initialize(_n: BlockNumber) -> Weight
source§fn on_finalize(_n: BlockNumber)
 
fn on_finalize(_n: BlockNumber)
source§fn on_idle(_n: BlockNumber, _remaining_weight: Weight) -> Weight
 
fn on_idle(_n: BlockNumber, _remaining_weight: Weight) -> Weight
Hooks::on_finalize). Read moresource§fn on_runtime_upgrade() -> Weight
 
fn on_runtime_upgrade() -> Weight
source§fn try_state(_n: BlockNumber) -> Result<(), DispatchError>
 
fn try_state(_n: BlockNumber) -> Result<(), DispatchError>
source§fn pre_upgrade() -> Result<Vec<u8, Global>, DispatchError>
 
fn pre_upgrade() -> Result<Vec<u8, Global>, DispatchError>
source§fn post_upgrade(_state: Vec<u8, Global>) -> Result<(), DispatchError>
 
fn post_upgrade(_state: Vec<u8, Global>) -> Result<(), DispatchError>
source§fn offchain_worker(_n: BlockNumber)
 
fn offchain_worker(_n: BlockNumber)
source§fn integrity_test()
 
fn integrity_test()
source§impl<T: Config<I>, I: 'static> IntegrityTest for Pallet<T, I>
 
impl<T: Config<I>, I: 'static> IntegrityTest for Pallet<T, I>
source§impl<T: Config<I>, I: 'static> OffchainWorker<<<<T as Config>::Block as HeaderProvider>::HeaderT as Header>::Number> for Pallet<T, I>
 
impl<T: Config<I>, I: 'static> OffchainWorker<<<<T as Config>::Block as HeaderProvider>::HeaderT as Header>::Number> for Pallet<T, I>
source§fn offchain_worker(n: BlockNumberFor<T>)
 
fn offchain_worker(n: BlockNumberFor<T>)
source§impl<T: Config<I>, I: 'static> OnFinalize<<<<T as Config>::Block as HeaderProvider>::HeaderT as Header>::Number> for Pallet<T, I>
 
impl<T: Config<I>, I: 'static> OnFinalize<<<<T as Config>::Block as HeaderProvider>::HeaderT as Header>::Number> for Pallet<T, I>
source§fn on_finalize(n: BlockNumberFor<T>)
 
fn on_finalize(n: BlockNumberFor<T>)
Hooks::on_finalize.source§impl<T: Config<I>, I: 'static> OnGenesis for Pallet<T, I>
 
impl<T: Config<I>, I: 'static> OnGenesis for Pallet<T, I>
source§fn on_genesis()
 
fn on_genesis()
source§impl<T: Config<I>, I: 'static> OnIdle<<<<T as Config>::Block as HeaderProvider>::HeaderT as Header>::Number> for Pallet<T, I>
 
impl<T: Config<I>, I: 'static> OnIdle<<<<T as Config>::Block as HeaderProvider>::HeaderT as Header>::Number> for Pallet<T, I>
source§fn on_idle(n: BlockNumberFor<T>, remaining_weight: Weight) -> Weight
 
fn on_idle(n: BlockNumberFor<T>, remaining_weight: Weight) -> Weight
Hooks::on_idle.source§impl<T: Config<I>, I: 'static> OnInitialize<<<<T as Config>::Block as HeaderProvider>::HeaderT as Header>::Number> for Pallet<T, I>
 
impl<T: Config<I>, I: 'static> OnInitialize<<<<T as Config>::Block as HeaderProvider>::HeaderT as Header>::Number> for Pallet<T, I>
source§fn on_initialize(n: BlockNumberFor<T>) -> Weight
 
fn on_initialize(n: BlockNumberFor<T>) -> Weight
Hooks::on_initialize.source§impl<T: Config<I>, I: 'static> OnRuntimeUpgrade for Pallet<T, I>
 
impl<T: Config<I>, I: 'static> OnRuntimeUpgrade for Pallet<T, I>
source§fn on_runtime_upgrade() -> Weight
 
fn on_runtime_upgrade() -> Weight
source§fn pre_upgrade() -> Result<Vec<u8>, TryRuntimeError>
 
fn pre_upgrade() -> Result<Vec<u8>, TryRuntimeError>
Hooks::pre_upgrade.source§fn post_upgrade(state: Vec<u8>) -> Result<(), TryRuntimeError>
 
fn post_upgrade(state: Vec<u8>) -> Result<(), TryRuntimeError>
Hooks::post_upgrade.source§fn try_on_runtime_upgrade(checks: bool) -> Result<Weight, DispatchError>
 
fn try_on_runtime_upgrade(checks: bool) -> Result<Weight, DispatchError>
pre_upgrade ->
on_runtime_upgrade -> post_upgrade hooks for a migration. Read moresource§impl<T: Config<I>, I: 'static> PalletInfoAccess for Pallet<T, I>
 
impl<T: Config<I>, I: 'static> PalletInfoAccess for Pallet<T, I>
source§fn module_name() -> &'static str
 
fn module_name() -> &'static str
source§fn crate_version() -> CrateVersion
 
fn crate_version() -> CrateVersion
source§impl<T: Config<I>, I: 'static> PalletsInfoAccess for Pallet<T, I>
 
impl<T: Config<I>, I: 'static> PalletsInfoAccess for Pallet<T, I>
source§impl<T, I> PartialEq<Pallet<T, I>> for Pallet<T, I>
 
impl<T, I> PartialEq<Pallet<T, I>> for Pallet<T, I>
source§impl<T: Config<I>, I: 'static> RankedMembers for Pallet<T, I>
 
impl<T: Config<I>, I: 'static> RankedMembers for Pallet<T, I>
type AccountId = <T as Config>::AccountId
type Rank = u16
source§fn rank_of(who: &Self::AccountId) -> Option<Self::Rank>
 
fn rank_of(who: &Self::AccountId) -> Option<Self::Rank>
None if they are not a member.source§fn induct(who: &Self::AccountId) -> DispatchResult
 
fn induct(who: &Self::AccountId) -> DispatchResult
min_rank().source§fn promote(who: &Self::AccountId) -> DispatchResult
 
fn promote(who: &Self::AccountId) -> DispatchResult
source§fn demote(who: &Self::AccountId) -> DispatchResult
 
fn demote(who: &Self::AccountId) -> DispatchResult
min_rank removes the
member entirely.source§impl<T: Config<I>, I: 'static> StorageInfoTrait for Pallet<T, I>
 
impl<T: Config<I>, I: 'static> StorageInfoTrait for Pallet<T, I>
fn storage_info() -> Vec<StorageInfo>
source§impl<T: Config<I>, I: 'static> TryState<<<<T as Config>::Block as HeaderProvider>::HeaderT as Header>::Number> for Pallet<T, I>
 
impl<T: Config<I>, I: 'static> TryState<<<<T as Config>::Block as HeaderProvider>::HeaderT as Header>::Number> for Pallet<T, I>
source§fn try_state(
    n: BlockNumberFor<T>,
    _s: TryStateSelect
) -> Result<(), TryRuntimeError>
 
fn try_state( n: BlockNumberFor<T>, _s: TryStateSelect ) -> Result<(), TryRuntimeError>
source§impl<T: Config<I>, I: 'static> WhitelistedStorageKeys for Pallet<T, I>
 
impl<T: Config<I>, I: 'static> WhitelistedStorageKeys for Pallet<T, I>
source§fn whitelisted_storage_keys() -> Vec<TrackedStorageKey>
 
fn whitelisted_storage_keys() -> Vec<TrackedStorageKey>
Vec<TrackedStorageKey> indicating the storage keys that
should be whitelisted during benchmarking. This means that those keys
will be excluded from the benchmarking performance calculation.impl<T, I> Eq for Pallet<T, I>
Auto Trait Implementations§
impl<T, I> RefUnwindSafe for Pallet<T, I>where I: RefUnwindSafe, T: RefUnwindSafe,
impl<T, I> Send for Pallet<T, I>where I: Send, T: Send,
impl<T, I> Sync for Pallet<T, I>where I: Sync, T: Sync,
impl<T, I> Unpin for Pallet<T, I>where I: Unpin, T: Unpin,
impl<T, I> UnwindSafe for Pallet<T, I>where I: UnwindSafe, T: UnwindSafe,
Blanket Implementations§
source§impl<T> CheckedConversion for T
 
impl<T> CheckedConversion for T
source§impl<Q, K> Equivalent<K> for Qwhere
    Q: Eq + ?Sized,
    K: Borrow<Q> + ?Sized,
 
impl<Q, K> Equivalent<K> for Qwhere Q: Eq + ?Sized, K: Borrow<Q> + ?Sized,
source§fn equivalent(&self, key: &K) -> bool
 
fn equivalent(&self, key: &K) -> bool
key and return true if they are equal.§impl<Q, K> Equivalent<K> for Qwhere
    Q: Eq + ?Sized,
    K: Borrow<Q> + ?Sized,
 
impl<Q, K> Equivalent<K> for Qwhere Q: Eq + ?Sized, K: Borrow<Q> + ?Sized,
§fn equivalent(&self, key: &K) -> bool
 
fn equivalent(&self, key: &K) -> bool
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>,
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>
self from the equivalent element of its
superset. Read more§fn is_in_subset(&self) -> bool
 
fn is_in_subset(&self) -> bool
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
self.to_subset but without any property checks. Always succeeds.§fn from_subset(element: &SS) -> SP
 
fn from_subset(element: &SS) -> SP
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
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
T.