pub(crate) fn commit_transaction<InspectorT, BlockT, TxT, CfgT, 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> + GetInspector<Context<BlockT, TxT, CfgT, InMemoryDB, Backend>, EthInterpreter>,
BlockT: Block,
TxT: Transaction,
CfgT: Cfg,
PrecompileT: PrecompileProvider<Context = InspectorContext<InspectorT, InMemoryDB, Context<BlockT, TxT, CfgT, InMemoryDB, Backend>>, Output = InterpreterResult, Error = EVMError<Infallible, InvalidTransaction>>,
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