pub trait RingBuf {
type Item;
// Required methods
fn new() -> Self;
fn with_capacity(cap: usize) -> Self;
fn capacity(&self) -> usize;
fn len(&self) -> usize;
fn can_push(&self) -> bool;
fn push(&mut self, item: Self::Item);
fn pop(&mut self) -> Self::Item;
// Provided method
fn is_empty(&self) -> bool { ... }
}
Expand description
A Ring Buffer of items
Required Associated Types§
Required Methods§
Sourcefn with_capacity(cap: usize) -> Self
fn with_capacity(cap: usize) -> Self
Creates a new instance of the Ring Buffer with the given capacity.
RingBuf
implementations are allowed to ignore the capacity
hint and
utilize their default capacity.
Sourcefn can_push(&self) -> bool
fn can_push(&self) -> bool
Returns true if there is enough space in the buffer to store another item.
Provided Methods§
Dyn Compatibility§
This trait is not dyn compatible.
In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.