Struct sp_runtime::transaction_validity::ValidTransaction
source · [−]pub struct ValidTransaction {
pub priority: TransactionPriority,
pub requires: Vec<TransactionTag>,
pub provides: Vec<TransactionTag>,
pub longevity: TransactionLongevity,
pub propagate: bool,
}
Expand description
Information concerning a valid transaction.
Fields
priority: TransactionPriority
Priority of the transaction.
Priority determines the ordering of two transactions that have all their dependencies (required tags) satisfied.
requires: Vec<TransactionTag>
Transaction dependencies
A non-empty list signifies that some other transactions which provide given tags are required to be included before that one.
provides: Vec<TransactionTag>
Provided tags
A list of tags this transaction provides. Successfully importing the transaction will enable other transactions that depend on (require) those tags to be included as well. Provided and required tags allow Substrate to build a dependency graph of transactions and import them in the right (linear) order.
longevity: TransactionLongevity
Transaction longevity
Longevity describes minimum number of blocks the validity is correct. After this period transaction should be removed from the pool or revalidated.
propagate: bool
A flag indicating if the transaction should be propagated to other peers.
By setting false
here the transaction will still be considered for
including in blocks that are authored on the current node, but will
never be sent to other peers.
Implementations
sourceimpl ValidTransaction
impl ValidTransaction
sourcepub fn with_tag_prefix(prefix: &'static str) -> ValidTransactionBuilder
pub fn with_tag_prefix(prefix: &'static str) -> ValidTransactionBuilder
Initiate ValidTransaction
builder object with a particular prefix for tags.
To avoid conflicts between different parts in runtime it’s recommended to build requires
and provides
tags with a unique prefix.
sourcepub fn combine_with(self, other: ValidTransaction) -> Self
pub fn combine_with(self, other: ValidTransaction) -> Self
Combine two instances into one, as a best effort. This will take the superset of each of the
provides
and requires
tags, it will sum the priorities, take the minimum longevity and
the logic And of the propagate flags.
Trait Implementations
sourceimpl Clone for ValidTransaction
impl Clone for ValidTransaction
sourcefn clone(&self) -> ValidTransaction
fn clone(&self) -> ValidTransaction
Returns a copy of the value. Read more
1.0.0 · sourcefn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from source
. Read more
sourceimpl Debug for ValidTransaction
impl Debug for ValidTransaction
sourceimpl Decode for ValidTransaction
impl Decode for ValidTransaction
sourcefn decode<__CodecInputEdqy: Input>(
__codec_input_edqy: &mut __CodecInputEdqy
) -> Result<Self, Error>
fn decode<__CodecInputEdqy: Input>(
__codec_input_edqy: &mut __CodecInputEdqy
) -> Result<Self, Error>
Attempt to deserialise the value from input.
sourcefn skip<I>(input: &mut I) -> Result<(), Error> where
I: Input,
fn skip<I>(input: &mut I) -> Result<(), Error> where
I: Input,
Attempt to skip the encoded value from input. Read more
sourcefn encoded_fixed_size() -> Option<usize>
fn encoded_fixed_size() -> Option<usize>
Returns the fixed encoded size of the type. Read more
sourceimpl Default for ValidTransaction
impl Default for ValidTransaction
sourceimpl Encode for ValidTransaction
impl Encode for ValidTransaction
sourcefn encode_to<__CodecOutputEdqy: Output + ?Sized>(
&self,
__codec_dest_edqy: &mut __CodecOutputEdqy
)
fn encode_to<__CodecOutputEdqy: Output + ?Sized>(
&self,
__codec_dest_edqy: &mut __CodecOutputEdqy
)
Convert self to a slice and append it to the destination.
sourcefn size_hint(&self) -> usize
fn size_hint(&self) -> usize
If possible give a hint of expected size of the encoding. Read more
sourcefn encode(&self) -> Vec<u8, Global>ⓘNotable traits for Vec<u8, A>impl<A> Write for Vec<u8, A> where
A: Allocator,
fn encode(&self) -> Vec<u8, Global>ⓘNotable traits for Vec<u8, A>impl<A> Write for Vec<u8, A> where
A: Allocator,
A: Allocator,
Convert self to an owned vector.
sourcefn using_encoded<R, F>(&self, f: F) -> R where
F: FnOnce(&[u8]) -> R,
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.
sourcefn encoded_size(&self) -> usize
fn encoded_size(&self) -> usize
Calculates the encoded size. Read more
sourceimpl From<ValidTransactionBuilder> for ValidTransaction
impl From<ValidTransactionBuilder> for ValidTransaction
sourcefn from(builder: ValidTransactionBuilder) -> Self
fn from(builder: ValidTransactionBuilder) -> Self
Performs the conversion.
sourceimpl PartialEq<ValidTransaction> for ValidTransaction
impl PartialEq<ValidTransaction> for ValidTransaction
sourcefn eq(&self, other: &ValidTransaction) -> bool
fn eq(&self, other: &ValidTransaction) -> bool
This method tests for self
and other
values to be equal, and is used
by ==
. Read more
sourcefn ne(&self, other: &ValidTransaction) -> bool
fn ne(&self, other: &ValidTransaction) -> bool
This method tests for !=
.
impl EncodeLike<ValidTransaction> for ValidTransaction
impl Eq for ValidTransaction
impl StructuralEq for ValidTransaction
impl StructuralPartialEq for ValidTransaction
Auto Trait Implementations
impl RefUnwindSafe for ValidTransaction
impl Send for ValidTransaction
impl Sync for ValidTransaction
impl Unpin for ValidTransaction
impl UnwindSafe for ValidTransaction
Blanket Implementations
sourceimpl<T> BorrowMut<T> for T where
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
const: unstable · sourcepub fn borrow_mut(&mut self) -> &mut T
pub fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
sourceimpl<T> CheckedConversion for T
impl<T> CheckedConversion for T
sourcefn checked_from<T>(t: T) -> Option<Self> where
Self: TryFrom<T>,
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
sourcefn checked_into<T>(self) -> Option<T> where
Self: TryInto<T>,
fn checked_into<T>(self) -> Option<T> where
Self: TryInto<T>,
Consume self to return Some
equivalent value of Option<T>
. Read more
sourceimpl<T> DecodeLimit for T where
T: Decode,
impl<T> DecodeLimit for T where
T: Decode,
sourceimpl<T> Instrument for T
impl<T> Instrument for T
sourcefn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Instruments this type with the provided Span
, returning an
Instrumented
wrapper. Read more
sourcefn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
sourceimpl<T, Outer> IsWrappedBy<Outer> for T where
Outer: AsRef<T> + AsMut<T> + From<T>,
T: From<Outer>,
impl<T, Outer> IsWrappedBy<Outer> for T where
Outer: AsRef<T> + AsMut<T> + From<T>,
T: From<Outer>,
sourceimpl<T> SaturatedConversion for T
impl<T> SaturatedConversion for T
sourcefn saturated_from<T>(t: T) -> Self where
Self: UniqueSaturatedFrom<T>,
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
sourcefn saturated_into<T>(self) -> T where
Self: UniqueSaturatedInto<T>,
fn saturated_into<T>(self) -> T where
Self: UniqueSaturatedInto<T>,
Consume self to return an equivalent value of T
. Read more
sourceimpl<T> ToOwned for T where
T: Clone,
impl<T> ToOwned for T where
T: Clone,
type Owned = T
type Owned = T
The resulting type after obtaining ownership.
sourcepub fn to_owned(&self) -> T
pub fn to_owned(&self) -> T
Creates owned data from borrowed data, usually by cloning. Read more
sourcepub fn clone_into(&self, target: &mut T)
pub fn clone_into(&self, target: &mut T)
toowned_clone_into
)Uses borrowed data to replace owned data, usually by cloning. Read more
sourceimpl<S, T> UncheckedInto<T> for S where
T: UncheckedFrom<S>,
impl<S, T> UncheckedInto<T> for S where
T: UncheckedFrom<S>,
sourcepub fn unchecked_into(self) -> T
pub fn unchecked_into(self) -> T
The counterpart to unchecked_from
.
sourceimpl<T, S> UniqueSaturatedInto<T> for S where
T: Bounded,
S: TryInto<T>,
impl<T, S> UniqueSaturatedInto<T> for S where
T: Bounded,
S: TryInto<T>,
sourcepub fn unique_saturated_into(self) -> T
pub fn unique_saturated_into(self) -> T
Consume self to return an equivalent value of T
.