xet-core-structures 1.5.2

Core data structures including MerkleHash, metadata shards, and Xorb objects.
Documentation
1
2
3
4
5
6
7
8
9
10
11
12
13
14
use crate::merklehash::MerkleHash;
pub use crate::merklehash::passthrough_hasher::{U64DirectHasher, U64HashExtractable};
pub use crate::merklehash::passthrough_hashmap::PassThroughHashMap;

/// A HashMap specialized for `MerkleHash` keys using passthrough hashing.
///
/// This is a type alias for `PassThroughHashMap<MerkleHash, Value>`.
pub type MerkleHashMap<Value> = PassThroughHashMap<MerkleHash, Value>;

/// A HashMap specialized for `u64` keys using passthrough hashing.
///
/// This is useful when the key is already a truncated hash value (e.g., the first 8 bytes
/// of a larger hash), and we want to avoid re-hashing.
pub type TruncatedMerkleHashMap<Value> = PassThroughHashMap<u64, Value>;