Struct ring::digest::Context[][src]

pub struct Context { /* fields omitted */ }

A context for multi-step (Init-Update-Finish) digest calculations.

Examples

use ring::digest;

let one_shot = digest::digest(&digest::SHA384, b"hello, world");

let mut ctx = digest::Context::new(&digest::SHA384);
ctx.update(b"hello");
ctx.update(b", ");
ctx.update(b"world");
let multi_part = ctx.finish();

assert_eq!(&one_shot.as_ref(), &multi_part.as_ref());

Implementations

impl Context[src]

pub fn new(algorithm: &'static Algorithm) -> Self[src]

Constructs a new context.

pub fn update(&mut self, data: &[u8])[src]

Updates the digest with all the data in data. update may be called zero or more times until finish is called. It must not be called after finish has been called.

pub fn finish(self) -> Digest[src]

Finalizes the digest calculation and returns the digest value. finish consumes the context so it cannot be (mis-)used after finish has been called.

pub fn algorithm(&self) -> &'static Algorithm[src]

The algorithm that this context is using.

Trait Implementations

impl Clone for Context[src]

Auto Trait Implementations

impl RefUnwindSafe for Context

impl Send for Context

impl Sync for Context

impl Unpin for Context

impl UnwindSafe for Context

Blanket Implementations

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

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

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

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

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

impl<T> ToOwned for T where
    T: Clone
[src]

type Owned = T

The resulting type after obtaining ownership.

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.