pub struct Blake3MerkleHasher;Expand description
Keyed BLAKE3 hasher of inner nodes with Self::KEY, which hashes multiple pairs at once with
SIMD
Implementations§
Source§impl Blake3MerkleHasher
impl Blake3MerkleHasher
Sourcepub const KEY: [u8; ab_blake3::KEY_LEN]
pub const KEY: [u8; ab_blake3::KEY_LEN]
Key of keyed BLAKE3 hash, BLAKE3 hash of a string merkle-tree-inner-node
Trait Implementations§
Source§impl Clone for Blake3MerkleHasher
impl Clone for Blake3MerkleHasher
impl Copy for Blake3MerkleHasher
Source§impl Debug for Blake3MerkleHasher
impl Debug for Blake3MerkleHasher
Source§impl Default for Blake3MerkleHasher
impl Default for Blake3MerkleHasher
impl Eq for Blake3MerkleHasher
Source§impl MerkleHasher for Blake3MerkleHasher
impl MerkleHasher for Blake3MerkleHasher
Source§fn hash_pair(
&self,
pair: &[[u8; ab_blake3::OUT_LEN]; 2],
) -> [u8; ab_blake3::OUT_LEN]
fn hash_pair( &self, pair: &[[u8; ab_blake3::OUT_LEN]; 2], ) -> [u8; ab_blake3::OUT_LEN]
Hash a pair of nodes together
Source§fn hash_pairs<const NUM_PAIRS: usize>(
&self,
pairs: &[[[u8; ab_blake3::OUT_LEN]; 2]; NUM_PAIRS],
) -> [[u8; ab_blake3::OUT_LEN]; NUM_PAIRS]
fn hash_pairs<const NUM_PAIRS: usize>( &self, pairs: &[[[u8; ab_blake3::OUT_LEN]; 2]; NUM_PAIRS], ) -> [[u8; ab_blake3::OUT_LEN]; NUM_PAIRS]
Similar to
Self::hash_pair(), but hashes multiple pairs at once. Read moreSource§fn hash_single_leaf(
&self,
leaf: &[u8; <Self as MerkleHasher>::OUT_LEN],
) -> [u8; <Self as MerkleHasher>::OUT_LEN]
fn hash_single_leaf( &self, leaf: &[u8; <Self as MerkleHasher>::OUT_LEN], ) -> [u8; <Self as MerkleHasher>::OUT_LEN]
Source§impl Ord for Blake3MerkleHasher
impl Ord for Blake3MerkleHasher
1.21.0 (const: unstable) · Source§fn max(self, other: Self) -> Selfwhere
Self: Sized,
fn max(self, other: Self) -> Selfwhere
Self: Sized,
Compares and returns the maximum of two values. Read more
1.21.0 (const: unstable) · Source§fn min(self, other: Self) -> Selfwhere
Self: Sized,
fn min(self, other: Self) -> Selfwhere
Self: Sized,
Compares and returns the minimum of two values. Read more
Source§impl PartialEq for Blake3MerkleHasher
impl PartialEq for Blake3MerkleHasher
Source§impl PartialOrd for Blake3MerkleHasher
impl PartialOrd for Blake3MerkleHasher
impl StructuralPartialEq for Blake3MerkleHasher
Auto Trait Implementations§
impl Forget for Blake3MerkleHasher
impl Freeze for Blake3MerkleHasher
impl RefUnwindSafe for Blake3MerkleHasher
impl Send for Blake3MerkleHasher
impl Sync for Blake3MerkleHasher
impl Unpin for Blake3MerkleHasher
impl UnsafeUnpin for Blake3MerkleHasher
impl UnwindSafe for Blake3MerkleHasher
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<H> NewMerkleHasherForTreeSize for Hwhere
H: Default,
impl<H> NewMerkleHasherForTreeSize for Hwhere
H: Default,
Source§fn new_for_tree_size(_num_leaves: u64) -> H
fn new_for_tree_size(_num_leaves: u64) -> H
Create a hasher for a tree with
num_leaves leaves