21 #ifndef ELM_AVL_QUEUE_H_
22 #define ELM_AVL_QUEUE_H_
24 #include <elm/avl/GenTree.h>
26 namespace elm {
namespace avl {
28 template <
class T,
class C = elm::Comparator<T>,
class A = DefaultAlloc>
37 inline const T&
head()
const {
39 ASSERTP(n !=
nullptr,
"empty queue");
40 while(n->
left() !=
nullptr) n = n->
left();
Node * leftMost(Stack &s, Node *n)
Definition: avl_GenTree.cpp:443
Definition: GenTree.h:100
Node * left(void)
Definition: GenTree.h:104
T data
Definition: GenTree.h:107
Definition: GenTree.h:114
void remove(const T &x)
Definition: GenTree.h:232
void add(const T &item)
Definition: GenTree.h:222
Node * root(void) const
Definition: GenTree.h:112
void clear(void)
Definition: GenTree.h:206
T t
Definition: Queue.h:31
GenTree< T, IdAdapter< T >, C, A > base_t
Definition: Queue.h:33
Queue< T, C > self_t
Definition: Queue.h:32
const T & head() const
Definition: Queue.h:37
void put(const T &x)
Definition: Queue.h:53
void reset()
Definition: Queue.h:55
T get()
Definition: Queue.h:44