Module evm

Module evm 

Source
Available on crate feature evm only.
Expand description

Re-exported evm types

Modules§

l1
Optimism-specific implementation and utilities for the executor
primitives
Traits for configuring an EVM specifics.
revm
Revm utils and implementations specific to reth.

Structs§

OpBlockAssembler
Block builder for Optimism.
OpBlockExecutionCtx
Context for OP block execution.
OpBlockExecutorFactory
Ethereum block executor factory.
OpEvm
OP EVM implementation.
OpEvmConfig
Optimism-related EVM configuration.
OpEvmFactory
Factory producing OpEvms.
OpNextBlockEnvAttributes
Context relevant for execution of a next block w.r.t OP.
OpRethReceiptBuilder
A builder that operates on op-reth primitive types, specifically OpTransactionSigned and OpReceipt.

Enums§

OpBlockExecutionError
Optimism Block Executor Errors

Traits§

RethL1BlockInfo
An extension trait for L1BlockInfo that allows us to calculate the L1 cost of a transaction based off of the chain spec’s activated hardfork.

Functions§

extract_l1_info
Extracts the L1BlockInfo from the L2 block. The L1 info transaction is always the first transaction in the L2 block.
extract_l1_info_from_tx
Extracts the L1BlockInfo from the L1 info transaction (first transaction) in the L2 block.
parse_l1_info
Parses the input of the first transaction in the L2 block, into L1BlockInfo.
parse_l1_info_tx_bedrock
Parses the calldata of the L1BlockInfo transaction pre-Ecotone hardfork.
parse_l1_info_tx_ecotone
Updates the L1 block values for an Ecotone upgraded chain. Params are packed and passed in as raw msg.data instead of ABI to reduce calldata size. Params are expected to be in the following order:
parse_l1_info_tx_isthmus
Updates the L1 block values for an Isthmus upgraded chain. Params are packed and passed in as raw msg.data instead of ABI to reduce calldata size. Params are expected to be in the following order:
revm_spec
Map the latest active hardfork at the given header to a revm OpSpecId.
revm_spec_by_timestamp_after_bedrock
Returns the revm OpSpecId at the given timestamp.

Type Aliases§

OpExecutorProvider
Helper type with backwards compatible methods to obtain executor providers.