digest

Trait VariableOutputReset

source
pub trait VariableOutputReset: VariableOutput + Reset {
    // Required method
    fn finalize_variable_reset(
        &mut self,
        out: &mut [u8],
    ) -> Result<(), InvalidBufferSize>;

    // Provided method
    fn finalize_boxed_reset(&mut self) -> Box<[u8]> { ... }
}
Expand description

Trait for hash functions with variable-size output able to reset themselves.

Required Methods§

source

fn finalize_variable_reset( &mut self, out: &mut [u8], ) -> Result<(), InvalidBufferSize>

Write result into the output buffer and reset the hasher state.

Returns Err(InvalidOutputSize) if out size is not equal to self.output_size().

Provided Methods§

source

fn finalize_boxed_reset(&mut self) -> Box<[u8]>

Retrieve result into a boxed slice and reset the hasher state.

Box<[u8]> is used instead of Vec<u8> to save stack space, since they have size of 2 and 3 words respectively.

Object Safety§

This trait is not object safe.

Implementors§