pub struct CacheLayer { /* private fields */ }
Available on non-WebAssembly only.
Expand description
A provider layer that caches RPC responses and serves them on subsequent requests.
In order to initialize the caching layer, the path to the cache file is provided along with the max number of items that are stored in the in-memory LRU cache.
One can load the cache from the file system by calling load_cache
and save the cache to the
file system by calling save_cache
.
Implementations§
source§impl CacheLayer
impl CacheLayer
sourcepub fn new(max_items: u32) -> Self
pub fn new(max_items: u32) -> Self
Instantiate a new cache layer with the the maximum number of items to store.
sourcepub const fn max_items(&self) -> u32
pub const fn max_items(&self) -> u32
Returns the maximum number of items that can be stored in the cache, set at initialization.
sourcepub fn cache(&self) -> SharedCache
pub fn cache(&self) -> SharedCache
Returns the shared cache.
Trait Implementations§
source§impl Clone for CacheLayer
impl Clone for CacheLayer
source§fn clone(&self) -> CacheLayer
fn clone(&self) -> CacheLayer
Returns a copy of the value. Read more
1.0.0 · source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source
. Read moresource§impl Debug for CacheLayer
impl Debug for CacheLayer
Auto Trait Implementations§
impl Freeze for CacheLayer
impl !RefUnwindSafe for CacheLayer
impl Send for CacheLayer
impl Sync for CacheLayer
impl Unpin for CacheLayer
impl !UnwindSafe for CacheLayer
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
source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
source§unsafe fn clone_to_uninit(&self, dst: *mut T)
unsafe fn clone_to_uninit(&self, dst: *mut T)
🔬This is a nightly-only experimental API. (
clone_to_uninit
)source§impl<T> Instrument for T
impl<T> Instrument for T
source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
source§impl<T> IntoEither for T
impl<T> IntoEither for T
source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self
into a Left
variant of Either<Self, Self>
if into_left
is true
.
Converts self
into a Right
variant of Either<Self, Self>
otherwise. Read moresource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self
into a Left
variant of Either<Self, Self>
if into_left(&self)
returns true
.
Converts self
into a Right
variant of Either<Self, Self>
otherwise. Read more