eldek-tad 0.9.1

A project for learning Abstract Data Types (ADTs) in Rust. Heavily inspired by Java's implementation.
Documentation
1
2
3
4
5
6
7
8
9
10
11
12
13
use crate::queue::{queue::Queue, queue_error::QueueError};


pub trait QueueTrait<T:Clone>{
    fn new() -> Queue<T>;
    fn from_vec(values: Vec<T>)->Queue<T>;
    fn enqueue(&mut self, value: T);
    fn dequeue(&mut self) -> Result<T, QueueError>;
    fn peek(&self) -> Result<&T, QueueError>;
    fn peek_mut(&mut self) -> Result<&mut T, QueueError>;
    fn size(&self) -> usize;
    fn is_empty(&self)->bool;
}