rama_http_headers/
resp_builder_ext.rs1use rama_http_types::response;
2
3use crate::HeaderEncode;
4
5pub trait HttpResponseBuilderExt: self::sealed::Sealed {
7 #[must_use]
9 fn typed_header<H>(self, header: H) -> Self
10 where
11 H: HeaderEncode;
12}
13
14impl HttpResponseBuilderExt for response::Builder {
15 fn typed_header<H>(self, header: H) -> Self
16 where
17 H: HeaderEncode,
18 {
19 if let Some(value) = header.encode_to_value() {
20 self.header(H::name(), value)
21 } else {
22 self
23 }
24 }
25}
26
27mod sealed {
28 use super::*;
29
30 pub trait Sealed: Sized {}
31 impl Sealed for response::Builder {}
32}