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§
Sourcefn execute_block(
transactions: Vec<Transaction>,
state_view: &dyn StateView,
catch_up_mode: bool,
) -> Result<Vec<TransactionOutput>, VMStatus>
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.