Crate reth_chainspec

Source
Expand description

The spec of an Ethereum network

Modules§

arbitrary
Re-export for convenience The Arbitrary trait crate.

Macros§

hardfork
Re-export for convenience Macro that defines different variants of a chain specific enum. See crate::Hardfork as an example.

Structs§

BaseFeeParams
BaseFeeParams contains the config parameters that control block base fee computation
Chain
Either a known NamedChain or a EIP-155 chain ID.
ChainHardforks
Re-export for convenience Ordered list of a chain hardforks that implement Hardfork.
ChainInfo
Current status of the blockchain’s head.
ChainSpec
An Ethereum chain specification.
ChainSpecBuilder
A helper to build custom chain specs
DepositContract
PoS deposit contract details.
DisplayHardforks
Re-export for convenience A container for pretty-printing a list of hardforks.
EnrForkIdEntry
Re-export for convenience Represents a forward-compatible ENR entry for including the forkid in a node record via EIP-868. Forward compatibility is achieved via EIP-8.
EthereumChainHardforks
Re-export for convenience A type allowing to configure activation ForkConditions for a given list of EthereumHardforks.
ForkBaseFeeParams
A type alias to a vector of tuples of Hardfork and BaseFeeParams, sorted by Hardfork activation order. This is used to specify dynamic EIP-1559 parameters for chains like Optimism.
ForkFilter
Re-export for convenience Filter that describes the state of blockchain and can be used to check incoming ForkIds for compatibility.
ForkHash
Re-export for convenience CRC32 hash of all previous forks starting from genesis block.
ForkId
Re-export for convenience A fork identifier as defined by EIP-2124. Serves as the chain compatibility identifier.
ForkTransition
Re-export for convenience Represents a transition from one fork to another
HardforkBlobParams
A container for hardforks that use eip-7804 blobs.
Head
Re-export for convenience Describes the current head block.

Enums§

BaseFeeParamsKind
A wrapper around BaseFeeParams that allows for specifying constant or dynamic EIP-1559 parameters based on the active Hardfork.
ChainKind
The kind of chain. Returned by Chain::kind. Prefer using Chain instead.
EthereumHardfork
Re-export for convenience The name of an Ethereum hardfork.
ForkCondition
Re-export for convenience The condition at which a fork is activated.
ForkFilterKey
Re-export for convenience How to filter forks.
NamedChain
An Ethereum EIP-155 chain.
ValidationError
Re-export for convenience Reason for rejecting provided ForkId.

Constants§

MAINNET_PRUNE_DELETE_LIMIT
Mainnet prune delete limit.
MIN_TRANSACTION_GAS
Gas per transaction not creating a contract.

Statics§

DEV
Dev testnet specification
DEV_HARDFORKS
Re-export for convenience Dev hardforks
HOLESKY
The Holesky spec
MAINNET
The Ethereum mainnet spec
SEPOLIA
The Sepolia spec

Traits§

ChainSpecProvider
A trait for reading the current chainspec.
EthChainSpec
Trait representing type configuring a chain spec.
EthereumHardforks
Re-export for convenience Helper methods for Ethereum forks.
Hardfork
Re-export for convenience Generic hardfork trait.
Hardforks
Re-export for convenience Generic trait over a set of ordered hardforks

Functions§

make_genesis_header
Helper method building a [Header] given [Genesis] and ChainHardforks.
once_cell_set
Simple utility to create a thread-safe sync cell with a value set.
test_fork_idstest-utils
Verifies ChainSpec configuration against expected data in given cases.