Skip to main content

Crate core

Crate core 

Source
Expand description

§foundry-evm-core

Generic execution, environment, fork, backend, and state abstractions shared by Foundry tools.

evm::FoundryEvmNetwork binds an Alloy network to an evm::FoundryEvmFactory. The factory owns the concrete execution types and constructs a Foundry-compatible EVM context, while foundry-evm-networks owns runtime family selection. Keeping those responsibilities separate allows one compiled binary to dispatch to different execution families at runtime.

Modules§

abi
backend
Foundry’s main executor backend abstraction and implementation.
buffer
bytecode
constants
decode
Various utilities to decode test results.
eip2935
EIP-2935 history storage helpers.
env
evm
fork
hardfork
ic
opts
precompiles
state_snapshot
Support for snapshotting different states
tempo
Tempo precompile and contract initialization for Foundry.
utils

Structs§

EvmEnv
Container type that holds both the configuration and block environment for EVM execution.

Traits§

FoundryBlock
Extension of Block with mutable setters, allowing EVM-agnostic mutation of block fields.
FoundryChain
Foundry extension for chain context type
FoundryContextExt
Extension trait providing mutable field access to block, tx, and cfg environments.
FoundryInspectorExt
A combined inspector trait that integrates revm’s Inspector with Foundry-specific extensions. Automatically implemented for any type that implements both Inspector<CTX> and InspectorExt.
FoundryJournal
Foundry extension for Journal type
FoundryTransaction
Extension of Transaction with mutable setters, allowing EVM-agnostic mutation of transaction fields.
FromAnyRpcTransaction
Trait for converting an [AnyRpcTransaction] into a specific TxEnv.
InspectorExt
Foundry-specific inspector methods, decoupled from any particular EVM context type.

Functions§

refresh_chain_journal
Refreshes journal state derived from a context’s active chain position.

Type Aliases§

Breakpoints
Map keyed by breakpoints char to their location (contract address, pc)