pub struct ContentHash(/* private fields */);Expand description
A BLAKE3 content hash (32 bytes / 256 bits).
Used for content-addressing blobs, trees, and states. The hash changes when content changes.
Implementations§
Source§impl ContentHash
impl ContentHash
Sourcepub fn from_bytes(bytes: [u8; 32]) -> Self
pub fn from_bytes(bytes: [u8; 32]) -> Self
Create a ContentHash from raw bytes.
Sourcepub fn compute_typed(type_prefix: &str, content: &[u8]) -> Self
pub fn compute_typed(type_prefix: &str, content: &[u8]) -> Self
Compute hash with a type prefix (e.g., “blob”, “tree”, “state”).
Sourcepub fn typed_hasher(type_prefix: &str, content_len: u64) -> Hasher
pub fn typed_hasher(type_prefix: &str, content_len: u64) -> Hasher
Create a typed hasher pre-seeded with the prefix and length.
Sourcepub fn compute_typed_with_len(
type_prefix: &str,
content_len: u64,
update: impl FnOnce(&mut Hasher),
) -> Self
pub fn compute_typed_with_len( type_prefix: &str, content_len: u64, update: impl FnOnce(&mut Hasher), ) -> Self
Compute hash with a known content length using incremental updates.
Sourcepub fn from_hex(s: &str) -> Result<Self, FromHexError>
pub fn from_hex(s: &str) -> Result<Self, FromHexError>
Parse from hexadecimal string.
Sourcepub fn matches_prefix(&self, prefix: &str) -> bool
pub fn matches_prefix(&self, prefix: &str) -> bool
Check if a hex prefix matches this hash.
Trait Implementations§
Source§impl Clone for ContentHash
impl Clone for ContentHash
Source§fn clone(&self) -> ContentHash
fn clone(&self) -> ContentHash
Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreimpl Copy for ContentHash
Source§impl Debug for ContentHash
impl Debug for ContentHash
Source§impl<'de> Deserialize<'de> for ContentHash
impl<'de> Deserialize<'de> for ContentHash
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
Source§impl Display for ContentHash
impl Display for ContentHash
impl Eq for ContentHash
Source§impl Hash for ContentHash
impl Hash for ContentHash
Source§impl Ord for ContentHash
impl Ord for ContentHash
Source§fn cmp(&self, other: &ContentHash) -> Ordering
fn cmp(&self, other: &ContentHash) -> Ordering
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
Source§impl PartialEq for ContentHash
impl PartialEq for ContentHash
Source§fn eq(&self, other: &ContentHash) -> bool
fn eq(&self, other: &ContentHash) -> bool
Tests for
self and other values to be equal, and is used by ==.Source§impl PartialOrd for ContentHash
impl PartialOrd for ContentHash
Source§impl Serialize for ContentHash
impl Serialize for ContentHash
impl StructuralPartialEq for ContentHash
Auto Trait Implementations§
impl Freeze for ContentHash
impl RefUnwindSafe for ContentHash
impl Send for ContentHash
impl Sync for ContentHash
impl Unpin for ContentHash
impl UnsafeUnpin for ContentHash
impl UnwindSafe for ContentHash
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