pub struct Sha256Hex(/* private fields */);Expand description
A SHA-256 digest, normalised to 64 lowercase hex characters.
Parsed rather than compared as a raw string so that a malformed published
value — the wrong length, a non-hex character, an sha256: prefix — is a
refusal rather than a comparison that quietly never matches. A digest
check that can never succeed and a digest check that can never fail are the
same defect wearing different clothes.
Implementations§
Trait Implementations§
Source§impl<'de> Deserialize<'de> for Sha256Hex
impl<'de> Deserialize<'de> for Sha256Hex
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
impl Eq for Sha256Hex
Source§impl Ord for Sha256Hex
impl Ord for Sha256Hex
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 PartialOrd for Sha256Hex
impl PartialOrd for Sha256Hex
impl StructuralPartialEq for Sha256Hex
Auto Trait Implementations§
impl Freeze for Sha256Hex
impl RefUnwindSafe for Sha256Hex
impl Send for Sha256Hex
impl Sync for Sha256Hex
impl Unpin for Sha256Hex
impl UnsafeUnpin for Sha256Hex
impl UnwindSafe for Sha256Hex
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<Q, K> Comparable<K> for Q
impl<Q, K> Comparable<K> for Q
impl<T> DeserializeOwned for Twhere
T: for<'de> Deserialize<'de>,
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Compare self to
key and return true if they are equal.