Main Page | Class Hierarchy | Class List | File List | Class Members | File Members

cmt_list< T >::iterator Class Reference

#include <cmt_list.h>

Collaboration diagram for cmt_list< T >::iterator:

Collaboration graph
[legend]
List of all members.

Public Member Functions

 iterator ()
 iterator (Node node)
iteratoroperator++ ()
iteratoroperator-- ()
int operator== (const iterator &other) const
int operator!= (const iterator &other) const
T & operator * () const
Node get_node () const

Private Attributes

Node m_node

template<class T>
class cmt_list< T >::iterator


Constructor & Destructor Documentation

template<class T>
cmt_list< T >::iterator::iterator  )  [inline]
 

Definition at line 39 of file cmt_list.h.

References cmt_list< T >::iterator::m_node.

00039                 : m_node (0)
00040     {
00041     }

template<class T>
cmt_list< T >::iterator::iterator Node  node  )  [inline]
 

Definition at line 43 of file cmt_list.h.

References cmt_list< T >::iterator::m_node, and cmt_list< T >::Node.

00043                          : m_node (node)
00044     {
00045     }


Member Function Documentation

template<class T>
Node cmt_list< T >::iterator::get_node  )  const [inline]
 

Definition at line 86 of file cmt_list.h.

References cmt_list< T >::iterator::m_node, and cmt_list< T >::Node.

Referenced by cmt_list< T >::erase(), cmt_list< T >::exchange(), cmt_list< T >::insert_after(), cmt_list< T >::insert_before(), cmt_list< T >::move_after(), and cmt_list< T >::move_before().

00087     {
00088       return (m_node);
00089     }

template<class T>
T& cmt_list< T >::iterator::operator *  )  const [inline]
 

Definition at line 72 of file cmt_list.h.

References cmt_list< T >::iterator::m_node, and cmt_list_node< T >::m_t.

00073     {
00074       if (m_node == 0)
00075         {
00076           static T t;
00077 
00078           return (t);
00079         }
00080       else
00081         {
00082           return (m_node->m_t);
00083         }
00084     }

template<class T>
int cmt_list< T >::iterator::operator!= const iterator other  )  const [inline]
 

Definition at line 66 of file cmt_list.h.

00067     {
00068       const iterator& me = *this;
00069       return (! (me == other));
00070     }

template<class T>
iterator& cmt_list< T >::iterator::operator++  )  [inline]
 

Definition at line 47 of file cmt_list.h.

References cmt_list< T >::iterator::m_node, and cmt_list_node< T >::m_right.

00048     {
00049       if (m_node == 0) return (*this);
00050       m_node = m_node->m_right;
00051       return (*this);
00052     }

template<class T>
iterator& cmt_list< T >::iterator::operator--  )  [inline]
 

Definition at line 54 of file cmt_list.h.

References cmt_list_node< T >::m_left, and cmt_list< T >::iterator::m_node.

00055     {
00056       if (m_node == 0) return (*this);
00057       m_node = m_node->m_left;
00058       return (*this);
00059     }

template<class T>
int cmt_list< T >::iterator::operator== const iterator other  )  const [inline]
 

Definition at line 61 of file cmt_list.h.

References cmt_list< T >::iterator::m_node.

00062     {
00063       return (m_node == other.m_node);
00064     }


Member Data Documentation

template<class T>
Node cmt_list< T >::iterator::m_node [private]
 

Definition at line 92 of file cmt_list.h.

Referenced by cmt_list< T >::iterator::get_node(), cmt_list< T >::iterator::iterator(), cmt_list< T >::iterator::operator *(), cmt_list< T >::iterator::operator++(), cmt_list< T >::iterator::operator--(), and cmt_list< T >::iterator::operator==().


The documentation for this class was generated from the following file:
Generated on Mon May 2 10:25:29 2005 for CMT by doxygen 1.3.5