Tools.h++ Class Reference

Table Of Contents
Special Methods for Lists
void
merge(rw_slist& donor);
Assuming both donor and self are sorted, moves every item from donor into self, leaving
donor empty, and self sorted. If either list is unsorted, the move will take place, but the
result may not be sorted. This method does not copy or destroy the items in donor, but
re-links list nodes into self.
void
splice(iterator to, rw_slist<T>& donor);
Insert the entire contents of donor into self, just before the position referenced by to,
leaving donor empty. This method does not copy or destroy any of the items moved, but
re-links the list nodes from donor into self.
void
splice(iterator to, rw_slist<T>& donor, iterator from);
Remove from donor and insert into self, just before location to, the item referenced by
from. If from does not reference an actual item contained in donor the effect is undefined.
This method does not copy or destroy the item referenced by from, but re-links the node
containing it from donor into self.
void
splice(iterator to, rw_slist<T>& donor, iterator from_start,
iterator from_bound);
Remove from donor and insert into self just before location to, the items referenced by the
range beginning with from_start and bounded by from_bound. If that range does not refer
to items contained by donor, the effect is undefined. This method does not copy or destroy
the items referenced by the range, but re-links those list nodes from donor into self.
Related Global Operators
bool
operator==(const rw_slist<T>& lhs, const rw_slist<T>& rhs);
Returns true if lhs and rhs have the same number of elements and each element of rhs tests
equal (T::operator==() or equivalent) to the corresponding element of lhs.
bool
operator<(const rw_slist<T>& lhs, const rw_slist<T>& rhs);
Returns the result of calling
lexicographical_compare(lhs.begin(), lhs.end(),
rhs.begin(), rhs.end());