http_types::cache

Enum CacheDirective

Source
#[non_exhaustive]
pub enum CacheDirective {
Show 15 variants Immutable, MaxAge(Duration), MaxStale(Option<Duration>), MinFresh(Duration), MustRevalidate, NoCache, NoStore, NoTransform, OnlyIfCached, Private, ProxyRevalidate, Public, SMaxAge(Duration), StaleIfError(Duration), StaleWhileRevalidate(Duration),
}
Expand description

An HTTP Cache-Control directive.

Variants (Non-exhaustive)§

This enum is marked as non-exhaustive
Non-exhaustive enums could have additional variants added in future. Therefore, when matching against variants of non-exhaustive enums, an extra wildcard arm must be added to account for any future variants.
§

Immutable

The response body will not change over time.

§

MaxAge(Duration)

The maximum amount of time a resource is considered fresh.

§

MaxStale(Option<Duration>)

Indicates the client will accept a stale response.

§

MinFresh(Duration)

A response that will still be fresh for at least the specified duration.

§

MustRevalidate

Once a response is stale, a fresh response must be retrieved.

§

NoCache

The response may be cached, but must always be revalidated before being used.

§

NoStore

The response may not be cached.

§

NoTransform

An intermediate cache or proxy should not edit the response body, Content-Encoding, Content-Range, or Content-Type.

§

OnlyIfCached

Do not use the network for a response.

§

Private

The response may be stored only by a browser’s cache, even if the response is normally non-cacheable.

§

ProxyRevalidate

Like must-revalidate, but only for shared caches (e.g., proxies).

§

Public

The response may be stored by any cache, even if the response is normally non-cacheable.

§

SMaxAge(Duration)

Overrides max-age or the Expires header, but only for shared caches.

§

StaleIfError(Duration)

The client will accept a stale response if retrieving a fresh one fails.

§

StaleWhileRevalidate(Duration)

Indicates the client will accept a stale response, while asynchronously checking in the background for a fresh one.

Implementations§

Source§

impl CacheDirective

Source

pub fn valid_in_req(&self) -> bool

Check whether this directive is valid in an HTTP request.

Source

pub fn valid_in_res(&self) -> bool

Check whether this directive is valid in an HTTP response.

Trait Implementations§

Source§

impl Clone for CacheDirective

Source§

fn clone(&self) -> CacheDirective

Returns a copy of the value. Read more
1.0.0 · Source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
Source§

impl Debug for CacheDirective

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
Source§

impl From<CacheDirective> for HeaderValue

Source§

fn from(directive: CacheDirective) -> Self

Converts to this type from the input type.
Source§

impl PartialEq for CacheDirective

Source§

fn eq(&self, other: &CacheDirective) -> bool

Tests for self and other values to be equal, and is used by ==.
1.0.0 · Source§

fn ne(&self, other: &Rhs) -> bool

Tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
Source§

impl Eq for CacheDirective

Source§

impl StructuralPartialEq for CacheDirective

Auto Trait Implementations§

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> CloneToUninit for T
where T: Clone,

Source§

unsafe fn clone_to_uninit(&self, dst: *mut u8)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dst. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T> Instrument for T

Source§

fn instrument(self, span: Span) -> Instrumented<Self>

Instruments this type with the provided Span, returning an Instrumented wrapper. Read more
Source§

fn in_current_span(self) -> Instrumented<Self>

Instruments this type with the current Span, returning an Instrumented wrapper. Read more
Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T> Same for T

Source§

type Output = T

Should always be Self
Source§

impl<T> ToOwned for T
where T: Clone,

Source§

type Owned = T

The resulting type after obtaining ownership.
Source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
Source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
Source§

impl<V, T> VZip<V> for T
where V: MultiLane<T>,

Source§

fn vzip(self) -> V

Source§

impl<T> WithSubscriber for T

Source§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a WithDispatch wrapper. Read more
Source§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a WithDispatch wrapper. Read more
Source§

impl<T> ErasedDestructor for T
where T: 'static,

Source§

impl<T> MaybeSendSync for T