pub struct Hash<T: Tag>(/* private fields */);Expand description
Output of the SHA256t hash function.
Implementations§
Source§impl<T: Tag> Hash<T>
impl<T: Tag> Hash<T>
Sourcepub fn from_bytes_ref(bytes: &[u8; 32]) -> &Self
pub fn from_bytes_ref(bytes: &[u8; 32]) -> &Self
Zero cost conversion between a fixed length byte array shared reference and a shared reference to this Hash type.
Sourcepub fn from_bytes_mut(bytes: &mut [u8; 32]) -> &mut Self
pub fn from_bytes_mut(bytes: &mut [u8; 32]) -> &mut Self
Zero cost conversion between a fixed length byte array exclusive reference and an exclusive reference to this Hash type.
Trait Implementations§
Source§impl<'de, T: Tag> Deserialize<'de> for Hash<T>
impl<'de, T: Tag> Deserialize<'de> for Hash<T>
Source§fn deserialize<D: Deserializer<'de>>(d: D) -> Result<Hash<T>, D::Error>
fn deserialize<D: Deserializer<'de>>(d: D) -> Result<Hash<T>, D::Error>
Deserialize this value from the given Serde deserializer. Read more
Source§impl<T: Tag> Hash for Hash<T>
impl<T: Tag> Hash for Hash<T>
Source§const DISPLAY_BACKWARD: bool = true
const DISPLAY_BACKWARD: bool = true
Flag indicating whether user-visible serializations of this hash
should be backward. For some reason Satoshi decided this should be
true for
Sha256dHash, so here we are.Source§type Engine = HashEngine
type Engine = HashEngine
A hashing engine which bytes can be serialized into. It is expected
to implement the
io::Write trait, and to never return errors under
any conditions.Source§fn from_engine(e: HashEngine) -> Hash<T>
fn from_engine(e: HashEngine) -> Hash<T>
Produces a hash from the current state of a given engine.
Source§fn from_slice(sl: &[u8]) -> Result<Hash<T>, FromSliceError>
fn from_slice(sl: &[u8]) -> Result<Hash<T>, FromSliceError>
Copies a byte slice into a hash object.
Source§fn to_byte_array(self) -> Self::Bytes
fn to_byte_array(self) -> Self::Bytes
Returns the underlying byte array.
Source§fn as_byte_array(&self) -> &Self::Bytes
fn as_byte_array(&self) -> &Self::Bytes
Returns a reference to the underlying byte array.
Source§fn from_byte_array(bytes: Self::Bytes) -> Self
fn from_byte_array(bytes: Self::Bytes) -> Self
Constructs a hash from the underlying byte array.
Source§fn hash_byte_chunks<B, I>(byte_slices: I) -> Self
fn hash_byte_chunks<B, I>(byte_slices: I) -> Self
Hashes all the byte slices retrieved from the iterator together.
Source§impl<T: Tag> Ord for Hash<T>
impl<T: Tag> Ord for Hash<T>
Source§impl<T: Tag> PartialOrd for Hash<T>
impl<T: Tag> PartialOrd for Hash<T>
Source§impl<T: Tag> SerdeHash for Hash<T>
impl<T: Tag> SerdeHash for Hash<T>
Source§fn from_slice_delegated(sl: &[u8]) -> Result<Self, FromSliceError>
fn from_slice_delegated(sl: &[u8]) -> Result<Self, FromSliceError>
Helper function to turn a deserialized slice into the correct hash type.
Source§fn deserialize<'de, D: Deserializer<'de>>(d: D) -> Result<Self, D::Error>
fn deserialize<'de, D: Deserializer<'de>>(d: D) -> Result<Self, D::Error>
Do serde deserialization.
impl<T: Tag> Copy for Hash<T>
impl<T: Tag> Eq for Hash<T>
Auto Trait Implementations§
impl<T> Freeze for Hash<T>
impl<T> RefUnwindSafe for Hash<T>where
T: RefUnwindSafe,
impl<T> Send for Hash<T>where
T: Send,
impl<T> Sync for Hash<T>where
T: Sync,
impl<T> Unpin for Hash<T>where
T: Unpin,
impl<T> UnwindSafe for Hash<T>where
T: UnwindSafe,
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