pub struct ExecutableTransaction { /* private fields */ }
Expand description
This is an executable form of the transaction, post stateless validation.
An &ExecutableTransaction
is used to execute in the engine.
Implementations§
Source§impl ExecutableTransaction
impl ExecutableTransaction
pub fn new_v1( encoded_instructions_v1: Vec<u8>, auth_zone_init: AuthZoneInit, references: IndexSet<Reference>, blobs: IndexMap<Hash, Vec<u8>>, context: ExecutionContext, ) -> ExecutableTransaction
pub fn new_v2( transaction_intent: ExecutableIntent, subintents: Vec<ExecutableIntent>, context: ExecutionContext, ) -> ExecutableTransaction
pub fn skip_epoch_range_check(self) -> ExecutableTransaction
pub fn skip_intent_hash_nullification(self) -> ExecutableTransaction
pub fn apply_free_credit( self, free_credit_in_xrd: Decimal, ) -> ExecutableTransaction
pub fn unique_hash(&self) -> &Hash
pub fn overall_epoch_range(&self) -> Option<&EpochRange>
pub fn overall_proposer_timestamp_range( &self, ) -> Option<&ProposerTimestampRange>
pub fn costing_parameters(&self) -> &TransactionCostingParameters
pub fn pre_allocated_addresses(&self) -> &[PreAllocatedAddress]
pub fn payload_size(&self) -> usize
pub fn num_of_signature_validations(&self) -> usize
pub fn disable_limits_and_costing_modules(&self) -> bool
pub fn transaction_intent(&self) -> &ExecutableIntent
pub fn subintents(&self) -> &[ExecutableIntent]
pub fn all_intents(&self) -> impl Iterator<Item = &ExecutableIntent>
pub fn intent_hash_nullifications(&self) -> &[IntentHashNullification]
pub fn all_blob_hashes(&self) -> IndexSet<Hash>
pub fn all_references(&self) -> IndexSet<Reference>
Trait Implementations§
Source§impl AsRef<ExecutableTransaction> for ExecutableTransaction
impl AsRef<ExecutableTransaction> for ExecutableTransaction
Source§fn as_ref(&self) -> &ExecutableTransaction
fn as_ref(&self) -> &ExecutableTransaction
Converts this type into a shared reference of the (usually inferred) input type.
Source§impl Clone for ExecutableTransaction
impl Clone for ExecutableTransaction
Source§fn clone(&self) -> ExecutableTransaction
fn clone(&self) -> ExecutableTransaction
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 Debug for ExecutableTransaction
impl Debug for ExecutableTransaction
Source§impl IntoExecutable for ExecutableTransaction
impl IntoExecutable for ExecutableTransaction
type Error = Infallible
fn into_executable( self, _validator: &TransactionValidator, ) -> Result<ExecutableTransaction, <ExecutableTransaction as IntoExecutable>::Error>
Source§fn into_executable_unwrap(self) -> ExecutableTransactionwhere
Self: Sized,
fn into_executable_unwrap(self) -> ExecutableTransactionwhere
Self: Sized,
For use in tests as a quick mechanism to get an executable.
Validates with a network-independent validator, using the latest settings.
Source§impl PartialEq for ExecutableTransaction
impl PartialEq for ExecutableTransaction
Source§impl UniqueSeed for ExecutableTransaction
impl UniqueSeed for ExecutableTransaction
fn unique_seed_for_id_allocator(&self) -> Hash
impl Eq for ExecutableTransaction
impl StructuralPartialEq for ExecutableTransaction
Auto Trait Implementations§
impl Freeze for ExecutableTransaction
impl RefUnwindSafe for ExecutableTransaction
impl Send for ExecutableTransaction
impl Sync for ExecutableTransaction
impl Unpin for ExecutableTransaction
impl UnwindSafe for ExecutableTransaction
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> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T, U> ContextualTryInto<U> for Twhere
U: ContextualTryFrom<T>,
impl<T, U> ContextualTryInto<U> for Twhere
U: ContextualTryFrom<T>,
type Error = <U as ContextualTryFrom<T>>::Error
type Context = <U as ContextualTryFrom<T>>::Context
fn contextual_try_into( self, context: &<U as ContextualTryFrom<T>>::Context, ) -> Result<U, <U as ContextualTryFrom<T>>::Error>
Source§impl<T> Downcast for Twhere
T: Any,
impl<T> Downcast for Twhere
T: Any,
Source§fn into_any(self: Box<T>) -> Box<dyn Any>
fn into_any(self: Box<T>) -> Box<dyn Any>
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
.Source§fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
Convert
Rc<Trait>
(where Trait: Downcast
) to Rc<Any>
. Rc<Any>
can then be
further downcast
into Rc<ConcreteType>
where ConcreteType
implements Trait
.Source§fn as_any(&self) -> &(dyn Any + 'static)
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.Source§fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
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.Source§impl<T> DowncastSync for T
impl<T> DowncastSync for T
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
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§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<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 more