const BYTE_SIZE: usize = 384;
internals::transparent_newtype! {
#[doc = "Output of the MuHash3072 hash function."]
#[derive(Copy, Clone, PartialEq, Eq, PartialOrd, Ord, Hash)]
pub struct Hash([u8; BYTE_SIZE]);
impl Hash {
pub fn from_bytes_ref(bytes: &_) -> &Self;
pub fn from_bytes_mut(bytes: &mut _) -> &mut Self;
}
}
impl Hash {
pub const fn from_byte_array(bytes: [u8; BYTE_SIZE]) -> Self { Self(bytes) }
pub const fn to_byte_array(self) -> [u8; BYTE_SIZE] { self.0 }
pub const fn as_byte_array(&self) -> &[u8; BYTE_SIZE] { &self.0 }
}
crate::internal_macros::hash_trait_impls!(BYTE_SIZE * 8, false);