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: T::BlockNumber,
    },
    remove_proxy {
        delegate: <<T as Config>::Lookup as StaticLookup>::Source,
        proxy_type: T::ProxyType,
        delay: T::BlockNumber,
    },
    remove_proxies {},
    create_pure {
        proxy_type: T::ProxyType,
        delay: T::BlockNumber,
        index: u16,
    },
    kill_pure {
        spawner: <<T as Config>::Lookup as StaticLookup>::Source,
        proxy_type: T::ProxyType,
        index: u16,
        height: T::BlockNumber,
        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 one variant per dispatchable that can be called by an extrinsic.

Variants§

§

proxy

Fields

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

Dispatch the given call from an account that the sender is authorised 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.
§

add_proxy

Fields

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

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

remove_proxy

Fields

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

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

remove_proxies

Fields

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

Fields

§proxy_type: T::ProxyType
§delay: T::BlockNumber
§index: u16

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.

§

kill_pure

Fields

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

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.

§

announce

Fields

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

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

remove_announcement

Fields

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

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

reject_announcement

Fields

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

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

proxy_announced

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>

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.

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: T::BlockNumber
) -> 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: T::BlockNumber
) -> 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: T::BlockNumber,
    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: T::BlockNumber,
    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> 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 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 encode_to<__CodecOutputEdqy: Output + ?Sized>(
    &self,
    __codec_dest_edqy: &mut __CodecOutputEdqy
)

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

fn size_hint(&self) -> usize

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

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

Convert self to an owned vector.
source§

fn using_encoded<R, F>(&self, f: F) -> Rwhere
    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> 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.
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> GetDispatchInfo for Call<T>

source§

fn get_dispatch_info(&self) -> DispatchInfo

👎Deprecated: Trait has moved to frame_support::dispatch
source§

impl<T: Config> PartialEq<Call<T>> 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,
    T::BlockNumber: 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<Call<T>> for Call<T>

source§

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

Auto Trait Implementations§

§

impl<T> RefUnwindSafe for Call<T>where
    T: RefUnwindSafe,
    <T as Config>::BlockNumber: RefUnwindSafe,
    <<T as Config>::CallHasher as Hash>::Output: RefUnwindSafe,
    <T as Config>::ProxyType: RefUnwindSafe,
    <T as Config>::RuntimeCall: RefUnwindSafe,
    <<T as Config>::Lookup as StaticLookup>::Source: RefUnwindSafe,

§

impl<T> Send for Call<T>where
    T: Send,
    <T as Config>::RuntimeCall: Send,
    <<T as Config>::Lookup as StaticLookup>::Source: Send,

§

impl<T> Sync for Call<T>where
    T: Sync,
    <T as Config>::RuntimeCall: Sync,
    <<T as Config>::Lookup as StaticLookup>::Source: Sync,

§

impl<T> Unpin for Call<T>where
    T: Unpin,
    <T as Config>::BlockNumber: Unpin,
    <<T as Config>::CallHasher as Hash>::Output: Unpin,
    <T as Config>::ProxyType: Unpin,
    <<T as Config>::Lookup as StaticLookup>::Source: Unpin,

§

impl<T> UnwindSafe for Call<T>where
    T: UnwindSafe,
    <T as Config>::BlockNumber: UnwindSafe,
    <<T as Config>::CallHasher as Hash>::Output: UnwindSafe,
    <T as Config>::ProxyType: UnwindSafe,
    <T as Config>::RuntimeCall: UnwindSafe,
    <<T as Config>::Lookup as StaticLookup>::Source: UnwindSafe,

Blanket Implementations§

source§

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

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
source§

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

const: unstable · source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

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

const: unstable · 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 Twhere
    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 Twhere
    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
§

impl<T> Downcast for Twhere
    T: Any,

§

fn into_any(self: Box<T, Global>) -> Box<dyn Any + 'static, Global>

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

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

fn as_any(&self) -> &(dyn Any + 'static)

Convert &Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot generate &Any’s vtable from &Trait’s.
§

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

impl<T> DowncastSync for Twhere
    T: Any + Send + Sync,

§

fn into_any_arc(self: Arc<T>) -> Arc<dyn Any + Sync + Send + 'static>

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

impl<T> DynClone for Twhere
    T: Clone,

source§

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

source§

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

source§

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

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

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

§

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

const: unstable · source§

fn from(t: T) -> T

Returns the argument unchanged.

source§

impl<T> Hashable for Twhere
    T: Codec,

source§

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

source§

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

source§

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

source§

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

source§

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

source§

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

source§

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

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 Twhere
    U: From<T>,

const: unstable · 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> 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.
§

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

§

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

Get a reference to the inner from the outer.

§

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

Get a mutable reference to the inner from the outer.

source§

impl<T> KeyedVec for Twhere
    T: Codec,

source§

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

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

impl<T> Same<T> for T

§

type Output = T

Should always be Self
§

impl<T> SaturatedConversion for T

§

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

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

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

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

impl<T> ToOwned for Twhere
    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 Twhere
    U: Into<T>,

§

type Error = Infallible

The type returned in the event of a conversion error.
const: unstable · source§

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

Performs the conversion.
source§

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

§

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

The type returned in the event of a conversion error.
const: unstable · source§

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

Performs the conversion.
§

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

§

fn unchecked_into(self) -> T

The counterpart to unchecked_from.
§

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

§

fn unique_saturated_into(self) -> T

Consume self to return an equivalent value of T.
§

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

§

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 Swhere
    S: Decode + Encode,

source§

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

source§

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

source§

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

source§

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

source§

impl<T> EncodeLike<Box<T, Global>> for Twhere
    T: Encode,

source§

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

source§

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

source§

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

source§

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

§

impl<T> MaybeDebug for Twhere
    T: Debug,

§

impl<T> MaybeDebug for Twhere
    T: Debug,

§

impl<T> MaybeRefUnwindSafe for Twhere
    T: RefUnwindSafe,

source§

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

source§

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

source§

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