pub struct CacheControl { /* private fields */ }
Expand description
A Cache-Control header.
§Examples
use http_types::Response;
use http_types::cache::{CacheControl, CacheDirective};
let mut entries = CacheControl::new();
entries.push(CacheDirective::Immutable);
entries.push(CacheDirective::NoStore);
let mut res = Response::new(200);
entries.apply(&mut res);
let entries = CacheControl::from_headers(res)?.unwrap();
let mut entries = entries.iter();
assert_eq!(entries.next().unwrap(), &CacheDirective::Immutable);
assert_eq!(entries.next().unwrap(), &CacheDirective::NoStore);
Implementations§
Source§impl CacheControl
impl CacheControl
Sourcepub fn new() -> CacheControl
pub fn new() -> CacheControl
Create a new instance of CacheControl
.
Sourcepub fn from_headers(
headers: impl AsRef<Headers>,
) -> Result<Option<CacheControl>, Error>
pub fn from_headers( headers: impl AsRef<Headers>, ) -> Result<Option<CacheControl>, Error>
Create a new instance from headers.
Sourcepub fn name(&self) -> HeaderName
pub fn name(&self) -> HeaderName
Get the HeaderName
.
Sourcepub fn value(&self) -> HeaderValue
pub fn value(&self) -> HeaderValue
Get the HeaderValue
.
Sourcepub fn push(&mut self, directive: CacheDirective)
pub fn push(&mut self, directive: CacheDirective)
Push a directive into the list of entries.
Trait Implementations§
Source§impl Debug for CacheControl
impl Debug for CacheControl
Source§impl<'a> IntoIterator for &'a CacheControl
impl<'a> IntoIterator for &'a CacheControl
Source§type Item = &'a CacheDirective
type Item = &'a CacheDirective
The type of the elements being iterated over.
Source§fn into_iter(self) -> <&'a CacheControl as IntoIterator>::IntoIter
fn into_iter(self) -> <&'a CacheControl as IntoIterator>::IntoIter
Creates an iterator from a value. Read more
Source§impl<'a> IntoIterator for &'a mut CacheControl
impl<'a> IntoIterator for &'a mut CacheControl
Source§type Item = &'a mut CacheDirective
type Item = &'a mut CacheDirective
The type of the elements being iterated over.
Source§fn into_iter(self) -> <&'a mut CacheControl as IntoIterator>::IntoIter
fn into_iter(self) -> <&'a mut CacheControl as IntoIterator>::IntoIter
Creates an iterator from a value. Read more
Source§impl IntoIterator for CacheControl
impl IntoIterator for CacheControl
Source§type Item = CacheDirective
type Item = CacheDirective
The type of the elements being iterated over.
Source§fn into_iter(self) -> <CacheControl as IntoIterator>::IntoIter
fn into_iter(self) -> <CacheControl as IntoIterator>::IntoIter
Creates an iterator from a value. Read more
Source§impl ToHeaderValues for CacheControl
impl ToHeaderValues for CacheControl
Source§type Iter = IntoIter<HeaderValue>
type Iter = IntoIter<HeaderValue>
Returned iterator over header values which this type may correspond to.
Source§fn to_header_values(
&self,
) -> Result<<CacheControl as ToHeaderValues>::Iter, Error>
fn to_header_values( &self, ) -> Result<<CacheControl as ToHeaderValues>::Iter, Error>
Converts this object to an iterator of resolved
HeaderValues
.Auto Trait Implementations§
impl Freeze for CacheControl
impl RefUnwindSafe for CacheControl
impl Send for CacheControl
impl Sync for CacheControl
impl Unpin for CacheControl
impl UnwindSafe for CacheControl
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