Struct async_graphql::CacheControl
source · [−]Expand description
Cache control value
Examples
use async_graphql::*;
struct Query;
#[Object(cache_control(max_age = 60))]
impl Query {
#[graphql(cache_control(max_age = 30))]
async fn value1(&self) -> i32 {
0
}
#[graphql(cache_control(private))]
async fn value2(&self) -> i32 {
0
}
#[graphql(cache_control(no_cache))]
async fn value3(&self) -> i32 {
0
}
}
let schema = Schema::new(Query, EmptyMutation, EmptySubscription);
assert_eq!(
schema
.execute("{ value1 }")
.await
.into_result()
.unwrap()
.cache_control,
CacheControl {
public: true,
max_age: 30
}
);
assert_eq!(
schema
.execute("{ value2 }")
.await
.into_result()
.unwrap()
.cache_control,
CacheControl {
public: false,
max_age: 60
}
);
assert_eq!(
schema
.execute("{ value1 value2 }")
.await
.into_result()
.unwrap()
.cache_control,
CacheControl {
public: false,
max_age: 30
}
);
assert_eq!(
schema
.execute("{ value1 value2 value3 }")
.await
.into_result()
.unwrap()
.cache_control,
CacheControl {
public: false,
max_age: -1
}
);
Fields
public: bool
Scope is public, default is true.
max_age: i32
Cache max age, -1
represent no-cache
, default is 0.
Implementations
Trait Implementations
sourceimpl Clone for CacheControl
impl Clone for CacheControl
sourcefn clone(&self) -> CacheControl
fn clone(&self) -> CacheControl
Returns a copy of the value. Read more
1.0.0 · sourceconst fn clone_from(&mut self, source: &Self)
const fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source
. Read moresourceimpl Debug for CacheControl
impl Debug for CacheControl
sourceimpl Default for CacheControl
impl Default for CacheControl
sourceimpl PartialEq<CacheControl> for CacheControl
impl PartialEq<CacheControl> for CacheControl
sourcefn eq(&self, other: &CacheControl) -> bool
fn eq(&self, other: &CacheControl) -> bool
impl Copy for CacheControl
impl Eq for CacheControl
impl StructuralEq for CacheControl
impl StructuralPartialEq for CacheControl
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
sourceimpl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
const: unstable · sourcefn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
sourceimpl<Q, K> Equivalent<K> for Qwhere
Q: Eq + ?Sized,
K: Borrow<Q> + ?Sized,
impl<Q, K> Equivalent<K> for Qwhere
Q: Eq + ?Sized,
K: Borrow<Q> + ?Sized,
sourcefn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Compare self to
key
and return true
if they are equal.