ReactOS 0.4.15-dev-7998-gdb93cb1
XMLStorage::XMLChildrenFilter::iterator Struct Reference

internal iterator class More...

#include <xmlstorage.h>

Collaboration diagram for XMLStorage::XMLChildrenFilter::iterator:

Public Types

typedef XMLNode::Children::iterator BaseIterator
 
typedef iterator myType
 

Public Member Functions

 iterator (BaseIterator begin, BaseIterator end, const XS_String &filter_name)
 
 operator BaseIterator ()
 
const XMLNodeoperator* () const
 
XMLNodeoperator* ()
 
myTypeoperator++ ()
 
myType operator++ (int)
 
bool operator== (const myType &other) const
 
bool operator!= (const myType &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 1313 of file xmlstorage.h.

Member Typedef Documentation

◆ BaseIterator

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

Definition at line 1315 of file xmlstorage.h.

◆ myType

Constructor & Destructor Documentation

◆ iterator()

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

Definition at line 1318 of file xmlstorage.h.

1319 : _cur(begin),
1320 _end(end),
1321 _filter_name(filter_name)
1322 {
1323 search_next();
1324 }
GLuint GLuint end
Definition: gl.h:1545

Member Function Documentation

◆ operator BaseIterator()

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

Definition at line 1326 of file xmlstorage.h.

1327 {
1328 return _cur;
1329 }

◆ operator!=()

bool XMLStorage::XMLChildrenFilter::iterator::operator!= ( const myType other) const
inline

Definition at line 1364 of file xmlstorage.h.

1365 {
1366 return _cur != other._cur;
1367 }
int other
Definition: msacm.c:1376

◆ operator*() [1/2]

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

Definition at line 1336 of file xmlstorage.h.

1337 {
1338 return *_cur;
1339 }

◆ operator*() [2/2]

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

Definition at line 1331 of file xmlstorage.h.

1332 {
1333 return *_cur;
1334 }

◆ operator++() [1/2]

myType & XMLStorage::XMLChildrenFilter::iterator::operator++ ( )
inline

Definition at line 1341 of file xmlstorage.h.

1342 {
1343 ++_cur;
1344 search_next();
1345
1346 return *this;
1347 }

◆ operator++() [2/2]

myType XMLStorage::XMLChildrenFilter::iterator::operator++ ( int  )
inline

Definition at line 1349 of file xmlstorage.h.

1350 {
1351 myType ret = *this;
1352
1353 ++_cur;
1354 search_next();
1355
1356 return ret;
1357 }
int ret

◆ operator==()

bool XMLStorage::XMLChildrenFilter::iterator::operator== ( const myType other) const
inline

Definition at line 1359 of file xmlstorage.h.

1360 {
1361 return _cur == other._cur;
1362 }

◆ search_next()

void XMLStorage::XMLChildrenFilter::iterator::search_next ( )
inlineprotected

Definition at line 1374 of file xmlstorage.h.

1375 {
1376 while(_cur!=_end && **_cur!=_filter_name)
1377 ++_cur;
1378 }

Referenced by iterator(), and operator++().

Member Data Documentation

◆ _cur

BaseIterator XMLStorage::XMLChildrenFilter::iterator::_cur
protected

◆ _end

BaseIterator XMLStorage::XMLChildrenFilter::iterator::_end
protected

Definition at line 1371 of file xmlstorage.h.

Referenced by search_next().

◆ _filter_name

XS_String XMLStorage::XMLChildrenFilter::iterator::_filter_name
protected

Definition at line 1372 of file xmlstorage.h.

Referenced by search_next().


The documentation for this struct was generated from the following file: