rippled
Public Types | Public Member Functions | Private Member Functions | Private Attributes | List of all members
beast::detail::ListIterator< N > Class Template Reference

Public Types

using iterator_category = std::bidirectional_iterator_tag
 
using value_type = typename beast::detail::CopyConst< N, typename N::value_type >::type
 
using difference_type = std::ptrdiff_t
 
using pointer = value_type *
 
using reference = value_type &
 
using size_type = std::size_t
 

Public Member Functions

 ListIterator (N *node=nullptr) noexcept
 
template<typename M >
 ListIterator (ListIterator< M > const &other) noexcept
 
template<typename M >
bool operator== (ListIterator< M > const &other) const noexcept
 
template<typename M >
bool operator!= (ListIterator< M > const &other) const noexcept
 
reference operator* () const noexcept
 
pointer operator-> () const noexcept
 
ListIteratoroperator++ () noexcept
 
ListIterator operator++ (int) noexcept
 
ListIteratoroperator-- () noexcept
 
ListIterator operator-- (int) noexcept
 

Private Member Functions

reference dereference () const noexcept
 
void increment () noexcept
 
void decrement () noexcept
 

Private Attributes

N * m_node
 

Detailed Description

template<typename N>
class beast::detail::ListIterator< N >

Definition at line 74 of file List.h.

Member Typedef Documentation

◆ iterator_category

Definition at line 77 of file List.h.

◆ value_type

template<typename N >
using beast::detail::ListIterator< N >::value_type = typename beast::detail::CopyConst<N, typename N::value_type>::type

Definition at line 79 of file List.h.

◆ difference_type

template<typename N >
using beast::detail::ListIterator< N >::difference_type = std::ptrdiff_t

Definition at line 80 of file List.h.

◆ pointer

template<typename N >
using beast::detail::ListIterator< N >::pointer = value_type*

Definition at line 81 of file List.h.

◆ reference

template<typename N >
using beast::detail::ListIterator< N >::reference = value_type&

Definition at line 82 of file List.h.

◆ size_type

template<typename N >
using beast::detail::ListIterator< N >::size_type = std::size_t

Definition at line 83 of file List.h.

Constructor & Destructor Documentation

◆ ListIterator() [1/2]

template<typename N >
beast::detail::ListIterator< N >::ListIterator ( N *  node = nullptr)
noexcept

Definition at line 85 of file List.h.

◆ ListIterator() [2/2]

template<typename N >
template<typename M >
beast::detail::ListIterator< N >::ListIterator ( ListIterator< M > const &  other)
noexcept

Definition at line 90 of file List.h.

Member Function Documentation

◆ operator==()

template<typename N >
template<typename M >
bool beast::detail::ListIterator< N >::operator== ( ListIterator< M > const &  other) const
noexcept

Definition at line 96 of file List.h.

◆ operator!=()

template<typename N >
template<typename M >
bool beast::detail::ListIterator< N >::operator!= ( ListIterator< M > const &  other) const
noexcept

Definition at line 103 of file List.h.

◆ operator*()

template<typename N >
reference beast::detail::ListIterator< N >::operator* ( ) const
noexcept

Definition at line 109 of file List.h.

◆ operator->()

template<typename N >
pointer beast::detail::ListIterator< N >::operator-> ( ) const
noexcept

Definition at line 115 of file List.h.

◆ operator++() [1/2]

template<typename N >
ListIterator& beast::detail::ListIterator< N >::operator++ ( )
noexcept

Definition at line 121 of file List.h.

◆ operator++() [2/2]

template<typename N >
ListIterator beast::detail::ListIterator< N >::operator++ ( int  )
noexcept

Definition at line 128 of file List.h.

◆ operator--() [1/2]

template<typename N >
ListIterator& beast::detail::ListIterator< N >::operator-- ( )
noexcept

Definition at line 136 of file List.h.

◆ operator--() [2/2]

template<typename N >
ListIterator beast::detail::ListIterator< N >::operator-- ( int  )
noexcept

Definition at line 143 of file List.h.

◆ dereference()

template<typename N >
reference beast::detail::ListIterator< N >::dereference ( ) const
privatenoexcept

Definition at line 152 of file List.h.

◆ increment()

template<typename N >
void beast::detail::ListIterator< N >::increment ( )
privatenoexcept

Definition at line 158 of file List.h.

◆ decrement()

template<typename N >
void beast::detail::ListIterator< N >::decrement ( )
privatenoexcept

Definition at line 164 of file List.h.

Member Data Documentation

◆ m_node

template<typename N >
N* beast::detail::ListIterator< N >::m_node
private

Definition at line 169 of file List.h.