#[non_exhaustive]pub enum CompressAlgorithm {
Brotli(BrotliAlgorithm),
Lz4,
Snappy,
Zstd(ZstdCompressionLevel),
Unknown(u8),
}Expand description
The compressioned algorithm used to compression the message.
Variants (Non-exhaustive)§
This enum is marked as non-exhaustive
Non-exhaustive enums could have additional variants added in future. Therefore, when matching against variants of non-exhaustive enums, an extra wildcard arm must be added to account for any future variants.
Brotli(BrotliAlgorithm)
Brotli
Lz4
LZ4
Snappy
Snappy
Zstd(ZstdCompressionLevel)
Zstd
Unknown(u8)
Unknwon compressioned algorithm
Implementations§
Source§impl CompressAlgorithm
impl CompressAlgorithm
Sourcepub const fn is_brotli(&self) -> bool
pub const fn is_brotli(&self) -> bool
Returns true if this value is of type Brotli. Returns false otherwise
Sourcepub const fn is_lz_4(&self) -> bool
pub const fn is_lz_4(&self) -> bool
Returns true if this value is of type Lz4. Returns false otherwise
Sourcepub const fn is_snappy(&self) -> bool
pub const fn is_snappy(&self) -> bool
Returns true if this value is of type Snappy. Returns false otherwise
Sourcepub const fn is_zstd(&self) -> bool
pub const fn is_zstd(&self) -> bool
Returns true if this value is of type Zstd. Returns false otherwise
Sourcepub const fn is_unknown(&self) -> bool
pub const fn is_unknown(&self) -> bool
Returns true if this value is of type Unknown. Returns false otherwise
Source§impl CompressAlgorithm
impl CompressAlgorithm
Sourcepub fn decompress_to(
&self,
src: &[u8],
dst: &mut [u8],
) -> Result<usize, CompressionError>
pub fn decompress_to( &self, src: &[u8], dst: &mut [u8], ) -> Result<usize, CompressionError>
Decompresses the given buffer.
Sourcepub fn max_compress_len(
&self,
input_size: usize,
) -> Result<usize, CompressionError>
pub fn max_compress_len( &self, input_size: usize, ) -> Result<usize, CompressionError>
Returns the maximum compressed length of the given buffer.
This is useful when you want to pre-allocate the buffer before compressing.
Sourcepub fn compress_to(
&self,
src: &[u8],
dst: &mut [u8],
) -> Result<usize, CompressionError>
pub fn compress_to( &self, src: &[u8], dst: &mut [u8], ) -> Result<usize, CompressionError>
Compresses the given buffer.
The dst buffer should be pre-allocated with the max_compress_len method.
Trait Implementations§
Source§impl<'a> Arbitrary<'a> for CompressAlgorithm
impl<'a> Arbitrary<'a> for CompressAlgorithm
Source§fn arbitrary(u: &mut Unstructured<'a>) -> Result<CompressAlgorithm, Error>
fn arbitrary(u: &mut Unstructured<'a>) -> Result<CompressAlgorithm, Error>
Generate an arbitrary value of
Self from the given unstructured data. Read moreSource§fn arbitrary_take_rest(u: Unstructured<'a>) -> Result<Self, Error>
fn arbitrary_take_rest(u: Unstructured<'a>) -> Result<Self, Error>
Generate an arbitrary value of
Self from the entirety of the given
unstructured data. Read moreSource§fn size_hint(depth: usize) -> (usize, Option<usize>)
fn size_hint(depth: usize) -> (usize, Option<usize>)
Get a size hint for how many bytes out of an
Unstructured this type
needs to construct itself. Read moreSource§fn try_size_hint(
depth: usize,
) -> Result<(usize, Option<usize>), MaxRecursionReached>
fn try_size_hint( depth: usize, ) -> Result<(usize, Option<usize>), MaxRecursionReached>
Get a size hint for how many bytes out of an
Unstructured this type
needs to construct itself. Read moreSource§impl Arbitrary for CompressAlgorithm
impl Arbitrary for CompressAlgorithm
Source§impl Clone for CompressAlgorithm
impl Clone for CompressAlgorithm
Source§fn clone(&self) -> CompressAlgorithm
fn clone(&self) -> CompressAlgorithm
Returns a duplicate of the value. Read more
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl Data for CompressAlgorithm
impl Data for CompressAlgorithm
Source§type Ref<'a> = CompressAlgorithm
type Ref<'a> = CompressAlgorithm
The reference type of the data.
Source§fn from_ref(
val: <CompressAlgorithm as Data>::Ref<'_>,
) -> Result<CompressAlgorithm, DecodeError>where
CompressAlgorithm: Sized,
fn from_ref(
val: <CompressAlgorithm as Data>::Ref<'_>,
) -> Result<CompressAlgorithm, DecodeError>where
CompressAlgorithm: Sized,
Converts the reference type to the owned type.
Source§fn encoded_len(&self) -> usize
fn encoded_len(&self) -> usize
Returns the encoded length of the data only considering the data itself, (e.g. no length prefix, no wire type).
Source§fn encode(&self, buf: &mut [u8]) -> Result<usize, EncodeError>
fn encode(&self, buf: &mut [u8]) -> Result<usize, EncodeError>
Encodes the message to a buffer. Read more
Source§fn encoded_len_with_length_delimited(&self) -> usize
fn encoded_len_with_length_delimited(&self) -> usize
Returns the encoded length of the data including the length delimited.
Source§fn encode_to_vec(&self) -> Result<Vec<u8>, EncodeError>
fn encode_to_vec(&self) -> Result<Vec<u8>, EncodeError>
Encodes the message into a vec.
Source§fn encode_to_bytes(&self) -> Result<Bytes, EncodeError>
fn encode_to_bytes(&self) -> Result<Bytes, EncodeError>
Encodes the message into a
Bytes.Source§fn encode_length_delimited(&self, buf: &mut [u8]) -> Result<usize, EncodeError>
fn encode_length_delimited(&self, buf: &mut [u8]) -> Result<usize, EncodeError>
Encodes the message with a length-delimiter to a buffer. Read more
Source§fn encode_length_delimited_to_vec(&self) -> Result<Vec<u8>, EncodeError>
fn encode_length_delimited_to_vec(&self) -> Result<Vec<u8>, EncodeError>
Encodes the message with a length-delimiter into a vec.
Source§fn encode_length_delimited_to_bytes(&self) -> Result<Bytes, EncodeError>
fn encode_length_delimited_to_bytes(&self) -> Result<Bytes, EncodeError>
Encodes the message with a length-delimiter into a
Bytes.Source§fn decode(src: &[u8]) -> Result<(usize, Self), DecodeError>where
Self: Sized,
fn decode(src: &[u8]) -> Result<(usize, Self), DecodeError>where
Self: Sized,
Decodes an instance of the message from a buffer. Read more
Source§fn decode_length_delimited(buf: &[u8]) -> Result<(usize, Self), DecodeError>where
Self: Sized,
fn decode_length_delimited(buf: &[u8]) -> Result<(usize, Self), DecodeError>where
Self: Sized,
Decodes a length-delimited instance of the message from the buffer.
Source§impl<'a> DataRef<'a, CompressAlgorithm> for CompressAlgorithm
impl<'a> DataRef<'a, CompressAlgorithm> for CompressAlgorithm
Source§fn decode(buf: &'a [u8]) -> Result<(usize, CompressAlgorithm), DecodeError>where
CompressAlgorithm: Sized,
fn decode(buf: &'a [u8]) -> Result<(usize, CompressAlgorithm), DecodeError>where
CompressAlgorithm: Sized,
Decodes the reference type from a buffer. Read more
Source§fn decode_length_delimited(src: &'a [u8]) -> Result<(usize, Self), DecodeError>where
Self: Sized,
fn decode_length_delimited(src: &'a [u8]) -> Result<(usize, Self), DecodeError>where
Self: Sized,
Decodes a length-delimited reference instance of the message from the buffer.
Source§impl Debug for CompressAlgorithm
impl Debug for CompressAlgorithm
Source§impl Default for CompressAlgorithm
impl Default for CompressAlgorithm
Source§fn default() -> CompressAlgorithm
fn default() -> CompressAlgorithm
Returns the “default value” for a type. Read more
Source§impl<'de> Deserialize<'de> for CompressAlgorithm
impl<'de> Deserialize<'de> for CompressAlgorithm
Source§fn deserialize<D>(
deserializer: D,
) -> Result<CompressAlgorithm, <D as Deserializer<'de>>::Error>where
D: Deserializer<'de>,
fn deserialize<D>(
deserializer: D,
) -> Result<CompressAlgorithm, <D as Deserializer<'de>>::Error>where
D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
Source§impl Display for CompressAlgorithm
impl Display for CompressAlgorithm
Source§impl From<CompressAlgorithmHelper> for CompressAlgorithm
impl From<CompressAlgorithmHelper> for CompressAlgorithm
Source§fn from(helper: CompressAlgorithmHelper) -> CompressAlgorithm
fn from(helper: CompressAlgorithmHelper) -> CompressAlgorithm
Converts to this type from the input type.
Source§impl From<u16> for CompressAlgorithm
impl From<u16> for CompressAlgorithm
Source§fn from(value: u16) -> CompressAlgorithm
fn from(value: u16) -> CompressAlgorithm
Converts to this type from the input type.
Source§impl FromStr for CompressAlgorithm
impl FromStr for CompressAlgorithm
Source§type Err = ParseCompressAlgorithmError
type Err = ParseCompressAlgorithmError
The associated error which can be returned from parsing.
Source§fn from_str(
s: &str,
) -> Result<CompressAlgorithm, <CompressAlgorithm as FromStr>::Err>
fn from_str( s: &str, ) -> Result<CompressAlgorithm, <CompressAlgorithm as FromStr>::Err>
Parses a string
s to return a value of this type. Read moreSource§impl Hash for CompressAlgorithm
impl Hash for CompressAlgorithm
Source§impl PartialEq for CompressAlgorithm
impl PartialEq for CompressAlgorithm
Source§impl Serialize for CompressAlgorithm
impl Serialize for CompressAlgorithm
Source§fn serialize<S>(
&self,
serializer: S,
) -> Result<<S as Serializer>::Ok, <S as Serializer>::Error>where
S: Serializer,
fn serialize<S>(
&self,
serializer: S,
) -> Result<<S as Serializer>::Ok, <S as Serializer>::Error>where
S: Serializer,
Serialize this value into the given Serde serializer. Read more
impl Copy for CompressAlgorithm
impl Eq for CompressAlgorithm
impl StructuralPartialEq for CompressAlgorithm
Auto Trait Implementations§
impl Freeze for CompressAlgorithm
impl RefUnwindSafe for CompressAlgorithm
impl Send for CompressAlgorithm
impl Sync for CompressAlgorithm
impl Unpin for CompressAlgorithm
impl UnwindSafe for CompressAlgorithm
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,
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Compare self to
key and return true if they are equal.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 more