Struct sfo_http::http_server::http::cache::CacheControl
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§
§impl CacheControl
impl CacheControl
pub fn new() -> CacheControl
pub fn new() -> CacheControl
Create a new instance of CacheControl.
pub 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.
pub fn name(&self) -> HeaderName
pub fn name(&self) -> HeaderName
Get the HeaderName.
pub fn value(&self) -> HeaderValue
pub fn value(&self) -> HeaderValue
Get the HeaderValue.
pub fn push(&mut self, directive: CacheDirective)
pub fn push(&mut self, directive: CacheDirective)
Push a directive into the list of entries.
pub fn iter(&self) -> Iter<'_>
pub fn iter(&self) -> Iter<'_>
An iterator visiting all server entries.
pub fn iter_mut(&mut self) -> IterMut<'_>
pub fn iter_mut(&mut self) -> IterMut<'_>
An iterator visiting all server entries.
Trait Implementations§
§impl Debug for CacheControl
impl Debug for CacheControl
§impl<'a> IntoIterator for &'a CacheControl
impl<'a> IntoIterator for &'a CacheControl
§type Item = &'a CacheDirective
type Item = &'a CacheDirective
The type of the elements being iterated over.
§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
§impl<'a> IntoIterator for &'a mut CacheControl
impl<'a> IntoIterator for &'a mut CacheControl
§type Item = &'a mut CacheDirective
type Item = &'a mut CacheDirective
The type of the elements being iterated over.
§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
§impl IntoIterator for CacheControl
impl IntoIterator for CacheControl
§type Item = CacheDirective
type Item = CacheDirective
The type of the elements being iterated over.
§fn into_iter(self) -> <CacheControl as IntoIterator>::IntoIter
fn into_iter(self) -> <CacheControl as IntoIterator>::IntoIter
Creates an iterator from a value. Read more
§impl ToHeaderValues for CacheControl
impl ToHeaderValues for CacheControl
§type Iter = IntoIter<HeaderValue>
type Iter = IntoIter<HeaderValue>
Returned iterator over header values which this type may correspond to.
§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 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