NCBI C++ ToolKit
Public Types | Public Member Functions | Private Member Functions | Private Attributes | Friends | List of all members
xml::node::iterator Class Reference

Search Toolkit Book for xml::node::iterator

The xml::node::iterator provides a way to access children nodes similar to a standard C++ container. More...

#include <misc/xmlwrapp/node.hpp>

+ Collaboration diagram for xml::node::iterator:

Public Types

typedef node value_type
 
typedef std::ptrdiff_t difference_type
 
typedef value_typepointer
 
typedef value_typereference
 
typedef std::forward_iterator_tag iterator_category
 

Public Member Functions

 iterator (void)
 
 iterator (const iterator &other)
 
iteratoroperator= (const iterator &other)
 
 ~iterator (void)
 
reference operator* (void) const
 
pointer operator-> (void) const
 
iteratoroperator++ (void)
 prefix increment More...
 
iterator operator++ (int)
 postfix increment (avoid if possible for better performance) More...
 
bool operator== (const iterator &other) const
 
bool operator!= (const iterator &other) const
 

Private Member Functions

 iterator (void *data)
 
void * get_raw_node (void) const
 
void swap (iterator &other)
 

Private Attributes

impl::nipimplpimpl_
 

Friends

class node
 
class document
 
class const_iterator
 

Detailed Description

The xml::node::iterator provides a way to access children nodes similar to a standard C++ container.

The nodes that are pointed to by the iterator can be changed.

Definition at line 704 of file node.hpp.

Member Typedef Documentation

◆ difference_type

typedef std::ptrdiff_t xml::node::iterator::difference_type

Definition at line 707 of file node.hpp.

◆ iterator_category

typedef std::forward_iterator_tag xml::node::iterator::iterator_category

Definition at line 710 of file node.hpp.

◆ pointer

Definition at line 708 of file node.hpp.

◆ reference

Definition at line 709 of file node.hpp.

◆ value_type

Definition at line 706 of file node.hpp.

Constructor & Destructor Documentation

◆ iterator() [1/3]

xml::node::iterator::iterator ( void  )
inline

Definition at line 712 of file node.hpp.

◆ iterator() [2/3]

xml::node::iterator::iterator ( const iterator other)

Definition at line 93 of file node_iterator.cpp.

References pimpl_.

◆ ~iterator()

xml::node::iterator::~iterator ( void  )

Definition at line 107 of file node_iterator.cpp.

◆ iterator() [3/3]

xml::node::iterator::iterator ( void *  data)
explicitprivate

Definition at line 89 of file node_iterator.cpp.

Member Function Documentation

◆ get_raw_node()

void * xml::node::iterator::get_raw_node ( void  ) const
private

◆ operator!=()

bool xml::node::iterator::operator!= ( const iterator other) const
inline

Definition at line 728 of file node.hpp.

◆ operator*()

xml::node::iterator::reference xml::node::iterator::operator* ( void  ) const

Definition at line 111 of file node_iterator.cpp.

◆ operator++() [1/2]

xml::node::iterator xml::node::iterator::operator++ ( int  )

postfix increment (avoid if possible for better performance)

Definition at line 124 of file node_iterator.cpp.

References tmp.

◆ operator++() [2/2]

xml::node::iterator & xml::node::iterator::operator++ ( void  )

prefix increment

Definition at line 119 of file node_iterator.cpp.

◆ operator->()

xml::node::iterator::pointer xml::node::iterator::operator-> ( void  ) const

Definition at line 115 of file node_iterator.cpp.

◆ operator=()

xml::node::iterator & xml::node::iterator::operator= ( const iterator other)

Definition at line 97 of file node_iterator.cpp.

References swap(), and tmp.

◆ operator==()

bool xml::node::iterator::operator== ( const iterator other) const
inline

Definition at line 726 of file node.hpp.

References get_raw_node().

◆ swap()

void xml::node::iterator::swap ( iterator other)
private

Definition at line 103 of file node_iterator.cpp.

References pimpl_, and swap().

Friends And Related Function Documentation

◆ const_iterator

friend class const_iterator
friend

Definition at line 738 of file node.hpp.

◆ document

friend class document
friend

Definition at line 737 of file node.hpp.

◆ node

friend class node
friend

Definition at line 736 of file node.hpp.

Member Data Documentation

◆ pimpl_

impl::nipimpl* xml::node::iterator::pimpl_
private

Definition at line 732 of file node.hpp.

Referenced by xml::node::const_iterator::const_iterator(), iterator(), and swap().


The documentation for this class was generated from the following files:
Modified on Mon Feb 26 04:06:06 2024 by modify_doxy.py rev. 669887