pub trait Storage<T: 'static>: 'static {
// Required methods
fn is_full(&self) -> bool;
fn is_empty(&self) -> bool;
fn push(&mut self, t: T) -> Result<(), StorageFull>;
fn try_pop(&mut self) -> Option<T>;
}pub trait Storage<T: 'static>: 'static {
// Required methods
fn is_full(&self) -> bool;
fn is_empty(&self) -> bool;
fn push(&mut self, t: T) -> Result<(), StorageFull>;
fn try_pop(&mut self) -> Option<T>;
}