Struct ExtensionCacheLimits
pub struct ExtensionCacheLimits { /* private fields */ }Expand description
Bounded retention limits for extension runtime caches.
Implementations§
§impl ExtensionCacheLimits
impl ExtensionCacheLimits
pub const fn new(max_entries: NonZero<usize>) -> ExtensionCacheLimits
pub const fn new(max_entries: NonZero<usize>) -> ExtensionCacheLimits
Build limits from a maximum entry count and the default byte bound.
§Examples
use std::num::NonZeroUsize;
use tenferro_runtime::ExtensionCacheLimits;
let limits = ExtensionCacheLimits::new(NonZeroUsize::new(4).unwrap());
assert_eq!(limits.max_entries().get(), 4);
assert!(limits.max_retained_bytes().is_some());pub const fn max_entries(self) -> NonZero<usize>
pub const fn max_entries(self) -> NonZero<usize>
Maximum entries retained by the store.
pub const fn max_retained_bytes(self) -> Option<NonZero<usize>>
pub const fn max_retained_bytes(self) -> Option<NonZero<usize>>
Maximum logical retained bytes, when configured.
pub const fn with_max_retained_bytes(
self,
max_retained_bytes: NonZero<usize>,
) -> ExtensionCacheLimits
pub const fn with_max_retained_bytes( self, max_retained_bytes: NonZero<usize>, ) -> ExtensionCacheLimits
Return limits with a new logical retained-byte bound.
§Examples
use std::num::NonZeroUsize;
use tenferro_runtime::ExtensionCacheLimits;
let limits = ExtensionCacheLimits::default()
.with_max_retained_bytes(NonZeroUsize::new(1024).unwrap());
assert_eq!(limits.max_retained_bytes().unwrap().get(), 1024);Trait Implementations§
§impl Clone for ExtensionCacheLimits
impl Clone for ExtensionCacheLimits
§fn clone(&self) -> ExtensionCacheLimits
fn clone(&self) -> ExtensionCacheLimits
Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read more§impl Debug for ExtensionCacheLimits
impl Debug for ExtensionCacheLimits
§impl Default for ExtensionCacheLimits
impl Default for ExtensionCacheLimits
§fn default() -> ExtensionCacheLimits
fn default() -> ExtensionCacheLimits
Returns the “default value” for a type. Read more
§impl PartialEq for ExtensionCacheLimits
impl PartialEq for ExtensionCacheLimits
§fn eq(&self, other: &ExtensionCacheLimits) -> bool
fn eq(&self, other: &ExtensionCacheLimits) -> bool
Tests for
self and other values to be equal, and is used by ==.impl Copy for ExtensionCacheLimits
impl Eq for ExtensionCacheLimits
impl StructuralPartialEq for ExtensionCacheLimits
Auto Trait Implementations§
impl Freeze for ExtensionCacheLimits
impl RefUnwindSafe for ExtensionCacheLimits
impl Send for ExtensionCacheLimits
impl Sync for ExtensionCacheLimits
impl Unpin for ExtensionCacheLimits
impl UnsafeUnpin for ExtensionCacheLimits
impl UnwindSafe for ExtensionCacheLimits
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,
§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Compare self to
key and return true if they are equal.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