OSB_LIB::ItemMap::Iterator Struct Reference

Collaboration diagram for OSB_LIB::ItemMap::Iterator:

Collaboration graph
[legend]
List of all members.

Detailed Description

Iterator structure.

ToDo: This Iterator is a mess. The main problems are:
+ Accessing sub_ is tricky because from inside the Iterator we don't know if current_ points to a valid element. If it does not, we cannot access sub_. (That's also why op== is crippled and only compares current_.)
+ Node::Iterator is only the base of a class hierarchy. Thus, dealing with such iterators involves allocating memory for the respective type.

Definition at line 312 of file invoice.h.

Public Member Functions

Public Attributes


Constructor & Destructor Documentation

OSB_LIB::ItemMap::Iterator::Iterator (  )  [inline]

Definition at line 313 of file invoice.h.

OSB_LIB::ItemMap::Iterator::Iterator ( const NodeList::iterator &  nli  )  [inline, explicit]

Definition at line 314 of file invoice.h.

OSB_LIB::ItemMap::Iterator::~Iterator (  )  [inline]

Definition at line 316 of file invoice.h.

References end_, and sub_.

OSB_LIB::ItemMap::Iterator::Iterator ( const Iterator rhs  ) 


Member Function Documentation

InvoiceItem* OSB_LIB::ItemMap::Iterator::operator * (  )  const

bool OSB_LIB::ItemMap::Iterator::operator!= ( const Iterator rhs  )  const

Iterator OSB_LIB::ItemMap::Iterator::operator++ ( int   ) 

Iterator OSB_LIB::ItemMap::Iterator::operator++ (  ) 

Iterator& OSB_LIB::ItemMap::Iterator::operator= ( const Iterator rhs  ) 

bool OSB_LIB::ItemMap::Iterator::operator== ( const Iterator rhs  )  const


Member Data Documentation

NodeList::iterator OSB_LIB::ItemMap::Iterator::current_

Definition at line 325 of file invoice.h.

Node::Iterator* OSB_LIB::ItemMap::Iterator::end_

Definition at line 328 of file invoice.h.

Referenced by ~Iterator().

Node::Iterator* OSB_LIB::ItemMap::Iterator::sub_ [mutable]

Sub_ is mutable so that op* can be const.

Definition at line 327 of file invoice.h.

Referenced by ~Iterator().


The documentation for this struct was generated from the following file:
Generated on Sat Sep 2 14:09:57 2006 for OSB Library by  doxygen 1.4.7