pub struct WhichHashers {
pub content_md5: bool,
pub crc32: bool,
pub crc32c: bool,
pub sha1: bool,
pub sha256: bool,
pub crc64nvme: bool,
}Expand description
Which hashers the tee should drive on every chunk. Derived from
both the parsed request headers (ClientChecksums) AND any
algorithms the client announced via x-amz-trailer (the chunked /
SigV4-streaming SDK case, where the actual digest value arrives in
the request trailers after the body is fully consumed).
Each flag is on iff the corresponding algorithm must be computed — avoiding the per-chunk cost of (in particular) the SHA family when the client only wants a CRC.
Fields§
§content_md5: bool§crc32: bool§crc32c: bool§sha1: bool§sha256: bool§crc64nvme: boolImplementations§
Source§impl WhichHashers
impl WhichHashers
pub fn any(&self) -> bool
Sourcepub fn or(self, other: Self) -> Self
pub fn or(self, other: Self) -> Self
Union: enable a hasher in self if it was on in either side.
Sourcepub fn from_trailer_header(value: &str) -> Self
pub fn from_trailer_header(value: &str) -> Self
Drop any hashers whose algorithm name appears in the
comma-separated x-amz-trailer header value. Each name is
trimmed; case-insensitive against the AWS spec names.
Trait Implementations§
Source§impl Clone for WhichHashers
impl Clone for WhichHashers
Source§fn clone(&self) -> WhichHashers
fn clone(&self) -> WhichHashers
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 moreimpl Copy for WhichHashers
Source§impl Debug for WhichHashers
impl Debug for WhichHashers
Source§impl Default for WhichHashers
impl Default for WhichHashers
Source§fn default() -> WhichHashers
fn default() -> WhichHashers
Returns the “default value” for a type. Read more
Auto Trait Implementations§
impl Freeze for WhichHashers
impl RefUnwindSafe for WhichHashers
impl Send for WhichHashers
impl Sync for WhichHashers
impl Unpin for WhichHashers
impl UnsafeUnpin for WhichHashers
impl UnwindSafe for WhichHashers
Blanket Implementations§
Source§impl<'a, T, E> AsTaggedExplicit<'a, E> for Twhere
T: 'a,
impl<'a, T, E> AsTaggedExplicit<'a, E> for Twhere
T: 'a,
Source§impl<'a, T, E> AsTaggedImplicit<'a, E> for Twhere
T: 'a,
impl<'a, T, E> AsTaggedImplicit<'a, E> for Twhere
T: 'a,
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
impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§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 moreCreates a shared type from an unshared type.