Trait ExecuteCommitEvm

Source
pub trait ExecuteCommitEvm: ExecuteEvm {
    type CommitOutput;

    // Required method
    fn replay_commit(&mut self) -> Self::CommitOutput;

    // Provided method
    fn transact_commit(&mut self, tx: Self::Tx) -> Self::CommitOutput { ... }
}
Expand description

Extension of the ExecuteEvm trait that adds a method that commits the state after execution.

Required Associated Types§

Source

type CommitOutput

Commit output of transaction execution.

Required Methods§

Source

fn replay_commit(&mut self) -> Self::CommitOutput

Transact the transaction and commit to the state.

Provided Methods§

Source

fn transact_commit(&mut self, tx: Self::Tx) -> Self::CommitOutput

Transact the transaction and commit to the state.

Implementations on Foreign Types§

Source§

impl<CTX, INSP, INST, PRECOMPILES> ExecuteCommitEvm for Evm<CTX, INSP, INST, PRECOMPILES>
where CTX: ContextTr<Journal: JournalTr<FinalOutput = JournalOutput>, Db: DatabaseCommit> + ContextSetters, INST: InstructionProvider<Context = CTX, InterpreterTypes = EthInterpreter>, PRECOMPILES: PrecompileProvider<CTX, Output = InterpreterResult>,

Source§

type CommitOutput = Result<ExecutionResult, EVMError<<<CTX as ContextTr>::Db as Database>::Error>>

Source§

fn replay_commit(&mut self) -> Self::CommitOutput

Implementors§