pub struct DataBudget { /* private fields */ }
Implementations§
source§impl DataBudget
impl DataBudget
sourcepub fn restricted() -> Self
pub fn restricted() -> Self
Create a data budget with max bytes, used for tests
pub fn take(&self, size: usize) -> bool
sourcepub fn update<F>(&self, duration_millis: u64, updater: F) -> usize
pub fn update<F>(&self, duration_millis: u64, updater: F) -> usize
Updates the budget if at least given milliseconds has passed since last update. Updater function maps current value of bytes to the new one. Returns current data-budget after the update.
pub fn check(&self, size: usize) -> bool
Trait Implementations§
source§impl Default for DataBudget
impl Default for DataBudget
source§fn default() -> DataBudget
fn default() -> DataBudget
Returns the “default value” for a type. Read more
Auto Trait Implementations§
impl !Freeze for DataBudget
impl RefUnwindSafe for DataBudget
impl Send for DataBudget
impl Sync for DataBudget
impl Unpin for DataBudget
impl UnwindSafe for DataBudget
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> 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