pub struct SlidingCountWindow { /* private fields */ }Expand description
A sliding count window that maintains overlapping windows
Implementations§
Source§impl SlidingCountWindow
impl SlidingCountWindow
pub fn new(window_size: usize, slide_size: usize) -> Self
Add a shared event, returning window contents if slide interval reached.
Sourcepub fn current_count(&self) -> usize
pub fn current_count(&self) -> usize
Get current count of events in buffer (for debugging)
Sourcepub fn checkpoint(&self) -> WindowCheckpoint
pub fn checkpoint(&self) -> WindowCheckpoint
Create a checkpoint of the current window state.
Sourcepub fn restore(&mut self, cp: &WindowCheckpoint)
pub fn restore(&mut self, cp: &WindowCheckpoint)
Restore window state from a checkpoint.
Trait Implementations§
Auto Trait Implementations§
impl Freeze for SlidingCountWindow
impl RefUnwindSafe for SlidingCountWindow
impl Send for SlidingCountWindow
impl Sync for SlidingCountWindow
impl Unpin for SlidingCountWindow
impl UnsafeUnpin for SlidingCountWindow
impl UnwindSafe for SlidingCountWindow
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