pub struct CheckedExtrinsic<AccountId, Call, Extension> {
pub format: ExtrinsicFormat<AccountId, Extension>,
pub function: Call,
}Expand description
Definition of something that the external world might want to say; its existence implies that it has been checked and is good, particularly with regards to the signature.
This is typically passed into traits::Applyable::apply, which should execute
CheckedExtrinsic::function, alongside all other bits and bobs.
Fields§
§format: ExtrinsicFormat<AccountId, Extension>Who this purports to be from and the number of extrinsics have come before from the same signer, if anyone (note this is not a signature).
function: CallThe function that should be called.
Implementations§
Source§impl<AccountId, Call, Extension> CheckedExtrinsic<AccountId, Call, Extension>where
Call: Dispatchable,
Extension: TransactionExtension<Call>,
impl<AccountId, Call, Extension> CheckedExtrinsic<AccountId, Call, Extension>where
Call: Dispatchable,
Extension: TransactionExtension<Call>,
Sourcepub fn extension_weight(&self) -> Weight
pub fn extension_weight(&self) -> Weight
Returns the weight of the extension of this transaction, if present. If the transaction doesn’t use any extension, the weight returned is equal to zero.
Trait Implementations§
Source§impl<AccountId, Call, Extension, RuntimeOrigin> Applyable for CheckedExtrinsic<AccountId, Call, Extension>where
AccountId: Member + MaybeDisplay,
Call: Member + Dispatchable<RuntimeOrigin = RuntimeOrigin> + Encode,
Extension: TransactionExtension<Call>,
RuntimeOrigin: From<Option<AccountId>> + AsTransactionAuthorizedOrigin,
impl<AccountId, Call, Extension, RuntimeOrigin> Applyable for CheckedExtrinsic<AccountId, Call, Extension>where
AccountId: Member + MaybeDisplay,
Call: Member + Dispatchable<RuntimeOrigin = RuntimeOrigin> + Encode,
Extension: TransactionExtension<Call>,
RuntimeOrigin: From<Option<AccountId>> + AsTransactionAuthorizedOrigin,
Source§fn validate<I>(
&self,
source: TransactionSource,
info: &<<CheckedExtrinsic<AccountId, Call, Extension> as Applyable>::Call as Dispatchable>::Info,
len: usize,
) -> Result<ValidTransaction, TransactionValidityError>where
I: ValidateUnsigned<Call = <CheckedExtrinsic<AccountId, Call, Extension> as Applyable>::Call>,
fn validate<I>(
&self,
source: TransactionSource,
info: &<<CheckedExtrinsic<AccountId, Call, Extension> as Applyable>::Call as Dispatchable>::Info,
len: usize,
) -> Result<ValidTransaction, TransactionValidityError>where
I: ValidateUnsigned<Call = <CheckedExtrinsic<AccountId, Call, Extension> as Applyable>::Call>,
Checks to see if this is a valid transaction. It returns information on it if so. Read more
Source§fn apply<I>(
self,
info: &<<CheckedExtrinsic<AccountId, Call, Extension> as Applyable>::Call as Dispatchable>::Info,
len: usize,
) -> Result<Result<<<CheckedExtrinsic<AccountId, Call, Extension> as Applyable>::Call as Dispatchable>::PostInfo, DispatchErrorWithPostInfo<<<CheckedExtrinsic<AccountId, Call, Extension> as Applyable>::Call as Dispatchable>::PostInfo>>, TransactionValidityError>where
I: ValidateUnsigned<Call = <CheckedExtrinsic<AccountId, Call, Extension> as Applyable>::Call>,
fn apply<I>(
self,
info: &<<CheckedExtrinsic<AccountId, Call, Extension> as Applyable>::Call as Dispatchable>::Info,
len: usize,
) -> Result<Result<<<CheckedExtrinsic<AccountId, Call, Extension> as Applyable>::Call as Dispatchable>::PostInfo, DispatchErrorWithPostInfo<<<CheckedExtrinsic<AccountId, Call, Extension> as Applyable>::Call as Dispatchable>::PostInfo>>, TransactionValidityError>where
I: ValidateUnsigned<Call = <CheckedExtrinsic<AccountId, Call, Extension> as Applyable>::Call>,
Executes all necessary logic needed prior to dispatch and deconstructs into function call,
index and sender. Read more
Source§impl<AccountId, Call, Extension> Clone for CheckedExtrinsic<AccountId, Call, Extension>
impl<AccountId, Call, Extension> Clone for CheckedExtrinsic<AccountId, Call, Extension>
Source§fn clone(&self) -> CheckedExtrinsic<AccountId, Call, Extension>
fn clone(&self) -> CheckedExtrinsic<AccountId, Call, Extension>
Returns a duplicate of the value. Read more
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl<AccountId, Call, Extension> Debug for CheckedExtrinsic<AccountId, Call, Extension>
impl<AccountId, Call, Extension> Debug for CheckedExtrinsic<AccountId, Call, Extension>
Source§impl<AccountId, Call, Extension: TransactionExtension<Call>> GetDispatchInfo for CheckedExtrinsic<AccountId, Call, Extension>where
Call: GetDispatchInfo + Dispatchable,
Implementation for checked extrinsic.
impl<AccountId, Call, Extension: TransactionExtension<Call>> GetDispatchInfo for CheckedExtrinsic<AccountId, Call, Extension>where
Call: GetDispatchInfo + Dispatchable,
Implementation for checked extrinsic.
Source§fn get_dispatch_info(&self) -> DispatchInfo
fn get_dispatch_info(&self) -> DispatchInfo
Return a
DispatchInfo, containing relevant information of this dispatch. Read moreSource§impl<AccountId, Call, Extension> PartialEq for CheckedExtrinsic<AccountId, Call, Extension>
impl<AccountId, Call, Extension> PartialEq for CheckedExtrinsic<AccountId, Call, Extension>
Source§fn eq(&self, other: &CheckedExtrinsic<AccountId, Call, Extension>) -> bool
fn eq(&self, other: &CheckedExtrinsic<AccountId, Call, Extension>) -> bool
Tests for
self and other values to be equal, and is used by ==.impl<AccountId, Call, Extension> Eq for CheckedExtrinsic<AccountId, Call, Extension>
impl<AccountId, Call, Extension> StructuralPartialEq for CheckedExtrinsic<AccountId, Call, Extension>
Auto Trait Implementations§
impl<AccountId, Call, Extension> Freeze for CheckedExtrinsic<AccountId, Call, Extension>
impl<AccountId, Call, Extension> RefUnwindSafe for CheckedExtrinsic<AccountId, Call, Extension>
impl<AccountId, Call, Extension> Send for CheckedExtrinsic<AccountId, Call, Extension>
impl<AccountId, Call, Extension> Sync for CheckedExtrinsic<AccountId, Call, Extension>
impl<AccountId, Call, Extension> Unpin for CheckedExtrinsic<AccountId, Call, Extension>
impl<AccountId, Call, Extension> UnsafeUnpin for CheckedExtrinsic<AccountId, Call, Extension>
impl<AccountId, Call, Extension> UnwindSafe for CheckedExtrinsic<AccountId, Call, Extension>
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
Source§impl<T> CheckedConversion for T
impl<T> CheckedConversion for T
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T, U> DefensiveTruncateInto<U> for Twhere
U: DefensiveTruncateFrom<T>,
impl<T, U> DefensiveTruncateInto<U> for Twhere
U: DefensiveTruncateFrom<T>,
Source§fn defensive_truncate_into(self) -> U
fn defensive_truncate_into(self) -> U
Defensively truncate a value and convert it into its bounded form.
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Compare self to
key and return true if they are equal.Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
Source§fn in_current_span(self) -> Instrumented<Self> ⓘ
fn in_current_span(self) -> Instrumented<Self> ⓘ
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§impl<Src, Dest> IntoTuple<Dest> for Srcwhere
Dest: FromTuple<Src>,
impl<Src, Dest> IntoTuple<Dest> for Srcwhere
Dest: FromTuple<Src>,
fn into_tuple(self) -> Dest
Source§impl<T, Outer> IsWrappedBy<Outer> for T
impl<T, Outer> IsWrappedBy<Outer> for T
Source§impl<T> SaturatedConversion for T
impl<T> SaturatedConversion for T
Source§fn saturated_from<T>(t: T) -> Selfwhere
Self: UniqueSaturatedFrom<T>,
fn saturated_from<T>(t: T) -> Selfwhere
Self: UniqueSaturatedFrom<T>,
Source§fn saturated_into<T>(self) -> Twhere
Self: UniqueSaturatedInto<T>,
fn saturated_into<T>(self) -> Twhere
Self: UniqueSaturatedInto<T>,
Consume self to return an equivalent value of
T. Read moreSource§impl<T, U> TryIntoKey<U> for Twhere
U: TryFromKey<T>,
impl<T, U> TryIntoKey<U> for Twhere
U: TryFromKey<T>,
type Error = <U as TryFromKey<T>>::Error
fn try_into_key(self) -> Result<U, <U as TryFromKey<T>>::Error>
Source§impl<S, T> UncheckedInto<T> for Swhere
T: UncheckedFrom<S>,
impl<S, T> UncheckedInto<T> for Swhere
T: UncheckedFrom<S>,
Source§fn unchecked_into(self) -> T
fn unchecked_into(self) -> T
The counterpart to
unchecked_from.Source§impl<T, S> UniqueSaturatedInto<T> for S
impl<T, S> UniqueSaturatedInto<T> for S
Source§fn unique_saturated_into(self) -> T
fn unique_saturated_into(self) -> T
Consume self to return an equivalent value of
T.