28 # ifndef TPL_DYNLISTQUEUE_H 29 # define TPL_DYNLISTQUEUE_H 33 # include <ahIterator.H> 34 # include <ah-args-ctor.H> 36 # include <tpl_dynDlist.H> 55 public StlAlephIterator<DynListQueue<T>>
67 std::swap(num_items, __q.num_items);
95 num_items = rhs.num_items;
103 std::swap(num_items, rhs.num_items);
109 size_t size() const noexcept {
return num_items; }
127 T & ret_val = q.
append(data);
141 T & ret_val = q.
append(std::forward<T>(data));
146 T & append(
const T & data) {
return put(data); }
148 T & append(T && data)
150 return put(std::forward<T>(data));
153 T & insert(
const T & data) {
return put(data); }
155 T & insert(T && data)
157 return put(std::forward<T>(data));
199 template <
class Operation>
200 bool traverse(Operation & operation) noexcept(noexcept(operation))
206 template <
class Operation>
207 bool traverse(Operation & operation)
const noexcept(noexcept(operation))
213 template <
class Operation>
214 bool traverse(Operation && operation = Operation()) const
215 noexcept(noexcept(operation))
217 return q.
traverse(std::forward<Operation>(operation));
221 template <
class Operation>
222 bool traverse(Operation && operation = Operation())
223 noexcept(noexcept(operation))
225 return q.
traverse(std::forward<Operation>(operation));
244 # endif // TPL_DYNLISTQUEUE_H T & rear() const
Return a modifiable reference to the youngest item in the queue.
Definition: tpl_dynListQueue.H:179
Definition: htlist.H:1290
T remove_first()
Definition: htlist.H:1537
void empty() noexcept
empty the list
Definition: htlist.H:1598
Definition: tpl_dynListQueue.H:234
T & get_first() const
Definition: htlist.H:1584
bool is_empty() const noexcept
rioReturn true if this is empty
Definition: tpl_dynListQueue.H:112
bool traverse(Operation &operation) noexcept(noexcept(operation))
Definition: tpl_dynListQueue.H:200
bool is_empty() const noexcept
Definition: htlist.H:466
bool traverse(Operation &operation) noexcept(noexcept(operation))
Definition: htlist.H:67
bool traverse(Operation &operation) const noexcept(noexcept(operation))
Definition: tpl_dynListQueue.H:207
Definition: tpl_dynListQueue.H:50
DynListQueue(DynListQueue &&__q) noexcept
Construct in constant time a queue from __q
Definition: tpl_dynListQueue.H:81
T Item_Type
The type of set.
Definition: tpl_dynListQueue.H:116
void swap(DynListQueue &__q) noexcept
Swap this with __q in constant time.
Definition: tpl_dynListQueue.H:65
DynListQueue() noexcept
Contruct a empty queue.
Definition: tpl_dynListQueue.H:72
T & put(T &&data)
Definition: tpl_dynListQueue.H:139
bool traverse(Operation &&operation=Operation()) const noexcept(noexcept(operation))
Definition: tpl_dynListQueue.H:214
size_t size() const noexcept
Return the number of elements.
Definition: tpl_dynListQueue.H:109
T & front() const
Return a modifiable reference to the oldest item in the queue.
Definition: tpl_dynListQueue.H:173
void empty() noexcept
Empty the queue.
Definition: tpl_dynListQueue.H:185
DynList & swap(DynList &l) noexcept
Definition: htlist.H:1346
Definition: htlist.H:1622
T & append(const T &item)
Definition: htlist.H:1471
bool traverse(Operation &&operation=Operation()) noexcept(noexcept(operation))
Definition: tpl_dynListQueue.H:222
DynListQueue(const DynListQueue &__q)
Construc a copy of __q
Definition: tpl_dynListQueue.H:75
Definition: htlist.H:1323
T & put(const T &data)
The type of element.
Definition: tpl_dynListQueue.H:125
T & get_last() const
Definition: htlist.H:1572