kutil_transcoding/encoding.rs
1use std::fmt;
2
3/// Encodings in order from cheapest to decode to most expensive.
4pub const ENCODINGS_BY_DECODING_COST: &[Encoding] =
5 &[Encoding::Zstandard, Encoding::Deflate, Encoding::GZip, Encoding::Brotli];
6
7//
8// Encoding
9//
10
11/// HTTP encoding.
12#[derive(Clone, Debug, Default, Eq, Hash, PartialEq)]
13pub enum Encoding {
14 /// Identity.
15 #[default]
16 Identity,
17
18 /// Brotli.
19 Brotli,
20
21 /// Deflate.
22 Deflate,
23
24 /// GZip.
25 GZip,
26
27 /// Zstandard.
28 Zstandard,
29}
30
31impl fmt::Display for Encoding {
32 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
33 write!(formatter, "{:?}", self)
34 }
35}