pub enum Call<T: Config> {
    proxy {
        real: <<T as Config>::Lookup as StaticLookup>::Source,
        force_proxy_type: Option<T::ProxyType>,
        call: Box<<T as Config>::RuntimeCall>,
    },
    add_proxy {
        delegate: <<T as Config>::Lookup as StaticLookup>::Source,
        proxy_type: T::ProxyType,
        delay: BlockNumberFor<T>,
    },
    remove_proxy {
        delegate: <<T as Config>::Lookup as StaticLookup>::Source,
        proxy_type: T::ProxyType,
        delay: BlockNumberFor<T>,
    },
    remove_proxies {},
    create_pure {
        proxy_type: T::ProxyType,
        delay: BlockNumberFor<T>,
        index: u16,
    },
    kill_pure {
        spawner: <<T as Config>::Lookup as StaticLookup>::Source,
        proxy_type: T::ProxyType,
        index: u16,
        height: BlockNumberFor<T>,
        ext_index: u32,
    },
    announce {
        real: <<T as Config>::Lookup as StaticLookup>::Source,
        call_hash: <<T as Config>::CallHasher as Hash>::Output,
    },
    remove_announcement {
        real: <<T as Config>::Lookup as StaticLookup>::Source,
        call_hash: <<T as Config>::CallHasher as Hash>::Output,
    },
    reject_announcement {
        delegate: <<T as Config>::Lookup as StaticLookup>::Source,
        call_hash: <<T as Config>::CallHasher as Hash>::Output,
    },
    proxy_announced {
        delegate: <<T as Config>::Lookup as StaticLookup>::Source,
        real: <<T as Config>::Lookup as StaticLookup>::Source,
        force_proxy_type: Option<T::ProxyType>,
        call: Box<<T as Config>::RuntimeCall>,
    },
    // some variants omitted
}
Expand description

Contains a variant per dispatchable extrinsic that this pallet has.

Variants§

§

proxy

Dispatch the given call from an account that the sender is authorised for through add_proxy.

The dispatch origin for this call must be Signed.

Parameters:

  • real: The account that the proxy will make a call on behalf of.
  • force_proxy_type: Specify the exact proxy type to be used and checked for this call.
  • call: The call to be made by the real account.

Fields

§real: <<T as Config>::Lookup as StaticLookup>::Source
§force_proxy_type: Option<T::ProxyType>
§call: Box<<T as Config>::RuntimeCall>
§

add_proxy

Register a proxy account for the sender that is able to make calls on its behalf.

The dispatch origin for this call must be Signed.

Parameters:

  • proxy: The account that the caller would like to make a proxy.
  • proxy_type: The permissions allowed for this proxy account.
  • delay: The announcement period required of the initial proxy. Will generally be zero.

Fields

§delegate: <<T as Config>::Lookup as StaticLookup>::Source
§proxy_type: T::ProxyType
§

remove_proxy

Unregister a proxy account for the sender.

The dispatch origin for this call must be Signed.

Parameters:

  • proxy: The account that the caller would like to remove as a proxy.
  • proxy_type: The permissions currently enabled for the removed proxy account.

Fields

§delegate: <<T as Config>::Lookup as StaticLookup>::Source
§proxy_type: T::ProxyType
§

remove_proxies

Unregister all proxy accounts for the sender.

The dispatch origin for this call must be Signed.

WARNING: This may be called on accounts created by pure, however if done, then the unreserved fees will be inaccessible. All access to this account will be lost.

§

create_pure

Spawn a fresh new account that is guaranteed to be otherwise inaccessible, and initialize it with a proxy of proxy_type for origin sender.

Requires a Signed origin.

  • proxy_type: The type of the proxy that the sender will be registered as over the new account. This will almost always be the most permissive ProxyType possible to allow for maximum flexibility.
  • index: A disambiguation index, in case this is called multiple times in the same transaction (e.g. with utility::batch). Unless you’re using batch you probably just want to use 0.
  • delay: The announcement period required of the initial proxy. Will generally be zero.

Fails with Duplicate if this has already been called in this transaction, from the same sender, with the same parameters.

Fails if there are insufficient funds to pay for deposit.

Fields

§proxy_type: T::ProxyType
§index: u16
§

kill_pure

Removes a previously spawned pure proxy.

WARNING: All access to this account will be lost. Any funds held in it will be inaccessible.

Requires a Signed origin, and the sender account must have been created by a call to pure with corresponding parameters.

  • spawner: The account that originally called pure to create this account.
  • index: The disambiguation index originally passed to pure. Probably 0.
  • proxy_type: The proxy type originally passed to pure.
  • height: The height of the chain when the call to pure was processed.
  • ext_index: The extrinsic index in which the call to pure was processed.

Fails with NoPermission in case the caller is not a previously created pure account whose pure call has corresponding parameters.

Fields

§spawner: <<T as Config>::Lookup as StaticLookup>::Source
§proxy_type: T::ProxyType
§index: u16
§height: BlockNumberFor<T>
§ext_index: u32
§

announce

Publish the hash of a proxy-call that will be made in the future.

This must be called some number of blocks before the corresponding proxy is attempted if the delay associated with the proxy relationship is greater than zero.

No more than MaxPending announcements may be made at any one time.

This will take a deposit of AnnouncementDepositFactor as well as AnnouncementDepositBase if there are no other pending announcements.

The dispatch origin for this call must be Signed and a proxy of real.

Parameters:

  • real: The account that the proxy will make a call on behalf of.
  • call_hash: The hash of the call to be made by the real account.

Fields

§real: <<T as Config>::Lookup as StaticLookup>::Source
§call_hash: <<T as Config>::CallHasher as Hash>::Output
§

remove_announcement

Remove a given announcement.

May be called by a proxy account to remove a call they previously announced and return the deposit.

The dispatch origin for this call must be Signed.

Parameters:

  • real: The account that the proxy will make a call on behalf of.
  • call_hash: The hash of the call to be made by the real account.

Fields

§real: <<T as Config>::Lookup as StaticLookup>::Source
§call_hash: <<T as Config>::CallHasher as Hash>::Output
§

reject_announcement

Remove the given announcement of a delegate.

May be called by a target (proxied) account to remove a call that one of their delegates (delegate) has announced they want to execute. The deposit is returned.

The dispatch origin for this call must be Signed.

Parameters:

  • delegate: The account that previously announced the call.
  • call_hash: The hash of the call to be made.

Fields

§delegate: <<T as Config>::Lookup as StaticLookup>::Source
§call_hash: <<T as Config>::CallHasher as Hash>::Output
§

proxy_announced

Dispatch the given call from an account that the sender is authorized for through add_proxy.

Removes any corresponding announcement(s).

The dispatch origin for this call must be Signed.

Parameters:

  • real: The account that the proxy will make a call on behalf of.
  • force_proxy_type: Specify the exact proxy type to be used and checked for this call.
  • call: The call to be made by the real account.

Fields

§delegate: <<T as Config>::Lookup as StaticLookup>::Source
§real: <<T as Config>::Lookup as StaticLookup>::Source
§force_proxy_type: Option<T::ProxyType>
§call: Box<<T as Config>::RuntimeCall>

Implementations§

source§

impl<T: Config> Call<T>

source

pub fn new_call_variant_proxy( real: <<T as Config>::Lookup as StaticLookup>::Source, force_proxy_type: Option<T::ProxyType>, call: Box<<T as Config>::RuntimeCall> ) -> Self

Create a call with the variant proxy.

source

pub fn new_call_variant_add_proxy( delegate: <<T as Config>::Lookup as StaticLookup>::Source, proxy_type: T::ProxyType, delay: BlockNumberFor<T> ) -> Self

Create a call with the variant add_proxy.

source

pub fn new_call_variant_remove_proxy( delegate: <<T as Config>::Lookup as StaticLookup>::Source, proxy_type: T::ProxyType, delay: BlockNumberFor<T> ) -> Self

Create a call with the variant remove_proxy.

source

pub fn new_call_variant_remove_proxies() -> Self

Create a call with the variant remove_proxies.

source

pub fn new_call_variant_create_pure( proxy_type: T::ProxyType, delay: BlockNumberFor<T>, index: u16 ) -> Self

Create a call with the variant create_pure.

source

pub fn new_call_variant_kill_pure( spawner: <<T as Config>::Lookup as StaticLookup>::Source, proxy_type: T::ProxyType, index: u16, height: BlockNumberFor<T>, ext_index: u32 ) -> Self

Create a call with the variant kill_pure.

source

pub fn new_call_variant_announce( real: <<T as Config>::Lookup as StaticLookup>::Source, call_hash: <<T as Config>::CallHasher as Hash>::Output ) -> Self

Create a call with the variant announce.

source

pub fn new_call_variant_remove_announcement( real: <<T as Config>::Lookup as StaticLookup>::Source, call_hash: <<T as Config>::CallHasher as Hash>::Output ) -> Self

Create a call with the variant remove_announcement.

source

pub fn new_call_variant_reject_announcement( delegate: <<T as Config>::Lookup as StaticLookup>::Source, call_hash: <<T as Config>::CallHasher as Hash>::Output ) -> Self

Create a call with the variant reject_announcement.

source

pub fn new_call_variant_proxy_announced( delegate: <<T as Config>::Lookup as StaticLookup>::Source, real: <<T as Config>::Lookup as StaticLookup>::Source, force_proxy_type: Option<T::ProxyType>, call: Box<<T as Config>::RuntimeCall> ) -> Self

Create a call with the variant proxy_announced.

Trait Implementations§

source§

impl<T: Config> CheckIfFeeless for Call<T>

§

type Origin = <T as Config>::RuntimeOrigin

The Origin type of the runtime.
source§

fn is_feeless(&self, origin: &Self::Origin) -> bool

Checks if the dispatchable satisfies the feeless condition as defined by #[pallet::feeless_if]
source§

impl<T: Config> Clone for Call<T>

source§

fn clone(&self) -> Self

Returns a copy of the value. Read more
1.0.0 · source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
source§

impl<T: Config> Debug for Call<T>

source§

fn fmt(&self, fmt: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl<T: Config> Decode for Call<T>

source§

fn decode<__CodecInputEdqy: Input>( __codec_input_edqy: &mut __CodecInputEdqy ) -> Result<Self, Error>

Attempt to deserialise the value from input.
source§

fn decode_into<I>( input: &mut I, dst: &mut MaybeUninit<Self> ) -> Result<DecodeFinished, Error>
where I: Input,

Attempt to deserialize the value from input into a pre-allocated piece of memory. Read more
source§

fn skip<I>(input: &mut I) -> Result<(), Error>
where I: Input,

Attempt to skip the encoded value from input. Read more
source§

fn encoded_fixed_size() -> Option<usize>

Returns the fixed encoded size of the type. Read more
source§

impl<T: Config> Encode for Call<T>

source§

fn size_hint(&self) -> usize

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

fn encode_to<__CodecOutputEdqy: Output + ?Sized>( &self, __codec_dest_edqy: &mut __CodecOutputEdqy )

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

fn encode(&self) -> Vec<u8>

Convert self to an owned vector.
source§

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.
source§

fn encoded_size(&self) -> usize

Calculates the encoded size. Read more
source§

impl<T: Config> GetCallIndex for Call<T>

source§

fn get_call_index(&self) -> u8

Return the index of this Call.
source§

fn get_call_indices() -> &'static [u8]

Return all call indices in the same order as GetCallName.
source§

impl<T: Config> GetCallName for Call<T>

source§

fn get_call_name(&self) -> &'static str

Return the function name of the Call.
source§

fn get_call_names() -> &'static [&'static str]

Return all function names in the same order as GetCallIndex.
source§

impl<T: Config> GetDispatchInfo for Call<T>

source§

fn get_dispatch_info(&self) -> DispatchInfo

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

impl<T: Config> PartialEq for Call<T>

source§

fn eq(&self, other: &Self) -> bool

This method tests for self and other values to be equal, and is used by ==.
1.0.0 · source§

fn ne(&self, other: &Rhs) -> bool

This method tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
source§

impl<T> TypeInfo for Call<T>
where PhantomData<(T,)>: TypeInfo + 'static, <<T as Config>::Lookup as StaticLookup>::Source: TypeInfo + 'static, Option<T::ProxyType>: TypeInfo + 'static, Box<<T as Config>::RuntimeCall>: TypeInfo + 'static, T::ProxyType: TypeInfo + 'static, BlockNumberFor<T>: TypeInfo + 'static + HasCompact, <<T as Config>::CallHasher as Hash>::Output: TypeInfo + 'static, T: Config + 'static,

§

type Identity = Call<T>

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

fn type_info() -> Type

Returns the static type identifier for Self.
source§

impl<T: Config> UnfilteredDispatchable for Call<T>

§

type RuntimeOrigin = <T as Config>::RuntimeOrigin

The origin type of the runtime, (i.e. frame_system::Config::RuntimeOrigin).
source§

fn dispatch_bypass_filter( self, origin: Self::RuntimeOrigin ) -> DispatchResultWithPostInfo

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

impl<T: Config> EncodeLike for Call<T>

source§

impl<T: Config> Eq for Call<T>

Auto Trait Implementations§

§

impl<T> Freeze for Call<T>
where T: Config + Clone + Eq + PartialEq + 'static, <<T as Config>::Lookup as StaticLookup>::Source: Freeze, <T as Config>::ProxyType: Freeze, <<<T as Config>::Block as Block>::Header as Header>::Number: Freeze, <<T as Config>::CallHasher as Hash>::Output: Freeze,

§

impl<T> RefUnwindSafe for Call<T>

§

impl<T> Send for Call<T>
where T: Config + Clone + Eq + PartialEq + 'static + Send, <<T as Config>::Lookup as StaticLookup>::Source: Send, <T as Config>::RuntimeCall: Send,

§

impl<T> Sync for Call<T>
where T: Config + Clone + Eq + PartialEq + 'static + Sync, <<T as Config>::Lookup as StaticLookup>::Source: Sync, <T as Config>::RuntimeCall: Sync,

§

impl<T> Unpin for Call<T>
where T: Config + Clone + Eq + PartialEq + 'static + Unpin, <<T as Config>::Lookup as StaticLookup>::Source: Unpin, <T as Config>::ProxyType: Unpin, <<<T as Config>::Block as Block>::Header as Header>::Number: Unpin, <<T as Config>::CallHasher as Hash>::Output: Unpin,

§

impl<T> UnwindSafe for Call<T>

Blanket Implementations§

source§

impl<T> Any for T
where T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
source§

impl<T> Borrow<T> for T
where T: ?Sized,

source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
source§

impl<T> CheckedConversion for T

source§

fn checked_from<T>(t: T) -> Option<Self>
where Self: TryFrom<T>,

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

fn checked_into<T>(self) -> Option<T>
where Self: TryInto<T>,

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

impl<T> DecodeAll for T
where T: Decode,

source§

fn decode_all(input: &mut &[u8]) -> Result<T, Error>

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

impl<T> DecodeLimit for T
where T: Decode,

source§

fn decode_all_with_depth_limit( limit: u32, input: &mut &[u8] ) -> Result<T, Error>

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

fn decode_with_depth_limit<I>(limit: u32, input: &mut I) -> Result<T, Error>
where I: Input,

Decode Self with the given maximum recursion depth and advance input by the number of bytes consumed. Read more
source§

impl<T> DynClone for T
where T: Clone,

source§

fn __clone_box(&self, _: Private) -> *mut ()

source§

impl<Q, K> Equivalent<K> for Q
where Q: Eq + ?Sized, K: Borrow<Q> + ?Sized,

source§

fn equivalent(&self, key: &K) -> bool

Checks if this value is equivalent to the given key. Read more
source§

impl<T> From<T> for T

source§

fn from(t: T) -> T

Returns the argument unchanged.

source§

impl<T> Hashable for T
where T: Codec,

source§

fn blake2_128(&self) -> [u8; 16]

source§

fn blake2_256(&self) -> [u8; 32]

source§

fn blake2_128_concat(&self) -> Vec<u8>

source§

fn twox_128(&self) -> [u8; 16]

source§

fn twox_256(&self) -> [u8; 32]

source§

fn twox_64_concat(&self) -> Vec<u8>

source§

fn identity(&self) -> Vec<u8>

source§

impl<T> Instrument for T

source§

fn instrument(self, span: Span) -> Instrumented<Self>

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

fn in_current_span(self) -> Instrumented<Self>

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

impl<T, U> Into<U> for T
where U: From<T>,

source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

source§

impl<T, U> IntoKey<U> for T
where U: FromKey<T>,

source§

fn into_key(self) -> U

source§

impl<T> IsType<T> for T

source§

fn from_ref(t: &T) -> &T

Cast reference.
source§

fn into_ref(&self) -> &T

Cast reference.
source§

fn from_mut(t: &mut T) -> &mut T

Cast mutable reference.
source§

fn into_mut(&mut self) -> &mut T

Cast mutable reference.
source§

impl<T, Outer> IsWrappedBy<Outer> for T
where Outer: AsRef<T> + AsMut<T> + From<T>, T: From<Outer>,

source§

fn from_ref(outer: &Outer) -> &T

Get a reference to the inner from the outer.

source§

fn from_mut(outer: &mut Outer) -> &mut T

Get a mutable reference to the inner from the outer.

source§

impl<T> KeyedVec for T
where T: Codec,

source§

fn to_keyed_vec(&self, prepend_key: &[u8]) -> Vec<u8>

Return an encoding of Self prepended by given slice.
source§

impl<T> Same for T

§

type Output = T

Should always be Self
source§

impl<T> SaturatedConversion for T

source§

fn saturated_from<T>(t: T) -> Self
where Self: UniqueSaturatedFrom<T>,

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

fn saturated_into<T>(self) -> T
where Self: UniqueSaturatedInto<T>,

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

impl<T> ToOwned for T
where T: Clone,

§

type Owned = T

The resulting type after obtaining ownership.
source§

fn to_owned(&self) -> T

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

fn clone_into(&self, target: &mut T)

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

impl<T, U> TryFrom<U> for T
where U: Into<T>,

§

type Error = Infallible

The type returned in the event of a conversion error.
source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
source§

impl<T, U> TryIntoKey<U> for T
where U: TryFromKey<T>,

§

type Error = <U as TryFromKey<T>>::Error

source§

fn try_into_key(self) -> Result<U, <U as TryFromKey<T>>::Error>

source§

impl<S, T> UncheckedInto<T> for S
where T: UncheckedFrom<S>,

source§

fn unchecked_into(self) -> T

The counterpart to unchecked_from.
source§

impl<T, S> UniqueSaturatedInto<T> for S
where T: Bounded, S: TryInto<T>,

source§

fn unique_saturated_into(self) -> T

Consume self to return an equivalent value of T.
source§

impl<V, T> VZip<V> for T
where V: MultiLane<T>,

source§

fn vzip(self) -> V

source§

impl<T> WithSubscriber for T

source§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
where S: Into<Dispatch>,

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

fn with_current_subscriber(self) -> WithDispatch<Self>

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

impl<S> Codec for S
where S: Decode + Encode,

source§

impl<T> EncodeLike<&&T> for T
where T: Encode,

source§

impl<T> EncodeLike<&T> for T
where T: Encode,

source§

impl<T> EncodeLike<&mut T> for T
where T: Encode,

source§

impl<T> EncodeLike<Arc<T>> for T
where T: Encode,

source§

impl<T> EncodeLike<Box<T>> for T
where T: Encode,

source§

impl<'a, T> EncodeLike<Cow<'a, T>> for T
where T: ToOwned + Encode,

source§

impl<T> EncodeLike<Rc<T>> for T
where T: Encode,

source§

impl<S> FullCodec for S
where S: Decode + FullEncode,

source§

impl<S> FullEncode for S
where S: Encode + EncodeLike,

source§

impl<T> JsonSchemaMaybe for T

source§

impl<T> MaybeDebug for T
where T: Debug,

source§

impl<T> MaybeRefUnwindSafe for T
where T: RefUnwindSafe,

source§

impl<T> Member for T
where T: Send + Sync + Debug + Eq + PartialEq + Clone + 'static,

source§

impl<T> Parameter for T
where T: Codec + EncodeLike + Clone + Eq + Debug + TypeInfo,

source§

impl<T> StaticTypeInfo for T
where T: TypeInfo + 'static,