24 #ifndef PPL_EList_defs_hh
25 #define PPL_EList_defs_hh 1
61 iterator
insert(iterator position, T& obj);
67 iterator
erase(iterator position);
79 const_iterator
begin()
const;
82 const_iterator
end()
const;
90 #endif // !defined(PPL_EList_defs_hh)
EList()
Constructs an empty list.
iterator begin()
Returns an iterator pointing to the beginning of the list.
void push_back(T &obj)
Pushes obj to the back of the list.
Doubly_Linked_Object * erase()
Erases *this from the chain and returns a pointer to the next element.
void push_front(T &obj)
Pushes obj to the front of the list.
iterator end()
Returns an iterator pointing one past the last element in the list.
A (base) class for doubly linked objects.
EList_Iterator< const T > const_iterator
A const iterator to traverse the list.
EList_Iterator< T > iterator
A non-const iterator to traverse the list.
A class providing iterators for embedded lists.
bool empty() const
Returns true if and only if the list is empty.
bool OK() const
Checks if all the invariants are satisfied.
~EList()
Destructs the list and all the elements in it.
A simple kind of embedded list (i.e., a doubly linked objects where the links are embedded in the obj...
iterator insert(iterator position, T &obj)
Inserts obj just before position and returns an iterator that points to the inserted object...