referrerpolicy=no-referrer-when-downgrade

Trait polkadot_service::runtime_traits::Dispatchable

source ·
pub trait Dispatchable {
    type RuntimeOrigin: Debug;
    type Config;
    type Info;
    type PostInfo: Eq + PartialEq + Clone + Copy + Encode + Decode + Printable + ExtensionPostDispatchWeightHandler<Self::Info>;

    // Required method
    fn dispatch(
        self,
        origin: Self::RuntimeOrigin,
    ) -> Result<Self::PostInfo, DispatchErrorWithPostInfo<Self::PostInfo>>;
}
Expand description

A lazy call (module function and argument values) that can be executed via its dispatch method.

Required Associated Types§

source

type RuntimeOrigin: Debug

Every function call from your runtime has an origin, which specifies where the extrinsic was generated from. In the case of a signed extrinsic (transaction), the origin contains an identifier for the caller. The origin can be empty in the case of an inherent extrinsic.

source

type Config

source

type Info

An opaque set of information attached to the transaction. This could be constructed anywhere down the line in a runtime. The current Substrate runtime uses a struct with the same name to represent the dispatch class and weight.

source

type PostInfo: Eq + PartialEq + Clone + Copy + Encode + Decode + Printable + ExtensionPostDispatchWeightHandler<Self::Info>

Additional information that is returned by dispatch. Can be used to supply the caller with information about a Dispatchable that is only known post dispatch.

Required Methods§

source

fn dispatch( self, origin: Self::RuntimeOrigin, ) -> Result<Self::PostInfo, DispatchErrorWithPostInfo<Self::PostInfo>>

Actually dispatch this call and return the result of it.

Object Safety§

This trait is not object safe.

Implementations on Foreign Types§

source§

impl Dispatchable for RuntimeCall

source§

impl Dispatchable for RuntimeCall

source§

impl Dispatchable for ()

§

impl Dispatchable for RuntimeCall

§

type RuntimeOrigin = RuntimeOrigin

§

type Config = RuntimeCall

§

type Info = DispatchInfo

§

type PostInfo = PostDispatchInfo

§

fn dispatch( self, origin: RuntimeOrigin, ) -> Result<PostDispatchInfo, DispatchErrorWithPostInfo<PostDispatchInfo>>

§

impl Dispatchable for RuntimeCall

§

type RuntimeOrigin = RuntimeOrigin

§

type Config = RuntimeCall

§

type Info = DispatchInfo

§

type PostInfo = PostDispatchInfo

§

fn dispatch( self, origin: RuntimeOrigin, ) -> Result<PostDispatchInfo, DispatchErrorWithPostInfo<PostDispatchInfo>>

Implementors§