SPH
Public Types | Public Member Functions | Friends | List of all members
ListIterator< T > Class Template Reference

#include <List.h>

Public Types

using iterator_category = std::bidirectional_iterator_tag
 
using value_type = T
 
using difference_type = std::ptrdiff_t
 
using pointer = T *
 
using reference = T &
 

Public Member Functions

 ListIterator (RawPtr< ListNode< T >> node)
 
INLINE ListIteratoroperator++ ()
 
INLINE ListIterator operator++ (int)
 
INLINE ListIteratoroperator-- ()
 
INLINE ListIterator operator-- (int)
 
INLINE T & operator* () const
 
INLINE RawPtr< T > operator-> () const
 
INLINE operator bool () const
 
INLINE bool operator! () const
 
bool operator== (const ListIterator &other) const
 
bool operator!= (const ListIterator &other) const
 

Friends

template<typename , typename >
class List
 

Detailed Description

template<typename T>
class ListIterator< T >

Definition at line 57 of file List.h.

Member Typedef Documentation

◆ difference_type

template<typename T >
using ListIterator< T >::difference_type = std::ptrdiff_t

Definition at line 67 of file List.h.

◆ iterator_category

template<typename T >
using ListIterator< T >::iterator_category = std::bidirectional_iterator_tag

Definition at line 65 of file List.h.

◆ pointer

template<typename T >
using ListIterator< T >::pointer = T*

Definition at line 68 of file List.h.

◆ reference

template<typename T >
using ListIterator< T >::reference = T&

Definition at line 69 of file List.h.

◆ value_type

template<typename T >
using ListIterator< T >::value_type = T

Definition at line 66 of file List.h.

Constructor & Destructor Documentation

◆ ListIterator()

template<typename T >
ListIterator< T >::ListIterator ( RawPtr< ListNode< T >>  node)
inlineexplicit

Definition at line 71 of file List.h.

Member Function Documentation

◆ operator bool()

template<typename T >
INLINE ListIterator< T >::operator bool ( ) const
inlineexplicit

Definition at line 110 of file List.h.

◆ operator!()

template<typename T >
INLINE bool ListIterator< T >::operator! ( ) const
inline

Definition at line 114 of file List.h.

◆ operator!=()

template<typename T >
bool ListIterator< T >::operator!= ( const ListIterator< T > &  other) const
inline

Definition at line 122 of file List.h.

◆ operator*()

template<typename T >
INLINE T& ListIterator< T >::operator* ( ) const
inline

Definition at line 100 of file List.h.

◆ operator++() [1/2]

template<typename T >
INLINE ListIterator& ListIterator< T >::operator++ ( )
inline

Definition at line 74 of file List.h.

◆ operator++() [2/2]

template<typename T >
INLINE ListIterator ListIterator< T >::operator++ ( int  )
inline

Definition at line 81 of file List.h.

◆ operator--() [1/2]

template<typename T >
INLINE ListIterator& ListIterator< T >::operator-- ( )
inline

Definition at line 87 of file List.h.

◆ operator--() [2/2]

template<typename T >
INLINE ListIterator ListIterator< T >::operator-- ( int  )
inline

Definition at line 94 of file List.h.

◆ operator->()

template<typename T >
INLINE RawPtr<T> ListIterator< T >::operator-> ( ) const
inline

Definition at line 105 of file List.h.

◆ operator==()

template<typename T >
bool ListIterator< T >::operator== ( const ListIterator< T > &  other) const
inline

Definition at line 118 of file List.h.

Friends And Related Function Documentation

◆ List

template<typename T >
template<typename , typename >
friend class List
friend

Definition at line 59 of file List.h.


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