refactor: simplify SystemCaller API (#14578)

This commit is contained in:
Arsenii Kulikov
2025-02-19 14:08:49 +04:00
committed by GitHub
parent 849c04cb34
commit e92cf35ac9
11 changed files with 81 additions and 217 deletions

View File

@ -78,8 +78,7 @@ where
// Setup EVM
let mut evm = self.evm_config.evm_for_block(&mut db, block.header());
let mut system_caller =
SystemCaller::new(self.evm_config.clone(), self.provider.chain_spec());
let mut system_caller = SystemCaller::new(self.provider.chain_spec());
// Apply pre-block system contract calls.
system_caller.apply_pre_execution_changes(block.header(), &mut evm)?;

View File

@ -293,14 +293,10 @@ where
let mut evm = evm_config.evm_for_block(&mut state, &reorg_target.header);
// apply eip-4788 pre block contract call
let mut system_caller = SystemCaller::new(evm_config.clone(), chain_spec.clone());
let mut system_caller = SystemCaller::new(chain_spec.clone());
system_caller.apply_beacon_root_contract_call(
reorg_target.timestamp,
reorg_target.number,
reorg_target.parent_beacon_block_root,
&mut evm,
)?;
system_caller
.apply_beacon_root_contract_call(reorg_target.parent_beacon_block_root, &mut evm)?;
let mut cumulative_gas_used = 0;
let mut sum_blob_gas_used = 0;