pub struct MemoryBudget { /* private fields */ }Expand description
A validated upper bound for memory retained by one execution context.
Implementations§
Source§impl MemoryBudget
impl MemoryBudget
Sourcepub const fn new(bytes: usize) -> Result<Self, MemoryBudgetError>
pub const fn new(bytes: usize) -> Result<Self, MemoryBudgetError>
Creates a non-zero budget.
There is no compile-time maximum. A ceiling written into a library is a ceiling nobody can raise, and a caller reading a hundred-gigabyte entry needs a working set no constant here could have anticipated.
§Errors
Returns MemoryBudgetError::Zero when bytes is zero, because a
zero-byte budget cannot make forward progress.
Trait Implementations§
Source§impl Clone for MemoryBudget
impl Clone for MemoryBudget
impl Copy for MemoryBudget
Source§impl Debug for MemoryBudget
impl Debug for MemoryBudget
Source§impl Default for MemoryBudget
impl Default for MemoryBudget
impl Eq for MemoryBudget
Source§impl PartialEq for MemoryBudget
impl PartialEq for MemoryBudget
impl StructuralPartialEq for MemoryBudget
Auto Trait Implementations§
impl Freeze for MemoryBudget
impl RefUnwindSafe for MemoryBudget
impl Send for MemoryBudget
impl Sync for MemoryBudget
impl Unpin for MemoryBudget
impl UnsafeUnpin for MemoryBudget
impl UnwindSafe for MemoryBudget
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§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§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