Trait InspectCommitEvm

Source
pub trait InspectCommitEvm: InspectEvm + ExecuteCommitEvm {
    // Required method
    fn inspect_replay_commit(&mut self) -> Self::CommitOutput;

    // Provided methods
    fn inspect_replay_commit_with_inspector(
        &mut self,
        inspector: Self::Inspector,
    ) -> Self::CommitOutput { ... }
    fn inspect_replay_with_inspector(
        &mut self,
        inspector: Self::Inspector,
    ) -> Self::CommitOutput { ... }
    fn inspect_commit(
        &mut self,
        tx: Self::Tx,
        inspector: Self::Inspector,
    ) -> Self::CommitOutput { ... }
}
Expand description

InspectCommitEvm is a API that allows inspecting similar to InspectEvm but it has functions that commit the state diff to the database.

Functions return CommitOutput from ExecuteCommitEvm trait.

Required Methods§

Source

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

Inspect the EVM with the current inspector and previous transaction, similar to InspectEvm::inspect_replay and commit the state diff to the database.

Provided Methods§

Source

fn inspect_replay_commit_with_inspector( &mut self, inspector: Self::Inspector, ) -> Self::CommitOutput

Inspects commit with the given inspector and previous transaction, similar to InspectEvm::inspect_replay_with_inspector and commit the state diff to the database.

Source

fn inspect_replay_with_inspector( &mut self, inspector: Self::Inspector, ) -> Self::CommitOutput

Inspect the EVM with the current inspector and previous transaction by replaying,similar to InspectEvm::inspect_replay_with_inspector and commit the state diff to the database.

Source

fn inspect_commit( &mut self, tx: Self::Tx, inspector: Self::Inspector, ) -> Self::CommitOutput

Inspect the EVM with the given transaction and inspector similar to InspectEvm::inspect and commit the state diff to the database.

Implementations on Foreign Types§

Source§

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

Implementors§