Crate primitives

Available on crate feature evm only.
Expand description

Traits for configuring an EVM specifics.

§Revm features

This crate does not enforce specific revm features such as blst or c-kzg, which are critical for revm’s evm internals, it is the responsibility of the implementer to ensure the proper features are selected.

Modules§

block
Block execution abstraction.
either
Helper type that represents one of two possible executor types
env
Configuration types for EVM environment.
error
Abstraction over EVM errors.
eth
Ethereum EVM implementation.
evm
Abstraction over EVM.
execute
EVM environment configuration. Traits for execution.
metricsmetrics
Executor metrics.
noop
A no operation block executor implementation.
state_changes
State changes that are not related to transactions.
system_calls
System contract call functions.
test_utilstest-utils
test helpers for mocking executor Helpers for testing.
tx
Abstraction of an executable transaction.

Structs§

EthEvm
Ethereum EVM implementation.
EthEvmFactory
Factory producing EthEvm.
EvmEnv
Container type that holds both the configuration and block environment for EVM execution.
NextBlockEnvAttributes
Represents additional attributes required to configure the next block. This is used to configure the next block’s environment ConfigureEvm::next_evm_env and contains fields that can’t be derived from the parent header alone (attributes that are determined by the CL.)

Traits§

ConfigureEvm
A complete configuration of EVM for Reth.
Database
Helper trait to bound [revm::Database::Error] with common requirements.
Evm
An instance of an ethereum virtual machine.
EvmError
Abstraction over errors that can occur during EVM execution.
EvmFactory
A type responsible for creating instances of an ethereum virtual machine given a certain input.
FromRecoveredTx
Helper user-facing trait to allow implementing IntoTxEnv on instances of Recovered.
InspectorFor
Helper trait to bound [Inspector] for a ConfigureEvm.
IntoTxEnv
Trait marking types that can be converted into a transaction environment.
InvalidTxError
Abstraction over transaction validation error.
OnStateHook
A hook that is called after each state change.
TransactionEnv
Abstraction over transaction environment.

Type Aliases§

EvmContextFor
Helper to access EvmFactory::Context for a given ConfigureEvm.
EvmEnvFor
Type alias for EvmEnv for a given ConfigureEvm.
EvmErrorFor
Helper to access EvmFactory::Error for a given ConfigureEvm.
EvmFactoryFor
Helper to access EvmFactory for a given ConfigureEvm.
EvmFor
Helper to access EvmFactory::Evm for a given ConfigureEvm.
ExecutionCtxFor
Helper to access BlockExecutorFactory::ExecutionCtx for a given ConfigureEvm.
HaltReasonFor
Helper to access EvmFactory::HaltReason for a given ConfigureEvm.
SpecFor
Helper to access EvmFactory::Spec for a given ConfigureEvm.
TxEnvFor
Helper to access EvmFactory::Tx for a given ConfigureEvm.