pub struct ParallelSha256Compression { /* private fields */ }Expand description
Parallel SHA-256 two-to-one compression for the inner nodes of a Merkle tree.
Groups of four independent compressions run through the interleaved four-way block kernel. A trailing group smaller than four compresses one node at a time. Every output byte equals compressing each node on its own with the scalar function.
Trait Implementations§
Source§impl Clone for ParallelSha256Compression
impl Clone for ParallelSha256Compression
Source§fn clone(&self) -> ParallelSha256Compression
fn clone(&self) -> ParallelSha256Compression
Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl Debug for ParallelSha256Compression
impl Debug for ParallelSha256Compression
Source§impl Default for ParallelSha256Compression
impl Default for ParallelSha256Compression
Source§fn default() -> ParallelSha256Compression
fn default() -> ParallelSha256Compression
Returns the “default value” for a type. Read more
Source§impl ParallelPseudoCompression<Array<u8, <Sha256 as OutputSizeUser>::OutputSize>, 2> for ParallelSha256Compression
impl ParallelPseudoCompression<Array<u8, <Sha256 as OutputSizeUser>::OutputSize>, 2> for ParallelSha256Compression
Source§type Compression = Sha256Compression
type Compression = Sha256Compression
The underlying compression function that performs N-to-1 compression.
Source§fn compression(&self) -> &Self::Compression
fn compression(&self) -> &Self::Compression
Returns a reference to the underlying compression function.
Source§fn parallel_compress(
&self,
inputs: &[Output<Sha256>],
out: &mut [MaybeUninit<Output<Sha256>>],
)
fn parallel_compress( &self, inputs: &[Output<Sha256>], out: &mut [MaybeUninit<Output<Sha256>>], )
Compresses multiple N-element chunks in parallel. Read more
Auto Trait Implementations§
impl Freeze for ParallelSha256Compression
impl RefUnwindSafe for ParallelSha256Compression
impl Send for ParallelSha256Compression
impl Sync for ParallelSha256Compression
impl Unpin for ParallelSha256Compression
impl UnsafeUnpin for ParallelSha256Compression
impl UnwindSafe for ParallelSha256Compression
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
§impl<T> Instrument for T
impl<T> Instrument for T
§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more