pub trait ExecutionCorrectness: Send {
    // Required methods
    fn committed_block_id(&self) -> Result<HashValue, Error>;
    fn reset(&self) -> Result<(), Error>;
    fn execute_block(
        &self,
        block: Block,
        parent_block_id: HashValue
    ) -> Result<StateComputeResult, Error>;
    fn commit_blocks(
        &self,
        block_ids: Vec<HashValue>,
        ledger_info_with_sigs: LedgerInfoWithSignatures
    ) -> Result<(), Error>;
}
Expand description

Interface for ExecutionCorrectness. It is basically the same as BlockExecutor except some interfaces will return signature with result.

Required Methods§

source

fn committed_block_id(&self) -> Result<HashValue, Error>

source

fn reset(&self) -> Result<(), Error>

source

fn execute_block( &self, block: Block, parent_block_id: HashValue ) -> Result<StateComputeResult, Error>

Executes a block.

source

fn commit_blocks( &self, block_ids: Vec<HashValue>, ledger_info_with_sigs: LedgerInfoWithSignatures ) -> Result<(), Error>

Implementors§