Skip to main content

StackLike

Trait StackLike 

Source
pub trait StackLike<T>: Collection<Item = T> {
    // Required methods
    fn top(&self) -> Option<&T>;
    fn pop(&mut self) -> Option<T>;
    fn push(&mut self, element: T);

    // Provided methods
    fn fork(&self) -> Self
       where Self: Sized + Clone { ... }
    fn pushes<I>(&mut self, elements: I)
       where I: IntoIterator<Item = T> { ... }
    fn replace_top(&mut self, new_top: T) -> Option<T> { ... }
}

Required Methods§

Source

fn top(&self) -> Option<&T>

Source

fn pop(&mut self) -> Option<T>

Source

fn push(&mut self, element: T)

Provided Methods§

Source

fn fork(&self) -> Self
where Self: Sized + Clone,

Source

fn pushes<I>(&mut self, elements: I)
where I: IntoIterator<Item = T>,

Source

fn replace_top(&mut self, new_top: T) -> Option<T>

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.

Implementors§