Function reth_evm::system_calls::transact_blockhashes_contract_call

source ยท
pub fn transact_blockhashes_contract_call<EvmConfig, EXT, DB>(
    evm_config: &EvmConfig,
    chain_spec: &ChainSpec,
    block_timestamp: u64,
    block_number: u64,
    parent_block_hash: B256,
    evm: &mut Evm<'_, EXT, DB>,
) -> Result<Option<ResultAndState>, BlockExecutionError>
where DB: Database + DatabaseCommit, DB::Error: Display, EvmConfig: ConfigureEvm<Header = Header>,
Expand description

Applies the pre-block call to the EIP-2935 blockhashes contract, using the given block, [ChainSpec], and EVM.

If Prague is not activated, or the block is the genesis block, then this is a no-op, and no state changes are made.

Note: this does not commit the state changes to the database, it only transact the call.

Returns None if Prague is not active or the block is the genesis block, otherwise returns the result of the call.