pub trait Stack<T> {
// Required methods
fn push(&mut self, _: T);
fn pop(&mut self) -> Option<T>;
fn top(&self) -> Option<&T>;
fn top_mut(&mut self) -> Option<&mut T>;
}
pub trait Stack<T> {
// Required methods
fn push(&mut self, _: T);
fn pop(&mut self) -> Option<T>;
fn top(&self) -> Option<&T>;
fn top_mut(&mut self) -> Option<&mut T>;
}