Struct Sha512VarCore
pub struct Sha512VarCore { /* private fields */ }
Core block-level SHA-512 hasher with variable output size.
Supports initialization only for 28, 32, 48, and 64 byte output sizes, i.e. 224, 256, 384, and 512 bits respectively.
Trait Implementations
impl AlgorithmName for Sha512VarCore
fn write_alg_name(f: &mut Formatter<'_>) -> Result
impl BlockSizeUser for Sha512VarCore
type BlockSize = UInt<UInt<UInt<UInt<UInt<UInt<UInt<UInt<UTerm, B1>, B0>, B0>, B0>, B0>, B0>, B0>, B0>;
impl BufferKindUser for Sha512VarCore
type BufferKind = Eager;
impl Clone for Sha512VarCore
fn clone(&self) -> Sha512VarCore
impl Debug for Sha512VarCore
fn fmt(&self, f: &mut Formatter<'_>) -> Result
impl Drop for Sha512VarCore
fn drop(&mut self)
impl HashMarker for Sha512VarCore
impl OutputSizeUser for Sha512VarCore
type OutputSize = UInt<UInt<UInt<UInt<UInt<UInt<UInt<UTerm, B1>, B0>, B0>, B0>, B0>, B0>, B0>;
impl SerializableState for Sha512VarCore
type SerializedStateSize = UInt<UInt<UInt<UInt<UInt<UInt<UInt<UTerm, B1>, B0>, B1>, B0>, B0>, B0>, B0>;fn serialize(&self) -> SerializedState<Self>fn deserialize(serialized_state: &SerializedState<Self>) -> Result<Self, DeserializeStateError>
impl UpdateCore for Sha512VarCore
fn update_blocks(&mut self, blocks: &[Block<Self>])
impl VariableOutputCore for Sha512VarCore
const TRUNC_SIDE: TruncSide = TruncSide::Left;fn new(output_size: usize) -> Result<Self, InvalidOutputSize>fn finalize_variable_core(&mut self, buffer: &mut Buffer<Self>, out: &mut Output<Self>)
Auto Trait Implementations
impl Freeze for Sha512VarCore
impl RefUnwindSafe for Sha512VarCore
impl Send for Sha512VarCore
impl Sync for Sha512VarCore
impl Unpin for Sha512VarCore
impl UnsafeUnpin for Sha512VarCore
impl UnwindSafe for Sha512VarCore
Blanket Implementations
impl<T> Any for Sha512VarCore
where
T: 'static + ?Sized,
fn type_id(&self) -> TypeId
impl<T> Borrow<T> for Sha512VarCore
where
T: ?Sized,
fn borrow(&self) -> &T
impl<T> BorrowMut<T> for Sha512VarCore
where
T: ?Sized,
fn borrow_mut(&mut self) -> &mut T
impl<T> CloneToUninit for Sha512VarCore
where
T: Clone,
unsafe fn clone_to_uninit(&self, dest: *mut u8)
impl<T> From<T> for Sha512VarCore
fn from(t: T) -> TReturns the argument unchanged.
impl<T> Same for Sha512VarCore
type Output = T;
impl<T> SmallBlockSizeUser for Sha512VarCore
where
T: BlockSizeUser,
<T as BlockSizeUser>::BlockSize: BlockSizes,
type _BlockSize = <T as BlockSizeUser>::BlockSize;
impl<T> ToOwned for Sha512VarCore
where
T: Clone,
type Owned = T;fn to_owned(&self) -> Tfn clone_into(&self, target: &mut T)
impl<T, U> Into<U> for Sha512VarCore
where
U: From<T>,
fn into(self) -> UCalls
U::from(self).That is, this conversion is whatever the implementation of
[From]<T> for Uchooses to do.
impl<T, U> TryFrom<U> for Sha512VarCore
where
U: Into<T>,
type Error = never;fn try_from(value: U) -> Result<T, never>
impl<T, U> TryInto<U> for Sha512VarCore
where
U: TryFrom<T>,
type Error = <U as TryFrom<T>>::Error;fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>