Expand description
Commonly used types for trie usage.
Modules§
- hash_
builder - The implementation of hash builder. MPT hash builder implementation.
- prefix_
set - The implementation of a container for storing intermediate changes to a trie. The container indicates when the trie has been modified.
- proof
- Re-export Proof verification logic.
- root
- Common root computation functions.
- serde_
bincode_ compat serde
andserde-bincode-compat
- Bincode-compatible serde implementations for trie types.
- triehash
test-utils
- Implementation of hasher using our keccak256 hashing function
for compatibility with
triehash
crate. - updates
- Buffer for trie updates.
Structs§
- Account
Proof - The merkle proof with the relevant account info.
- Branch
Node - Re-export A branch node in an Ethereum Merkle Patricia Trie.
- Branch
Node Compact - Re-export A struct representing a branch node in an Ethereum trie.
- Branch
Node Ref - Re-export A reference to BranchNode and its state mask. NOTE: The stack may contain more items that specified in the state mask.
- Extension
Node - Re-export An extension node in an Ethereum Merkle Patricia Trie.
- Extension
Node Ref - Re-export Reference to the extension node. See ExtensionNode from more information.
- Hash
Builder - Re-export A component used to construct the root hash of the trie.
- Keccak
KeyHasher - A key hasher that uses the Keccak-256 hash function.
- Leaf
Node - Re-export A leaf node represents the endpoint or terminal node in the trie. In other words, a leaf node is where actual values are stored.
- Leaf
Node Ref - Re-export Reference to the leaf node. See LeafNode from more information.
- Multi
Proof - The state multiproof of target accounts and multiproofs of their storage tries. Multiproof is effectively a state subtrie that only contains the nodes in the paths of target accounts.
- Multi
Proof Targets - Proof targets map.
- Nibbles
- Structure representing a sequence of nibbles.
- RlpNode
- Re-export An RLP-encoded node.
- Storage
Multi Proof - The merkle multiproof of storage trie.
- Storage
Proof - The merkle proof of the storage entry.
- Storage
Trie Entry - Account storage trie node.
- Stored
Nibbles - The representation of nibbles of the merkle trie stored in the database.
- Stored
Nibbles SubKey - The representation of nibbles of the merkle trie stored in the database.
- Stored
SubNode - Walker sub node for storing intermediate state root calculation state in the database.
- Trie
Account - An Ethereum account as represented in the trie.
- Trie
Mask - Re-export A struct representing a mask of 16 bits, used for Ethereum trie operations.
Enums§
- Trie
Node - Re-export Enum representing an MPT trie node.
Constants§
- CHILD_
INDEX_ RANGE - Re-export The range of valid child indexes.
- EMPTY_
ROOT_ HASH - Re-export Root hash of an empty trie.
- TRIE_
ACCOUNT_ RLP_ MAX_ SIZE - The maximum size of RLP encoded trie account in bytes. 2 (header) + 4 * 1 (field lens) + 8 (nonce) + 32 * 3 (balance, storage root, code hash)
Traits§
- KeyHasher
- Trait for hashing keys in state.
Functions§
- encode_
path_ leaf - Re-export Encodes a given path leaf as a compact array of bytes.
- rlp_
node Deprecated - Re-export
Given an RLP-encoded node, returns it either as
rlp(node)
orrlp(keccak(rlp(node)))
. - word_
rlp Deprecated - Re-export Optimization for quick RLP-encoding of a 32-byte word.