1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
mod node;
pub mod rbtree;
pub mod rbmap;
#[macro_use]
pub mod rbqueue;
mod helpers;
mod mapper;
#[cfg(test)]
mod rbtree_tests;
use node::Node;
use mapper::Mapper;
pub struct RBMap<K: PartialOrd, V> {
map: RBTree<Mapper<K, V>>
}
pub struct RBTree<T: PartialOrd> {
root: Node<T>,
contained: usize
}
pub struct RBQueue<T, P>
where P: Copy + Fn(&T, &T) -> std::cmp::Ordering {
root: Node<T>,
contained: usize,
cmp: P
}