pub type Executive = Executive<OuterVerifier, ParachainConstraintChecker>;

Aliased Type§

struct Executive(/* private fields */);

Implementations

source§

impl<V, C> Executive<V, C>
where V: Verifier, C: ConstraintChecker, Block<Header<u32, BlakeTwo256>, Transaction<V, C>>: Block<Extrinsic = Transaction<V, C>, Hash = H256>, Transaction<V, C>: Extrinsic,

source

pub fn validate_tuxedo_transaction( transaction: &Transaction<V, C> ) -> Result<ValidTransaction, UtxoError<<C as ConstraintChecker>::Error>>

Does pool-style validation of a tuxedo transaction. Does not commit anything to storage. This returns Ok even if some inputs are still missing because the tagged transaction pool can handle that. We later check that there are no missing inputs in apply_tuxedo_transaction

source

pub fn apply_tuxedo_transaction( transaction: Transaction<V, C> ) -> Result<(), UtxoError<<C as ConstraintChecker>::Error>>

Does full verification and application of tuxedo transactions. Most of the validation happens in the call to validate_tuxedo_transaction. Once those checks are done we make sure there are no missing inputs and then update storage.

source

pub fn block_height() -> u32

A helper function that allows tuxedo runtimes to read the current block height

source

pub fn open_block(header: &Header<u32, BlakeTwo256>) -> ExtrinsicInclusionMode

source

pub fn apply_extrinsic( extrinsic: Transaction<V, C> ) -> Result<Result<(), DispatchError>, TransactionValidityError>

source

pub fn close_block() -> Header<u32, BlakeTwo256>

source

pub fn execute_block(block: Block<Header<u32, BlakeTwo256>, Transaction<V, C>>)

source

pub fn validate_transaction( source: TransactionSource, tx: Transaction<V, C>, block_hash: <Block<Header<u32, BlakeTwo256>, Transaction<V, C>> as Block>::Hash ) -> Result<ValidTransaction, TransactionValidityError>

source

pub fn inherent_extrinsics(data: InherentData) -> Vec<Transaction<V, C>>

source

pub fn check_inherents( block: Block<Header<u32, BlakeTwo256>, Transaction<V, C>>, data: InherentData ) -> CheckInherentsResult

Trait Implementations

source§

impl<V, C> ParachainExecutiveExtension for Executive<V, C>

source§

fn collect_collation_info(header: &Header<u32, BlakeTwo256>) -> CollationInfo