alternative Standard Libary  0.29.8
std::intrusive_slist_iterator< Pointer, Reference > Template-Klassenreferenz

#include <intrusive_slist.hpp>

Öffentliche Typen

using pointer = Pointer
 
using reference = Reference
 
using iterator_category = forward_iterator_tag
 

Öffentliche Methoden

 intrusive_slist_iterator ()
 
 intrusive_slist_iterator (Pointer iterNode)
 
Reference operator* () const
 
Pointer operator-> () const
 
Pointer node () const
 
intrusive_slist_nodenext () const
 
intrusive_slist_iteratoroperator++ ()
 
intrusive_slist_iterator operator++ (int)
 
bool operator== (const intrusive_slist_iterator &rhs) const
 
bool operator!= (const intrusive_slist_iterator &rhs) const
 

Ausführliche Beschreibung

template<typename Pointer, typename Reference>
class std::intrusive_slist_iterator< Pointer, Reference >

Dokumentation der benutzerdefinierten Datentypen

◆ iterator_category

template<typename Pointer , typename Reference >
using std::intrusive_slist_iterator< Pointer, Reference >::iterator_category = forward_iterator_tag

◆ pointer

template<typename Pointer , typename Reference >
using std::intrusive_slist_iterator< Pointer, Reference >::pointer = Pointer

◆ reference

template<typename Pointer , typename Reference >
using std::intrusive_slist_iterator< Pointer, Reference >::reference = Reference

Beschreibung der Konstruktoren und Destruktoren

◆ intrusive_slist_iterator() [1/2]

template<typename Pointer , typename Reference >
std::intrusive_slist_iterator< Pointer, Reference >::intrusive_slist_iterator ( )
inline
63  : m_node(0)
64  {
65  }

◆ intrusive_slist_iterator() [2/2]

template<typename Pointer , typename Reference >
std::intrusive_slist_iterator< Pointer, Reference >::intrusive_slist_iterator ( Pointer  iterNode)
inlineexplicit
67  : m_node(iterNode)
68  {
69  }

Dokumentation der Elementfunktionen

◆ next()

template<typename Pointer , typename Reference >
intrusive_slist_node* std::intrusive_slist_iterator< Pointer, Reference >::next ( ) const
inline
85  {
86  return m_node->next;
87  }

◆ node()

template<typename Pointer , typename Reference >
Pointer std::intrusive_slist_iterator< Pointer, Reference >::node ( ) const
inline
81  {
82  return m_node;
83  }

◆ operator!=()

template<typename Pointer , typename Reference >
bool std::intrusive_slist_iterator< Pointer, Reference >::operator!= ( const intrusive_slist_iterator< Pointer, Reference > &  rhs) const
inline
106  {
107  return !(rhs == *this);
108  }

◆ operator*()

template<typename Pointer , typename Reference >
Reference std::intrusive_slist_iterator< Pointer, Reference >::operator* ( ) const
inline
72  {
73  assert(m_node);
74  return *m_node;
75  }

◆ operator++() [1/2]

template<typename Pointer , typename Reference >
intrusive_slist_iterator& std::intrusive_slist_iterator< Pointer, Reference >::operator++ ( )
inline
90  {
91  m_node = static_cast<Pointer>(m_node->next);
92  return *this;
93  }

◆ operator++() [2/2]

template<typename Pointer , typename Reference >
intrusive_slist_iterator std::intrusive_slist_iterator< Pointer, Reference >::operator++ ( int  )
inline
95  {
97  ++(*this);
98  return copy;
99  }
intrusive_slist_iterator()
Definition: intrusive_slist.hpp:62
void copy(const T *first, const T *last, T *result)
Definition: algorithm.hpp:39

◆ operator->()

template<typename Pointer , typename Reference >
Pointer std::intrusive_slist_iterator< Pointer, Reference >::operator-> ( ) const
inline
77  {
78  return m_node;
79  }

◆ operator==()

template<typename Pointer , typename Reference >
bool std::intrusive_slist_iterator< Pointer, Reference >::operator== ( const intrusive_slist_iterator< Pointer, Reference > &  rhs) const
inline
102  {
103  return rhs.m_node == m_node;
104  }

Die Dokumentation für diese Klasse wurde erzeugt aufgrund der Datei: