Crate primitives

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.
call
Utilities for dealing with eth_call and adjacent RPC endpoints.
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.
metrics
Executor metrics.
noop
Helpers for testing.
op_revm
Optimism-specific constants, types, and helpers.
overrides
RPC utilities for working with EVM.
precompiles
Helpers for dealing with Precompiles.
revm
Revm is a Rust EVM implementation.
state_changes
State changes that are not related to transactions.
system_calls
System contract call functions.
test_utils
test helpers for mocking executor Helpers for testing.
tracing
Helpers for tracing.
traits
EVM traits.
tx
Transaction abstractions for EVM execution.

Structs§

ErasedError
Erased error type.
EthEvm
Ethereum EVM implementation.
EthEvmFactory
Factory producing EthEvm.
EvmEnv
Container type that holds both the configuration and block environment for EVM execution.
EvmInternals
Helper type exposing hooks into EVM and access to evm internal settings.
NextBlockEnvAttributes
Represents additional attributes required to configure the next block.

Enums§

EvmInternalsError
Errors returned by EvmInternals.

Traits§

ConfigureEngineEvm
ConfigureEvm extension providing methods for executing payloads.
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.
ExecutableTxIterator
Iterator over executable transactions.
FromRecoveredTx
Helper trait for building a transaction environment from a recovered transaction.
FromTxWithEncoded
Helper trait for building a transaction environment from a transaction with its encoded form.
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.
RecoveredTx
Helper trait to abstract over different Recovered<T> implementations.
ToTxEnv
A helper trait to allow implementing IntoTxEnv for types that build transaction environment by cloning data.
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.