XMLStorage::XMLChildrenFilter::iterator Struct Reference

internal iterator class More...

#include <xmlstorage.h>

Collaboration diagram for XMLStorage::XMLChildrenFilter::iterator:

Collaboration graph
[legend]

Public Types

typedef XMLNode::Children::iterator BaseIterator

Public Member Functions

 iterator (BaseIterator begin, BaseIterator end, const XS_String &filter_name)
 operator BaseIterator ()
const XMLNodeoperator * () const
XMLNodeoperator * ()
iteratoroperator++ ()
iterator operator++ (int)
bool operator== (const BaseIterator &other) const
bool operator!= (const BaseIterator &other) const

Protected Member Functions

void search_next ()

Protected Attributes

BaseIterator _cur
BaseIterator _end
XS_String _filter_name

Detailed Description

internal iterator class

Definition at line 1070 of file xmlstorage.h.


Member Typedef Documentation

typedef XMLNode::Children::iterator XMLStorage::XMLChildrenFilter::iterator::BaseIterator

Definition at line 1072 of file xmlstorage.h.


Constructor & Destructor Documentation

XMLStorage::XMLChildrenFilter::iterator::iterator ( BaseIterator  begin,
BaseIterator  end,
const XS_String filter_name 
) [inline]

Definition at line 1074 of file xmlstorage.h.

01075          :  _cur(begin),
01076             _end(end),
01077             _filter_name(filter_name)
01078         {
01079             search_next();
01080         }


Member Function Documentation

XMLStorage::XMLChildrenFilter::iterator::operator BaseIterator (  )  [inline]

Definition at line 1082 of file xmlstorage.h.

01083         {
01084             return _cur;
01085         }

const XMLNode* XMLStorage::XMLChildrenFilter::iterator::operator * (  )  const [inline]

Definition at line 1087 of file xmlstorage.h.

01088         {
01089             return *_cur;
01090         }

XMLNode* XMLStorage::XMLChildrenFilter::iterator::operator * (  )  [inline]

Definition at line 1092 of file xmlstorage.h.

01093         {
01094             return *_cur;
01095         }

iterator& XMLStorage::XMLChildrenFilter::iterator::operator++ (  )  [inline]

Definition at line 1097 of file xmlstorage.h.

01098         {
01099             ++_cur;
01100             search_next();
01101 
01102             return *this;
01103         }

iterator XMLStorage::XMLChildrenFilter::iterator::operator++ ( int   )  [inline]

Definition at line 1105 of file xmlstorage.h.

01106         {
01107             iterator ret = *this;
01108 
01109             ++_cur;
01110             search_next();
01111 
01112             return ret;
01113         }

bool XMLStorage::XMLChildrenFilter::iterator::operator== ( const BaseIterator other  )  const [inline]

Definition at line 1115 of file xmlstorage.h.

01116         {
01117             return _cur == other;
01118         }

bool XMLStorage::XMLChildrenFilter::iterator::operator!= ( const BaseIterator other  )  const [inline]

Definition at line 1120 of file xmlstorage.h.

01121         {
01122             return _cur != other;
01123         }

void XMLStorage::XMLChildrenFilter::iterator::search_next (  )  [inline, protected]

Definition at line 1130 of file xmlstorage.h.

01131         {
01132             while(_cur!=_end && **_cur!=_filter_name)
01133                 ++_cur;
01134         }


Field Documentation

BaseIterator XMLStorage::XMLChildrenFilter::iterator::_cur [protected]

Definition at line 1126 of file xmlstorage.h.

BaseIterator XMLStorage::XMLChildrenFilter::iterator::_end [protected]

Definition at line 1127 of file xmlstorage.h.

XS_String XMLStorage::XMLChildrenFilter::iterator::_filter_name [protected]

Definition at line 1128 of file xmlstorage.h.


The documentation for this struct was generated from the following file:
IBrowser Source Code Documentation
generated on 18.09.2008 by doxygen

Homepage