Crate stacking[−][src]
Expand description
stacking
is a module containing tools for building stacks in rust
Stack
stacking
comes with a Stack
builtin.
It only supports pop
, push
and len
as actions
Examples
use stacking::stacks::Stack; let mut stack: Stack<i32> = Stack::new(); assert_eq!(stack.len(), 0); stack.push(4); assert_eq!(stack.len(), 1); assert_eq!(stack.pop(), Some(4));
This simple example creates a stack, appends 4
to it and pops it off again.
Nodes
stacking
also contains a Node
.
A Node
can be used to build custom stacks or other data structures with specific orders.
Examples
use stacking::nodes::Node; let mut n1: Node<i32> = Node::new(None, None, 15); let mut n2: Node<i32> = Node::new(None, Some(n1.clone()), 14); n1.set_prev(Some(n2.clone())); assert_eq!(n1.get_val(), 15); assert_eq!(n2.get_val(), 14);
This will create two nodes referencing each other to create an order in which after n2
comes n1
.
Re-exports
pub use stack::*;