Struct tower_async_http::compression::predicate::DefaultPredicate
source · pub struct DefaultPredicate(_);Available on crate features
compression-br or compression-deflate or compression-gzip or compression-zstd only.Expand description
The default predicate used by Compression and CompressionLayer.
This will compress responses unless:
- They’re gRPC, which has its own protocol specific compression scheme.
- It’s an image as determined by the
content-typestarting withimage/. - The response is less than 32 bytes.
Configuring the defaults
DefaultPredicate doesn’t support any configuration. Instead you can build your own predicate
by combining types in this module:
use tower_async_http::compression::predicate::{SizeAbove, NotForContentType, Predicate};
// slightly large min size than the default 32
let predicate = SizeAbove::new(256)
// still don't compress gRPC
.and(NotForContentType::GRPC)
// still don't compress images
.and(NotForContentType::IMAGES)
// also don't compress JSON
.and(NotForContentType::const_new("application/json"));Implementations§
Trait Implementations§
source§impl Clone for DefaultPredicate
impl Clone for DefaultPredicate
source§fn clone(&self) -> DefaultPredicate
fn clone(&self) -> DefaultPredicate
Returns a copy 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 Default for DefaultPredicate
impl Default for DefaultPredicate
source§impl Predicate for DefaultPredicate
impl Predicate for DefaultPredicate
Auto Trait Implementations§
impl RefUnwindSafe for DefaultPredicate
impl Send for DefaultPredicate
impl Sync for DefaultPredicate
impl Unpin for DefaultPredicate
impl UnwindSafe for DefaultPredicate
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