Trait VMExecutor

Source
pub trait VMExecutor: Send {
    // Required method
    fn execute_block(
        transactions: Vec<Transaction>,
        state_view: &dyn StateView,
        catch_up_mode: bool,
    ) -> Result<Vec<TransactionOutput>, VMStatus>;
}
Expand description

This trait describes the VM’s execution interface.

Required Methods§

Source

fn execute_block( transactions: Vec<Transaction>, state_view: &dyn StateView, catch_up_mode: bool, ) -> Result<Vec<TransactionOutput>, VMStatus>

Executes a block of transactions and returns output for each one of them.

Dyn Compatibility§

This trait is not dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.

Implementors§