Trait sp_runtime::traits::Applyable[][src]

pub trait Applyable: Sized + Send + Sync {
    type Call: Dispatchable;
    fn validate<V: ValidateUnsigned<Call = Self::Call>>(
        &self,
        source: TransactionSource,
        info: &DispatchInfoOf<Self::Call>,
        len: usize
    ) -> TransactionValidity;
fn apply<V: ValidateUnsigned<Call = Self::Call>>(
        self,
        info: &DispatchInfoOf<Self::Call>,
        len: usize
    ) -> ApplyExtrinsicResultWithInfo<PostDispatchInfoOf<Self::Call>>; }

An “executable” piece of information, used by the standard Substrate Executive in order to enact a piece of extrinsic information by marshalling and dispatching to a named function call.

Also provides information on to whom this information is attributable and an index that allows each piece of attributable information to be disambiguated.

Associated Types

type Call: Dispatchable[src]

Type by which we can dispatch. Restricts the UnsignedValidator type.

Loading content...

Required methods

fn validate<V: ValidateUnsigned<Call = Self::Call>>(
    &self,
    source: TransactionSource,
    info: &DispatchInfoOf<Self::Call>,
    len: usize
) -> TransactionValidity
[src]

Checks to see if this is a valid transaction. It returns information on it if so.

fn apply<V: ValidateUnsigned<Call = Self::Call>>(
    self,
    info: &DispatchInfoOf<Self::Call>,
    len: usize
) -> ApplyExtrinsicResultWithInfo<PostDispatchInfoOf<Self::Call>>
[src]

Executes all necessary logic needed prior to dispatch and deconstructs into function call, index and sender.

Loading content...

Implementors

impl<AccountId, Call, Extra, Origin> Applyable for CheckedExtrinsic<AccountId, Call, Extra> where
    AccountId: Member + MaybeDisplay,
    Call: Member + Dispatchable<Origin = Origin>,
    Extra: SignedExtension<AccountId = AccountId, Call = Call>,
    Origin: From<Option<AccountId>>, 
[src]

type Call = Call

impl<Origin, Call, Extra> Applyable for TestXt<Call, Extra> where
    Call: 'static + Sized + Send + Sync + Clone + Eq + Codec + Debug + Dispatchable<Origin = Origin>,
    Extra: SignedExtension<AccountId = u64, Call = Call>,
    Origin: From<Option<u64>>, 
[src]

type Call = Call

fn validate<U: ValidateUnsigned<Call = Self::Call>>(
    &self,
    _source: TransactionSource,
    _info: &DispatchInfoOf<Self::Call>,
    _len: usize
) -> TransactionValidity
[src]

Checks to see if this is a valid transaction. It returns information on it if so.

fn apply<U: ValidateUnsigned<Call = Self::Call>>(
    self,
    info: &DispatchInfoOf<Self::Call>,
    len: usize
) -> ApplyExtrinsicResultWithInfo<PostDispatchInfoOf<Self::Call>>
[src]

Executes all necessary logic needed prior to dispatch and deconstructs into function call, index and sender.

Loading content...