Struct tower_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-type
starting 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_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