pub(crate) fn commit_transaction<InspectorT, BlockT, TxT, CfgT, InstructionProviderT, PrecompileT>(
backend: &mut Backend,
env: Env<BlockT, TxT, CfgT>,
inspector: InspectorT,
) -> Result<(), EVMError<Infallible, InvalidTransaction>>where
InspectorT: Inspector<Context<BlockT, TxT, CfgT, InMemoryDB, Backend>, EthInterpreter>,
BlockT: Block,
TxT: Transaction,
CfgT: Cfg,
InstructionProviderT: InstructionProvider<Context = Context<BlockT, TxT, CfgT, InMemoryDB, Backend>, InterpreterTypes = EthInterpreter> + Default,
PrecompileT: PrecompileProvider<Context<BlockT, TxT, CfgT, InMemoryDB, Backend>, Output = InterpreterResult> + Default,
Expand description
Executes a transaction and runs the inspector using the Backend
as the state.
Mimics commit_transaction
https://github.com/foundry-rs/foundry/blob/25cc1ac68b5f6977f23d713c01ec455ad7f03d21/crates/evm/core/src/backend/mod.rs#L1931