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

#include <List.h>

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 54 of file List.h.

Member Typedef Documentation

◆ iterator_category

template<typename N >
using beast::detail::ListIterator< N >::iterator_category = std::bidirectional_iterator_tag

Definition at line 57 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 58 of file List.h.

◆ difference_type

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

Definition at line 60 of file List.h.

◆ pointer

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

Definition at line 61 of file List.h.

◆ reference

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

Definition at line 62 of file List.h.

◆ size_type

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

Definition at line 63 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 65 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 70 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 76 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 83 of file List.h.

◆ operator*()

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

Definition at line 89 of file List.h.

◆ operator->()

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

Definition at line 95 of file List.h.

◆ operator++() [1/2]

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

Definition at line 101 of file List.h.

◆ operator++() [2/2]

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

Definition at line 108 of file List.h.

◆ operator--() [1/2]

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

Definition at line 116 of file List.h.

◆ operator--() [2/2]

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

Definition at line 123 of file List.h.

◆ dereference()

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

Definition at line 132 of file List.h.

◆ increment()

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

Definition at line 138 of file List.h.

◆ decrement()

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

Definition at line 144 of file List.h.

Member Data Documentation

◆ m_node

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

Definition at line 149 of file List.h.