Expand description
Commonly used types in Reth.
This crate contains Ethereum primitive types and helper functions.
§Feature Flags
alloy-compat
: Adds compatibility conversions for certain alloy types.arbitrary
: Addsproptest
andarbitrary
support for primitive types.test-utils
: Export utilities for testingreth-codec
: Enables db codec support for reth types including zstd compression for certain types.
Re-exports§
pub use transaction::BlobTransaction;
pub use transaction::InvalidTransactionError;
pub use transaction::PooledTransactionsElement;
pub use transaction::PooledTransactionsElementEcRecovered;
pub use transaction::Transaction;
pub use transaction::TransactionMeta;
pub use transaction::TransactionSigned;
pub use transaction::TransactionSignedEcRecovered;
pub use transaction::TransactionSignedNoHash;
pub use transaction::TxType;
pub use reth_static_file_types as static_file;
pub use arbitrary;
arbitrary
pub use c_kzg as kzg;
c-kzg
Modules§
- The
Arbitrary
trait crate. - Helper function for calculating Merkle proofs and hashes.
- serde_
bincode_ compat serde-bincode-compat
Bincode-compatible serde implementations for commonly used types in Reth. - Transaction types.
Macros§
- Macro that defines different variants of a chain specific enum. See
crate::Hardfork
as an example.
Structs§
- An Ethereum account.
- Ethereum full block.
- A response to
GetBlockBodies
, containing bodies if any bodies were found. - Sealed block with senders recovered from transactions.
- Bytecode for an account.
- Ordered list of a chain hardforks that implement
Hardfork
. - A container for pretty-printing a list of hardforks.
- Represents a forward-compatible ENR entry for including the forkid in a node record via EIP-868. Forward compatibility is achieved via EIP-8.
- Temp helper struct for integrating
NodePrimitives
. - Filter that describes the state of blockchain and can be used to check incoming
ForkId
s for compatibility. CRC32
hash of all previous forks starting from genesis block.- A fork identifier as defined by EIP-2124. Serves as the chain compatibility identifier.
- Represents a transition from one fork to another
- A pair of values, one of which is expected and one of which is actual.
- A pair of values, one of which is expected and one of which is actual.
- Describes the current head block.
- Ethereum Block header
- A log consists of an address, and some log data.
- An Ethereum event log object.
- Receipt containing result of transaction execution.
Receipt
with calculated bloom filter.Receipt
reference type with calculated bloom filter.- A collection of receipts organized as a two-dimensional vector.
- Reusable
Decompressor reth-codec
Reusable decompressor that uses its own internal buffer. - Sealed Ethereum full block.
- Sealed block with senders recovered from transactions.
- A
Header
that is sealed at a precalculated hash, useSealedHeader::unseal()
if you want to modify header. - Account storage entry.
Enums§
- The name of an Ethereum hardfork.
- The condition at which a fork is activated.
- How to filter forks.
- Errors that can occur during header sanity checks.
- Segment of the data that can be moved to static files.
- Reason for rejecting provided
ForkId
.
Constants§
- RECEIPT_
COMPRESSOR reth-codec
Thread receipt compressor. - RECEIPT_
DECOMPRESSOR reth-codec
Thread receipt decompressor. - TRANSACTION_
COMPRESSOR reth-codec
Thread Transaction compressor. - TRANSACTION_
DECOMPRESSOR reth-codec
Thread Transaction decompressor.
Statics§
- Dev hardforks
- RECEIPT_
DICTIONARY reth-codec
Compression/Decompression dictionary forReceipt
. - TRANSACTION_
DICTIONARY reth-codec
Compression/Decompression dictionary forTransaction
.
Traits§
- Helper methods for Ethereum forks.
- Generic hardfork trait.
- Generic trait over a set of ordered hardforks
- Configures all the primitive types of the node.
Functions§
- create_
receipt_ compressor reth-codec
Fn creates receipt [Compressor
] - create_
receipt_ decompressor reth-codec
Fn creates receipt [Decompressor
] - create_
tx_ compressor reth-codec
Fn creates tx [Compressor
] - create_
tx_ decompressor reth-codec
Fn creates tx [Decompressor
] - Retrieves gas spent by transactions as a vector of tuples (transaction index, gas used). Retrieves gas spent by transactions as a vector of tuples (transaction index, gas used).
- generate_
valid_ header arbitrary
Generates a header which is valid with respect to past and future forks. This means, for example, that if the withdrawals root is present, the base fee per gas is also present. - Compute the logs bloom filter for the given logs.
- public_
key_ to_ address secp256k1
Converts a public key into an ethereum address by hashing the encoded public key with keccak256. - recover_
signer_ unchecked secp256k1
Recovers the address of the sender using secp256k1 pubkey recovery. - sign_
message secp256k1
Signs message with the given secret key. Returns the corresponding signature. - valid_
header_ strategy arbitrary
Generates a proptest strategy for constructing an instance of a header which is valid with respect to past and future forks.