pub trait Executor<Database>: Send + Sync {
    // Required methods
    fn execute_without_commit(
        &self,
        block: ExecutionBlock
    ) -> ExecutorResult<UncommittedResult<StorageTransaction<Database>>>;
    fn dry_run(
        &self,
        block: ExecutionBlock,
        utxo_validation: Option<bool>
    ) -> ExecutorResult<Vec<Vec<Receipt>>>;
}

Required Methods§

source

fn execute_without_commit( &self, block: ExecutionBlock ) -> ExecutorResult<UncommittedResult<StorageTransaction<Database>>>

Executes the block and returns the result of execution with uncommitted database transaction.

source

fn dry_run( &self, block: ExecutionBlock, utxo_validation: Option<bool> ) -> ExecutorResult<Vec<Vec<Receipt>>>

Executes the block without committing it to the database. During execution collects the receipts to return them. The utxo_validation field can be used to disable the validation of utxos during execution.

Implementors§