[][src]Struct crypto_hash::Hasher

pub struct Hasher(_);

Generator of digests using a cryptographic hash function.

Examples

use crypto_hash::{Algorithm, Hasher};
use std::io::Write;

let mut hasher = Hasher::new(Algorithm::SHA256);
hasher.write_all(b"crypto");
hasher.write_all(b"-");
hasher.write_all(b"hash");
let result = hasher.finish();
let expected =
    b"\xfd\x1a\xfb`\"\xcdMG\xc8\x90\x96\x1cS9(\xea\xcf\xe8!\x9f\x1b%$\xf7\xfb*a\x84}\xdf\x8c'"
    .to_vec();
assert_eq!(expected, result)

Methods

impl Hasher[src]

Important traits for Hasher
pub fn new(algorithm: Algorithm) -> Hasher[src]

Create a new Hasher for the given Algorithm.

pub fn finish(&mut self) -> Vec<u8>[src]

Generate a digest from the data written to the Hasher.

Trait Implementations

impl Write for Hasher[src]

fn write_vectored(&mut self, bufs: &[IoSlice]) -> Result<usize, Error>1.36.0[src]

Like write, except that it writes from a slice of buffers. Read more

fn write_all(&mut self, buf: &[u8]) -> Result<(), Error>1.0.0[src]

Attempts to write an entire buffer into this writer. Read more

fn write_fmt(&mut self, fmt: Arguments) -> Result<(), Error>1.0.0[src]

Writes a formatted string into this writer, returning any error encountered. Read more

fn by_ref(&mut self) -> &mut Self1.0.0[src]

Creates a "by reference" adaptor for this instance of Write. Read more

Auto Trait Implementations

impl Unpin for Hasher

impl Send for Hasher

impl Sync for Hasher

impl RefUnwindSafe for Hasher

impl UnwindSafe for Hasher

Blanket Implementations

impl<T> From<T> for T[src]

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.

impl<T> BorrowMut<T> for T where
    T: ?Sized
[src]

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

impl<T> Any for T where
    T: 'static + ?Sized
[src]