Expand description
Re-exported from reth_provider
.
Modules§
- Bundle state module. This module contains all the logic related to bundle state.
- Commonly used error types used when interacting with storage.
- Various noop implementations for traits.
- Provider trait implementations.
- serde_
bincode_ compat serde-bincode-compat
Bincode-compatible serde implementations for commonly used types for (EVM) block execution. - test_
utils test-utils
Common test helpers for mocking the Provider. - Writer standalone type.
Structs§
- The output of an ethereum block.
- Used to hold receipts and their attachment.
- A Stream of
CanonStateNotification
. - A chain of blocks and their final state.
- All blocks in the chain
- Represents a changed account
- A provider struct that fetches data from the database. Wrapper around [
DbTx
] and [DbTxMut
]. Example:HeaderProvider
BlockHashReader
- A
DatabaseProvider
that holds a read-write database transaction. - Wrapper type for
blocks
display inChain
- Ethereum storage implementation.
- Represents the outcome of block execution, including post-execution changes and reverts.
- Represents a gap to sync: from
local_head
totarget
- State provider for a given block number. For more detailed description, see
HistoricalStateProviderRef
. - State provider for a given block number which takes a tx reference.
- State provider for the latest state.
- State provider over latest state that takes tx reference.
- A common provider that fetches data from a database or static file.
Enums§
- A helper enum that represents the origin of the requested block.
- A notification that is sent when a new block is imported, or an old block is reverted.
- Result of a split chain.
- The target block where the chain should be split.
- Option for
BundleState
when converting it to the plain state. - Bundled errors variants thrown by various providers.
- Access mode on a static file provider. RO/RW.
- An enum that represents the storage location for a piece of data.
- Enum to control transaction hash inclusion.
Traits§
- Account reader
- Account reader
- Client trait for fetching block body indices related data.
- Trait that implements how block bodies are read from the storage.
- Trait that implements how block bodies are written to the storage.
- Fork data needed for execution on it.
BlockExecution
Writer- Client trait for fetching block hashes by number.
- Client trait for transforming
BlockId
into block numbers or hashes. - Client trait for getting important block numbers (such as the latest block number), converting block hashes to numbers, and fetching a block hash from its block number.
- Api trait for fetching
Block
related data. - Trait extension for
BlockReader
, for types that implementBlockId
conversion. - Block Writer
- Blockchain trait provider that gives access to the blockchain state that is not yet committed (pending).
- A type that can track updates related to fork choice updates.
- A type that allows to register chain related event subscriptions.
- A trait for reading the current chainspec.
- Functionality to read the last known chain blocks from the database.
- Functionality to write the last known chain blocks to the database.
- Trait that implements how chain-specific types are read from storage.
- Trait that implements how chain-specific types are written to the storage.
- AccountChange reader
- Database provider.
- Database provider factory.
- A provider type that knows chain specific information required to configure a [
EvmEnv
]. - Provides data required for post-block execution.
- Provides comprehensive post-execution state data required for further execution.
- Helper trait to unify all provider traits for simplicity.
- Helper trait to unify all provider traits required to support
eth
RPC server behaviour, for simplicity. - Trait that provides the hashed state from various sources.
- Hashing Writer
- Client trait for fetching
Header
related data. - Client trait for determining the current headers sync gap.
- History Writer
- Provider implementation that knows configured
NodePrimitives
. - Client trait for fetching ommers.
- The trait for fetching prune checkpoint related data.
- The trait for updating prune checkpoint related data.
- Client trait for fetching receipt data.
- Trait extension for
ReceiptProvider
, for types that implementBlockId
conversion. - The trait for fetching stage checkpoint related data.
- The trait for updating stage checkpoint related data.
- Trait implemented for database providers that can provide the [
StateCommitment
] type. - A type that can generate state proof on top of a given post state.
- An abstraction for a type that provides state data.
- Light wrapper that returns
StateProvider
implementations that correspond to the givenBlockNumber
, the latest state, or the pending state. - This just receives state, or
ExecutionOutcome
, from the provider - A type that can compute the state root of a given post state.
- A trait specifically for writing state changes or reverts
- Static file provider factory.
- Helper trait to manage different
StaticFileProviderRW
of anArc<StaticFileProvider
- The trait for fetching provider statistics.
- Storage ChangeSet reader
- Storage reader
- A type that can compute the storage root for a given account.
- Storage Trie Writer
- Client trait for fetching transactions related data.
- Client trait for fetching additional transactions related data.
- Helper trait to combine all the traits we need for the
BlockchainProvider
- Trie Writer
- Trait implemented for database providers that can be converted into a historical state provider.
- Client trait for fetching Withdrawal related data.
Type Aliases§
- Types used inside
RevertsInit
to initialize revms reverts. - Type used to initialize revms bundle state.
- Type alias for a sender that sends
CanonStateNotification
- Type alias for a receiver that receives
CanonStateNotification
- A
DatabaseProvider
that holds a read-only database transaction. - A helper type alias to access
BlockReader::Block
. - A helper type alias to access
HeaderProvider::Header
. - A helper type alias to access
ReceiptProvider::Receipt
. - Provider result type.
- A helper type alias to access
TransactionsProvider::Transaction
. - Input for reading a block body. Contains a header of block being read and a list of pre-fetched transactions.
- Type used to initialize revms reverts.
- Type alias of boxed
StateProvider
.