Skip to main content

Crate reth_evm

Crate reth_evm 

Source
Expand description

Traits for configuring EVM specifics.

Re-exports§

pub use execute::BlockAssembler;
pub use execute::BlockAssemblerInput;
pub use execute::BlockBuilder;
pub use execute::BlockBuilderOutcome;
pub use execute::BlockExecutor;
pub use execute::BlockExecutorFactory;
pub use execute::Evm;
pub use execute::ExecutableTxFor;
pub use execute::ExecutableTxParts;
pub use execute::Executor;
pub use execute::ExecutorTx;
pub use execute::FromRecoveredTx;
pub use execute::FromTxWithEncoded;
pub use execute::IntoTxEnv;
pub use execute::ReceiptBuilder;
pub use execute::RecoveredTx;
pub use execute::TransactionEnvMut;
pub use execute::WithTxEnv;

Modules§

cached
Cached database adapters for payload building. Database adapters for payload building.
database
Database adapters for EVM execution. State provider database adapter used by EVM execution.
either
Helper type that represents one of two possible executor types
execute
EVM environment configuration. Traits for execution.
metricsmetrics
Executor metrics.
noop
Helpers for testing.
precompile_cachestd
precompile cache provider. Precompile cache for payload prewarming.
witnesswitness
Helper types for execution witness generation.

Macros§

debug_unreachable
Marks a branch as unreachable in optimized builds while checking it in debug builds.

Structs§

BlockExecutionOutput
[BlockExecutionResult] combined with state.
BundleState
Bundle state contain only values that got changed
EvmTransactionValidationGas
Transaction validation gas resolved for a transaction.
EvmTransactionValidationGasRules
Transaction validation gas rules resolved for an EVM environment.
EvmTransactionValidationLimits
Transaction validation limits resolved for an EVM environment.
GasOutput
Gas used by a successfully executed transaction.
NextBlockEnvAttributes
Represents additional attributes required to configure the next block.
ReceiptBuilderCtx
Context for building a transaction receipt from an execution result.
SenderRecoveryCache
Shared cache of recovered transaction senders.
StateUpdate
Per-transaction state changes streamed to execution state hooks.

Enums§

BlockExecutionError
Block executor errors.
BlockValidationError
Block validation error.
CommitChanges
Whether a block executor commits an executed transaction.
InternalBlockExecutionError
Internal, i.e. not validation or consensus related, block executor errors.

Traits§

BlockTransactionResult
A detached block transaction output containing its raw execution result.
ConfigureEngineEvmstd
ConfigureEvm extension providing methods for executing payloads.
ConfigureEvm
A complete configuration of EVM for Reth.
ConvertTxstd
Converts a raw transaction into an executable transaction.
Database
Backing database implementation with a concrete error type.
DynDatabase
Backing database view used to initialize mutable [super::State].
EvmEnv
Resolved EVM environment data needed by the EVM execution path.
ExecutableTxIteratorstd
Iterator over executable transactions.
ExecutableTxTuplestd
A helper trait representing a pair of a “raw” transactions iterator and a closure that can be used to convert them to an executable transaction. This tuple is used in the engine to parallelize heavy work like decoding or recovery.
InvalidTxError
Abstraction over transaction validation errors.
JitBackend
JIT backend controls exposed by an EVM configuration.
OnStateHook
Receives per-transaction state changes streamed from block execution.

Type Aliases§

BlockExecutorForstd
Helper to access the configured block executor.
EvmEnvFor
Type alias for the configured EVM environment.
EvmFactoryFor
Helper to access the configured EVM factory state.
EvmForstd
Type alias for the configured EVM instance.
EvmTypesFor
Type alias for the configured runtime EVM type family.
ExecutionCtxFor
Helper to access the configured execution context.
SpecFor
Type alias for the configured runtime specification identifier.
TxEnvFor
Type alias for the configured transaction environment.
TxExecutionResultForstd
Detached transaction result accepted by the configured block executor.
TxResultWithStateFor
Type alias for a configured EVM transaction result with detached state changes.