pub trait Header {
// Required methods
fn name() -> &'static HeaderName;
fn decode<'i, I>(values: &mut I) -> Result<Self, Error>
where Self: Sized,
I: Iterator<Item = &'i HeaderValue>;
fn encode<E>(&self, values: &mut E)
where E: Extend<HeaderValue>;
}
Expand description
A trait for any object that will represent a header field and value.
This trait represents the construction and identification of headers, and contains trait-object unsafe methods.
Required Methods§
sourcefn name() -> &'static HeaderName
fn name() -> &'static HeaderName
The name of this header.
sourcefn decode<'i, I>(values: &mut I) -> Result<Self, Error>
fn decode<'i, I>(values: &mut I) -> Result<Self, Error>
Decode this type from an iterator of HeaderValue
s.
sourcefn encode<E>(&self, values: &mut E)where
E: Extend<HeaderValue>,
fn encode<E>(&self, values: &mut E)where
E: Extend<HeaderValue>,
Encode this type to a HeaderMap
.
This function should be infallible. Any errors converting to a
HeaderValue
should have been caught when parsing or constructing
this value.
Object Safety§
This trait is not object safe.