Enum pallet_democracy::pallet::Call[][src]

pub enum Call<T: Config> {
Show 25 variants propose { proposal_hash: T::Hash, value: <<T as Config>::Currency as Currency<<T as Config>::AccountId>>::Balance, }, second { proposal: PropIndex, seconds_upper_bound: u32, }, vote { ref_index: ReferendumIndex, vote: AccountVote<<<T as Config>::Currency as Currency<<T as Config>::AccountId>>::Balance>, }, emergency_cancel { ref_index: ReferendumIndex, }, external_propose { proposal_hash: T::Hash, }, external_propose_majority { proposal_hash: T::Hash, }, external_propose_default { proposal_hash: T::Hash, }, fast_track { proposal_hash: T::Hash, voting_period: T::BlockNumber, delay: T::BlockNumber, }, veto_external { proposal_hash: T::Hash, }, cancel_referendum { ref_index: ReferendumIndex, }, cancel_queued { which: ReferendumIndex, }, delegate { to: T::AccountId, conviction: Conviction, balance: <<T as Config>::Currency as Currency<<T as Config>::AccountId>>::Balance, }, undelegate {}, clear_public_proposals {}, note_preimage { encoded_proposal: Vec<u8>, }, note_preimage_operational { encoded_proposal: Vec<u8>, }, note_imminent_preimage { encoded_proposal: Vec<u8>, }, note_imminent_preimage_operational { encoded_proposal: Vec<u8>, }, reap_preimage { proposal_hash: T::Hash, proposal_len_upper_bound: u32, }, unlock { target: T::AccountId, }, remove_vote { index: ReferendumIndex, }, remove_other_vote { target: T::AccountId, index: ReferendumIndex, }, enact_proposal { proposal_hash: T::Hash, index: ReferendumIndex, }, blacklist { proposal_hash: T::Hash, maybe_ref_index: Option<ReferendumIndex>, }, cancel_proposal { prop_index: PropIndex, }, // some variants omitted
}
Expand description

Contains one variant per dispatchable that can be called by an extrinsic.

Variants

propose

Propose a sensitive action to be taken.

The dispatch origin of this call must be Signed and the sender must have funds to cover the deposit.

Emits Proposed.

Weight: O(p)

Fields of propose

proposal_hash: T::Hashvalue: <<T as Config>::Currency as Currency<<T as Config>::AccountId>>::Balance
second

Signals agreement with a particular proposal.

The dispatch origin of this call must be Signed and the sender must have funds to cover the deposit, equal to the original deposit.

Weight: O(S) where S is the number of seconds a proposal already has.

Fields of second

proposal: PropIndexseconds_upper_bound: u32
vote

Vote in a referendum. If vote.is_aye(), the vote is to enact the proposal; otherwise it is a vote to keep the status quo.

The dispatch origin of this call must be Signed.

Weight: O(R) where R is the number of referendums the voter has voted on.

Fields of vote

ref_index: ReferendumIndexvote: AccountVote<<<T as Config>::Currency as Currency<<T as Config>::AccountId>>::Balance>
emergency_cancel

Schedule an emergency cancellation of a referendum. Cannot happen twice to the same referendum.

The dispatch origin of this call must be CancellationOrigin.

-ref_index: The index of the referendum to cancel.

Weight: O(1).

Fields of emergency_cancel

ref_index: ReferendumIndex
external_propose

Schedule a referendum to be tabled once it is legal to schedule an external referendum.

The dispatch origin of this call must be ExternalOrigin.

Weight: O(V) with V number of vetoers in the blacklist of proposal. Decoding vec of length V. Charged as maximum

Fields of external_propose

proposal_hash: T::Hash
external_propose_majority

Schedule a majority-carries referendum to be tabled next once it is legal to schedule an external referendum.

The dispatch of this call must be ExternalMajorityOrigin.

Unlike external_propose, blacklisting has no effect on this and it may replace a pre-scheduled external_propose call.

Weight: O(1)

Fields of external_propose_majority

proposal_hash: T::Hash
external_propose_default

Schedule a negative-turnout-bias referendum to be tabled next once it is legal to schedule an external referendum.

The dispatch of this call must be ExternalDefaultOrigin.

Unlike external_propose, blacklisting has no effect on this and it may replace a pre-scheduled external_propose call.

Weight: O(1)

Fields of external_propose_default

proposal_hash: T::Hash
fast_track

Schedule the currently externally-proposed majority-carries referendum to be tabled immediately. If there is no externally-proposed referendum currently, or if there is one but it is not a majority-carries referendum then it fails.

The dispatch of this call must be FastTrackOrigin.

Emits Started.

Weight: O(1)

Fields of fast_track

proposal_hash: T::Hashvoting_period: T::BlockNumberdelay: T::BlockNumber
veto_external

Veto and blacklist the external proposal hash.

The dispatch origin of this call must be VetoOrigin.

Emits Vetoed.

Weight: O(V + log(V)) where V is number of existing vetoers

Fields of veto_external

proposal_hash: T::Hash
cancel_referendum

Remove a referendum.

The dispatch origin of this call must be Root.

Weight: O(1).

Fields of cancel_referendum

ref_index: ReferendumIndex
cancel_queued

Cancel a proposal queued for enactment.

The dispatch origin of this call must be Root.

Weight: O(D) where D is the items in the dispatch queue. Weighted as D = 10.

Fields of cancel_queued

which: ReferendumIndex
delegate

Delegate the voting power (with some given conviction) of the sending account.

The balance delegated is locked for as long as it’s delegated, and thereafter for the time appropriate for the conviction’s lock period.

The dispatch origin of this call must be Signed, and the signing account must either:

Emits Delegated.

Weight: O(R) where R is the number of referendums the voter delegating to has voted on. Weight is charged as if maximum votes.

Fields of delegate

to: T::AccountIdconviction: Convictionbalance: <<T as Config>::Currency as Currency<<T as Config>::AccountId>>::Balance
undelegate

Undelegate the voting power of the sending account.

Tokens may be unlocked following once an amount of time consistent with the lock period of the conviction with which the delegation was issued.

The dispatch origin of this call must be Signed and the signing account must be currently delegating.

Emits Undelegated.

Weight: O(R) where R is the number of referendums the voter delegating to has voted on. Weight is charged as if maximum votes.

Fields of undelegate

clear_public_proposals

Clears all public proposals.

The dispatch origin of this call must be Root.

Weight: O(1).

Fields of clear_public_proposals

note_preimage

Register the preimage for an upcoming proposal. This doesn’t require the proposal to be in the dispatch queue but does require a deposit, returned once enacted.

The dispatch origin of this call must be Signed.

Emits PreimageNoted.

Weight: O(E) with E size of encoded_proposal (protected by a required deposit).

Fields of note_preimage

encoded_proposal: Vec<u8>
note_preimage_operational

Same as note_preimage but origin is OperationalPreimageOrigin.

Fields of note_preimage_operational

encoded_proposal: Vec<u8>
note_imminent_preimage

Register the preimage for an upcoming proposal. This requires the proposal to be in the dispatch queue. No deposit is needed. When this call is successful, i.e. the preimage has not been uploaded before and matches some imminent proposal, no fee is paid.

The dispatch origin of this call must be Signed.

Emits PreimageNoted.

Weight: O(E) with E size of encoded_proposal (protected by a required deposit).

Fields of note_imminent_preimage

encoded_proposal: Vec<u8>
note_imminent_preimage_operational

Same as note_imminent_preimage but origin is OperationalPreimageOrigin.

Fields of note_imminent_preimage_operational

encoded_proposal: Vec<u8>
reap_preimage

Remove an expired proposal preimage and collect the deposit.

The dispatch origin of this call must be Signed.

This will only work after VotingPeriod blocks from the time that the preimage was noted, if it’s the same account doing it. If it’s a different account, then it’ll only work an additional EnactmentPeriod later.

Emits PreimageReaped.

Weight: O(D) where D is length of proposal.

Fields of reap_preimage

proposal_hash: T::Hashproposal_len_upper_bound: u32
unlock

Unlock tokens that have an expired lock.

The dispatch origin of this call must be Signed.

Weight: O(R) with R number of vote of target.

Fields of unlock

target: T::AccountId
remove_vote

Remove a vote for a referendum.

If:

If, however, the referendum has ended and:

The dispatch origin of this call must be Signed, and the signer must have a vote registered for referendum index.

Weight: O(R + log R) where R is the number of referenda that target has voted on. Weight is calculated for the maximum number of vote.

Fields of remove_vote

index: ReferendumIndex
remove_other_vote

Remove a vote for a referendum.

If the target is equal to the signer, then this function is exactly equivalent to remove_vote. If not equal to the signer, then the vote must have expired, either because the referendum was cancelled, because the voter lost the referendum or because the conviction period is over.

The dispatch origin of this call must be Signed.

Weight: O(R + log R) where R is the number of referenda that target has voted on. Weight is calculated for the maximum number of vote.

Fields of remove_other_vote

target: T::AccountIdindex: ReferendumIndex
enact_proposal

Enact a proposal from a referendum. For now we just make the weight be the maximum.

Fields of enact_proposal

proposal_hash: T::Hashindex: ReferendumIndex
blacklist

Permanently place a proposal into the blacklist. This prevents it from ever being proposed again.

If called on a queued public or external proposal, then this will result in it being removed. If the ref_index supplied is an active referendum with the proposal hash, then it will be cancelled.

The dispatch origin of this call must be BlacklistOrigin.

Weight: O(p) (though as this is an high-privilege dispatch, we assume it has a reasonable value).

Fields of blacklist

proposal_hash: T::Hashmaybe_ref_index: Option<ReferendumIndex>
cancel_proposal

Remove a proposal.

The dispatch origin of this call must be CancelProposalOrigin.

Weight: O(p) where p = PublicProps::<T>::decode_len()

Fields of cancel_proposal

prop_index: PropIndex

Implementations

Create a call with the variant propose.

Create a call with the variant second.

Create a call with the variant vote.

Create a call with the variant emergency_cancel.

Create a call with the variant external_propose.

Create a call with the variant external_propose_majority.

Create a call with the variant external_propose_default.

Create a call with the variant fast_track.

Create a call with the variant veto_external.

Create a call with the variant cancel_referendum.

Create a call with the variant cancel_queued.

Create a call with the variant delegate.

Create a call with the variant undelegate.

Create a call with the variant clear_public_proposals.

Create a call with the variant note_preimage.

Create a call with the variant note_preimage_operational.

Create a call with the variant note_imminent_preimage.

Create a call with the variant note_imminent_preimage_operational.

Create a call with the variant reap_preimage.

Create a call with the variant unlock.

Create a call with the variant remove_vote.

Create a call with the variant remove_other_vote.

Create a call with the variant enact_proposal.

Create a call with the variant blacklist.

Create a call with the variant cancel_proposal.

Trait Implementations

Returns a copy of the value. Read more

Performs copy-assignment from source. Read more

Formats the value using the given formatter. Read more

Attempt to deserialise the value from input.

Attempt to skip the encoded value from input. Read more

Returns the fixed encoded size of the type. Read more

Convert self to a slice and append it to the destination.

If possible give a hint of expected size of the encoding. Read more

Convert self to an owned vector.

Convert self to a slice and then invoke the given closure with it.

Calculates the encoded size. Read more

Return the function name of the Call.

Return all function names.

Return a DispatchInfo, containing relevant information of this dispatch. Read more

This method tests for self and other values to be equal, and is used by ==. Read more

This method tests for !=.

The type identifying for which type info is provided. Read more

Returns the static type identifier for Self.

The origin type of the runtime, (i.e. frame_system::Config::Origin).

Dispatch this call but do not check the filter in origin.

Auto Trait Implementations

Blanket Implementations

Gets the TypeId of self. Read more

Immutably borrows from an owned value. Read more

Mutably borrows from an owned value. Read more

Convert from a value of T into an equivalent instance of Option<Self>. Read more

Consume self to return Some equivalent value of Option<T>. Read more

Converts self into T using Into<T>. Read more

Converts self into a target type. Read more

Decode Self and consume all of the given input data. Read more

Decode Self and consume all of the given input data. Read more

Decode Self and advance input by the number of bytes consumed. Read more

Decode Self with the given maximum recursion depth. Read more

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

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

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

Convert Arc<Trait> (where Trait: Downcast) to Arc<Any>. Arc<Any> can then be further downcast into Arc<ConcreteType> where ConcreteType implements Trait. Read more

Compare self to key and return true if they are equal.

Causes self to use its Binary implementation when Debug-formatted.

Causes self to use its Display implementation when Debug-formatted. Read more

Causes self to use its LowerExp implementation when Debug-formatted. Read more

Causes self to use its LowerHex implementation when Debug-formatted. Read more

Causes self to use its Octal implementation when Debug-formatted.

Causes self to use its Pointer implementation when Debug-formatted. Read more

Causes self to use its UpperExp implementation when Debug-formatted. Read more

Causes self to use its UpperHex implementation when Debug-formatted. Read more

Performs the conversion.

Instruments this type with the provided Span, returning an Instrumented wrapper. Read more

Instruments this type with the current Span, returning an Instrumented wrapper. Read more

Performs the conversion.

Cast reference.

Cast reference.

Cast mutable reference.

Cast mutable reference.

Get a reference to the inner from the outer.

Get a mutable reference to the inner from the outer.

Return an encoding of Self prepended by given slice.

Pipes by value. This is generally the method you want to use. Read more

Borrows self and passes that borrow into the pipe function. Read more

Mutably borrows self and passes that borrow into the pipe function. Read more

Borrows self, then passes self.borrow() into the pipe function. Read more

Mutably borrows self, then passes self.borrow_mut() into the pipe function. Read more

Borrows self, then passes self.as_ref() into the pipe function.

Mutably borrows self, then passes self.as_mut() into the pipe function. Read more

Borrows self, then passes self.deref() into the pipe function.

Mutably borrows self, then passes self.deref_mut() into the pipe function. Read more

Pipes a value into a function that cannot ordinarily be called in suffix position. Read more

Pipes a trait borrow into a function that cannot normally be called in suffix position. Read more

Pipes a trait mutable borrow into a function that cannot normally be called in suffix position. Read more

Pipes a trait borrow into a function that cannot normally be called in suffix position. Read more

Pipes a trait mutable borrow into a function that cannot normally be called in suffix position. Read more

Pipes a dereference into a function that cannot normally be called in suffix position. Read more

Pipes a mutable dereference into a function that cannot normally be called in suffix position. Read more

Pipes a reference into a function that cannot ordinarily be called in suffix position. Read more

Pipes a mutable reference into a function that cannot ordinarily be called in suffix position. Read more

Should always be Self

Convert from a value of T into an equivalent instance of Self. Read more

Consume self to return an equivalent value of T. Read more

The inverse inclusion map: attempts to construct self from the equivalent element of its superset. Read more

Checks if self is actually part of its subset T (and can be converted to it).

Use with care! Same as self.to_subset but without any property checks. Always succeeds.

The inclusion map: converts self to the equivalent element of its superset.

Immutable access to a value. Read more

Mutable access to a value. Read more

Immutable access to the Borrow<B> of a value. Read more

Mutable access to the BorrowMut<B> of a value. Read more

Immutable access to the AsRef<R> view of a value. Read more

Mutable access to the AsMut<R> view of a value. Read more

Immutable access to the Deref::Target of a value. Read more

Mutable access to the Deref::Target of a value. Read more

Calls .tap() only in debug builds, and is erased in release builds.

Calls .tap_mut() only in debug builds, and is erased in release builds. Read more

Calls .tap_borrow() only in debug builds, and is erased in release builds. Read more

Calls .tap_borrow_mut() only in debug builds, and is erased in release builds. Read more

Calls .tap_ref() only in debug builds, and is erased in release builds. Read more

Calls .tap_ref_mut() only in debug builds, and is erased in release builds. Read more

Calls .tap_deref() only in debug builds, and is erased in release builds. Read more

Calls .tap_deref_mut() only in debug builds, and is erased in release builds. Read more

Provides immutable access for inspection. Read more

Calls tap in debug builds, and does nothing in release builds.

Provides mutable access for modification. Read more

Calls tap_mut in debug builds, and does nothing in release builds.

Provides immutable access to the reference for inspection.

Calls tap_ref in debug builds, and does nothing in release builds.

Provides mutable access to the reference for modification.

Calls tap_ref_mut in debug builds, and does nothing in release builds.

Provides immutable access to the borrow for inspection. Read more

Calls tap_borrow in debug builds, and does nothing in release builds.

Provides mutable access to the borrow for modification.

Calls tap_borrow_mut in debug builds, and does nothing in release builds. Read more

Immutably dereferences self for inspection.

Calls tap_deref in debug builds, and does nothing in release builds.

Mutably dereferences self for modification.

Calls tap_deref_mut in debug builds, and does nothing in release builds. Read more

The resulting type after obtaining ownership.

Creates owned data from borrowed data, usually by cloning. Read more

🔬 This is a nightly-only experimental API. (toowned_clone_into)

recently added

Uses borrowed data to replace owned data, usually by cloning. Read more

Attempts to convert self into T using TryInto<T>. Read more

Attempts to convert self into a target type. Read more

The type returned in the event of a conversion error.

Performs the conversion.

The type returned in the event of a conversion error.

Performs the conversion.

The counterpart to unchecked_from.

Consume self to return an equivalent value of T.

Attaches the provided Subscriber to this type, returning a WithDispatch wrapper. Read more

Attaches the current default Subscriber to this type, returning a WithDispatch wrapper. Read more