pub struct Config {
pub target_output_size: u64,
pub approx_compr_ratio: f64,
pub kind: CompressorType,
pub compression_algo: CompressionAlgo,
}
Available on crate feature
protocol
only.Expand description
Configuration for the compressor itself.
Fields§
§target_output_size: u64
TargetOutputSize is the target size that the compressed data should reach. The shadow compressor guarantees that the compressed data stays below this bound. The ratio compressor might go over.
approx_compr_ratio: f64
ApproxComprRatio to assume (only ratio compressor). Should be slightly smaller than average from experiments to avoid the chances of creating a small additional leftover frame.
kind: CompressorType
Kind of compressor to use. Must be one of KindKeys. If unset, NewCompressor will default to RatioKind.
compression_algo: CompressionAlgo
Type of compression algorithm to use. Must be one of [zlib, brotli-(9|10|11)]
Trait Implementations§
Source§impl From<Config> for RatioCompressor
impl From<Config> for RatioCompressor
Source§fn from(config: Config) -> RatioCompressor
fn from(config: Config) -> RatioCompressor
Converts to this type from the input type.
Source§impl From<Config> for ShadowCompressor
impl From<Config> for ShadowCompressor
Source§fn from(config: Config) -> ShadowCompressor
fn from(config: Config) -> ShadowCompressor
Converts to this type from the input type.
Auto Trait Implementations§
impl Freeze for Config
impl RefUnwindSafe for Config
impl Send for Config
impl Sync for Config
impl Unpin for Config
impl UnwindSafe for Config
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<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