[−][src]Struct ring::digest::Context
A context for multi-step (Init-Update-Finish) digest calculations.
C analog: EVP_MD_CTX
.
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());
Fields
algorithm: &'static Algorithm
The context's algorithm.
Methods
impl Context
[src]
pub fn new(algorithm: &'static Algorithm) -> Context
[src]
Constructs a new context.
C analogs: EVP_DigestInit
, EVP_DigestInit_ex
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.
C analog: EVP_DigestUpdate
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.
C analogs: EVP_DigestFinal
, EVP_DigestFinal_ex
pub fn algorithm(&self) -> &'static Algorithm
[src]
The algorithm that this context is using.
Trait Implementations
Auto Trait Implementations
impl Unpin for Context
impl Send for Context
impl Sync for Context
impl UnwindSafe for Context
impl RefUnwindSafe for Context
Blanket Implementations
impl<T, U> TryFrom<U> for T where
U: Into<T>,
[src]
U: Into<T>,
type Error = Infallible
The type returned in the event of a conversion error.
fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>
[src]
impl<T, U> Into<U> for T where
U: From<T>,
[src]
U: From<T>,
impl<T> From<T> for T
[src]
impl<T, U> TryInto<U> for T where
U: TryFrom<T>,
[src]
U: TryFrom<T>,
type Error = <U as TryFrom<T>>::Error
The type returned in the event of a conversion error.
fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>
[src]
impl<T> Borrow<T> for T where
T: ?Sized,
[src]
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
[src]
T: ?Sized,
fn borrow_mut(&mut self) -> &mut T
[src]
impl<T> Any for T where
T: 'static + ?Sized,
[src]
T: 'static + ?Sized,
impl<T> ToOwned for T where
T: Clone,
[src]
T: Clone,