pub struct ContentHash(/* private fields */);Expand description
A BLAKE3 content hash (32 bytes).
Used for:
- Audit chain linking (each entry hashes the previous)
- Content deduplication and verification
- Binary hash verification before execution
Implementations§
Source§impl ContentHash
impl ContentHash
Sourcepub const fn from_bytes(bytes: [u8; 32]) -> Self
pub const fn from_bytes(bytes: [u8; 32]) -> Self
Create from raw bytes.
Sourcepub fn try_from_slice(slice: &[u8]) -> Option<Self>
pub fn try_from_slice(slice: &[u8]) -> Option<Self>
Try to create from a slice.
Returns None if the slice is not exactly 32 bytes.
Sourcepub fn from_hex(s: &str) -> Result<Self, FromHexError>
pub fn from_hex(s: &str) -> Result<Self, FromHexError>
Sourcepub fn from_base64(s: &str) -> Result<Self, DecodeError>
pub fn from_base64(s: &str) -> Result<Self, DecodeError>
Decode from base64 string.
§Errors
Returns an error if the string is not valid base64 or not 32 bytes.
Trait Implementations§
Source§impl AsRef<[u8]> for ContentHash
impl AsRef<[u8]> for ContentHash
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 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl Debug for ContentHash
impl Debug for ContentHash
Source§impl Default for ContentHash
impl Default 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
Source§impl From<ContentHash> for [u8; 32]
impl From<ContentHash> for [u8; 32]
Source§fn from(hash: ContentHash) -> Self
fn from(hash: ContentHash) -> Self
Converts to this type from the input type.
Source§impl Hash for ContentHash
impl Hash for ContentHash
Source§impl PartialEq for ContentHash
impl PartialEq for ContentHash
Source§impl Serialize for ContentHash
impl Serialize for ContentHash
impl Copy for ContentHash
impl Eq 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
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> ToHex for T
impl<T> ToHex for T
Source§fn encode_hex<U>(&self) -> Uwhere
U: FromIterator<char>,
fn encode_hex<U>(&self) -> Uwhere
U: FromIterator<char>,
Encode the hex strict representing
self into the result. Lower case
letters are used (e.g. f9b4ca)Source§fn encode_hex_upper<U>(&self) -> Uwhere
U: FromIterator<char>,
fn encode_hex_upper<U>(&self) -> Uwhere
U: FromIterator<char>,
Encode the hex strict representing
self into the result. Upper case
letters are used (e.g. F9B4CA)