pub trait Stack<T> {
// Required methods
fn new() -> Self;
fn len(&self) -> usize;
fn truncate(&mut self, size: usize);
fn push_value(&mut self, value: T) -> bool;
fn pop_value(&mut self) -> Option<T>;
fn stack_mut(&mut self) -> &mut [T];
// Provided methods
fn is_empty(&self) -> bool { ... }
fn reserve(&mut self, _size: usize) { ... }
}Required Methods§
fn new() -> Self
fn len(&self) -> usize
fn truncate(&mut self, size: usize)
fn push_value(&mut self, value: T) -> bool
fn pop_value(&mut self) -> Option<T>
fn stack_mut(&mut self) -> &mut [T]
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.