summaryrefslogtreecommitdiffstats
path: root/third_party/rust/headers/src/disabled/accept_encoding.rs
diff options
context:
space:
mode:
authorDaniel Baumann <daniel.baumann@progress-linux.org>2024-04-07 19:33:14 +0000
committerDaniel Baumann <daniel.baumann@progress-linux.org>2024-04-07 19:33:14 +0000
commit36d22d82aa202bb199967e9512281e9a53db42c9 (patch)
tree105e8c98ddea1c1e4784a60a5a6410fa416be2de /third_party/rust/headers/src/disabled/accept_encoding.rs
parentInitial commit. (diff)
downloadfirefox-esr-upstream.tar.xz
firefox-esr-upstream.zip
Adding upstream version 115.7.0esr.upstream/115.7.0esrupstream
Signed-off-by: Daniel Baumann <daniel.baumann@progress-linux.org>
Diffstat (limited to 'third_party/rust/headers/src/disabled/accept_encoding.rs')
-rw-r--r--third_party/rust/headers/src/disabled/accept_encoding.rs72
1 files changed, 72 insertions, 0 deletions
diff --git a/third_party/rust/headers/src/disabled/accept_encoding.rs b/third_party/rust/headers/src/disabled/accept_encoding.rs
new file mode 100644
index 0000000000..5eb3adf50b
--- /dev/null
+++ b/third_party/rust/headers/src/disabled/accept_encoding.rs
@@ -0,0 +1,72 @@
+use {Encoding, QualityItem};
+
+header! {
+ /// `Accept-Encoding` header, defined in
+ /// [RFC7231](http://tools.ietf.org/html/rfc7231#section-5.3.4)
+ ///
+ /// The `Accept-Encoding` header field can be used by user agents to
+ /// indicate what response content-codings are
+ /// acceptable in the response. An `identity` token is used as a synonym
+ /// for "no encoding" in order to communicate when no encoding is
+ /// preferred.
+ ///
+ /// # ABNF
+ ///
+ /// ```text
+ /// Accept-Encoding = #( codings [ weight ] )
+ /// codings = content-coding / "identity" / "*"
+ /// ```
+ ///
+ /// # Example values
+ /// * `compress, gzip`
+ /// * ``
+ /// * `*`
+ /// * `compress;q=0.5, gzip;q=1`
+ /// * `gzip;q=1.0, identity; q=0.5, *;q=0`
+ ///
+ /// # Examples
+ /// ```
+ /// use headers::{Headers, AcceptEncoding, Encoding, qitem};
+ ///
+ /// let mut headers = Headers::new();
+ /// headers.set(
+ /// AcceptEncoding(vec![qitem(Encoding::Chunked)])
+ /// );
+ /// ```
+ /// ```
+ /// use headers::{Headers, AcceptEncoding, Encoding, qitem};
+ ///
+ /// let mut headers = Headers::new();
+ /// headers.set(
+ /// AcceptEncoding(vec![
+ /// qitem(Encoding::Chunked),
+ /// qitem(Encoding::Gzip),
+ /// qitem(Encoding::Deflate),
+ /// ])
+ /// );
+ /// ```
+ /// ```
+ /// use headers::{Headers, AcceptEncoding, Encoding, QualityItem, q, qitem};
+ ///
+ /// let mut headers = Headers::new();
+ /// headers.set(
+ /// AcceptEncoding(vec![
+ /// qitem(Encoding::Chunked),
+ /// QualityItem::new(Encoding::Gzip, q(600)),
+ /// QualityItem::new(Encoding::EncodingExt("*".to_owned()), q(0)),
+ /// ])
+ /// );
+ /// ```
+ (AcceptEncoding, ACCEPT_ENCODING) => (QualityItem<Encoding>)*
+
+ test_accept_encoding {
+ // From the RFC
+ test_header!(test1, vec![b"compress, gzip"]);
+ test_header!(test2, vec![b""], Some(AcceptEncoding(vec![])));
+ test_header!(test3, vec![b"*"]);
+ // Note: Removed quality 1 from gzip
+ test_header!(test4, vec![b"compress;q=0.5, gzip"]);
+ // Note: Removed quality 1 from gzip
+ test_header!(test5, vec![b"gzip, identity; q=0.5, *;q=0"]);
+ }
+}