libjmmcg  build_2783
A C++ library containing an eclectic mix of useful, advanced components.
jmmcg::intrusive::private_::slist_iterator_internal< V const, LkT > Class Template Reference

#include <intrusive.hpp>

Collaboration diagram for jmmcg::intrusive::private_::slist_iterator_internal< V const, LkT >:
[legend]

Public Types

using lock_traits = LkT
 
typedef std::forward_iterator_tag iterator_category
 
typedef std::ptrdiff_t difference_type
 
typedef shared_ptr< V, lock_traitsvalue_type
 
typedef shared_ptr< V, lock_traitspointer
 
typedef pointerreference
 
typedef const_pointerconst_reference
 
typedef value_type::deleter_t deleter_t
 
typedef value_type::ctr_type ctr_type
 
typedef value_type::exception_type exception_type
 

Public Member Functions

__stdcall slist_iterator_internal (const_reference n) noexcept(true) FORCE_INLINE
 
__stdcall slist_iterator_internal (node_ptr_t n) noexcept(true) FORCE_INLINE
 
__stdcall slist_iterator_internal (slist_iterator_internal const &n) noexcept(true) FORCE_INLINE
 
bool __fastcall operator== (slist_iterator_internal const &n) const noexcept(true) FORCE_INLINE
 
bool __fastcall operator!= (slist_iterator_internal const &n) const noexcept(true) FORCE_INLINE
 
slist_iterator_internal &__fastcall operator++ () noexcept(true) FORCE_INLINE
 
slist_iterator_internal __fastcall operator++ (int) noexcept(true) FORCE_INLINE
 
const_pointer __fastcall operator* () const noexcept(true) FORCE_INLINE
 
const_pointer __fastcall operator-> () const noexcept(true) FORCE_INLINE
 

Public Attributes

const typedef shared_ptr< V, lock_traitsconst_pointer
 

Friends

class stack< V, LkT >
 
class slist< V, LkT >
 
tostreamoperator<< (tostream &os, slist_iterator_internal const &i)
 

Detailed Description

template<class V, class LkT>
class jmmcg::intrusive::private_::slist_iterator_internal< V const, LkT >

Definition at line 220 of file intrusive.hpp.

Member Typedef Documentation

◆ const_reference

template<class V , class LkT >
typedef const_pointer& jmmcg::intrusive::private_::slist_iterator_internal< V const, LkT >::const_reference

Definition at line 229 of file intrusive.hpp.

◆ ctr_type

template<class V , class LkT >
typedef value_type::ctr_type jmmcg::intrusive::private_::slist_iterator_internal< V const, LkT >::ctr_type

Definition at line 232 of file intrusive.hpp.

◆ deleter_t

template<class V , class LkT >
typedef value_type::deleter_t jmmcg::intrusive::private_::slist_iterator_internal< V const, LkT >::deleter_t

Definition at line 231 of file intrusive.hpp.

◆ difference_type

template<class V , class LkT >
typedef std::ptrdiff_t jmmcg::intrusive::private_::slist_iterator_internal< V const, LkT >::difference_type

Definition at line 224 of file intrusive.hpp.

◆ exception_type

Definition at line 233 of file intrusive.hpp.

◆ iterator_category

template<class V , class LkT >
typedef std::forward_iterator_tag jmmcg::intrusive::private_::slist_iterator_internal< V const, LkT >::iterator_category

Definition at line 223 of file intrusive.hpp.

◆ lock_traits

template<class V , class LkT >
using jmmcg::intrusive::private_::slist_iterator_internal< V const, LkT >::lock_traits = LkT

Definition at line 222 of file intrusive.hpp.

◆ pointer

template<class V , class LkT >
typedef shared_ptr<V, lock_traits> jmmcg::intrusive::private_::slist_iterator_internal< V const, LkT >::pointer

Definition at line 226 of file intrusive.hpp.

◆ reference

template<class V , class LkT >
typedef pointer& jmmcg::intrusive::private_::slist_iterator_internal< V const, LkT >::reference

Definition at line 228 of file intrusive.hpp.

◆ value_type

template<class V , class LkT >
typedef shared_ptr<V, lock_traits> jmmcg::intrusive::private_::slist_iterator_internal< V const, LkT >::value_type

Definition at line 225 of file intrusive.hpp.

Constructor & Destructor Documentation

◆ slist_iterator_internal() [1/3]

template<class V , class LkT >
__stdcall jmmcg::intrusive::private_::slist_iterator_internal< V const, LkT >::slist_iterator_internal ( const_reference  n)
inlineexplicitnoexcept

Definition at line 241 of file intrusive.hpp.

◆ slist_iterator_internal() [2/3]

template<class V , class LkT >
__stdcall jmmcg::intrusive::private_::slist_iterator_internal< V const, LkT >::slist_iterator_internal ( node_ptr_t  n)
inlineexplicitnoexcept

Definition at line 245 of file intrusive.hpp.

◆ slist_iterator_internal() [3/3]

template<class V , class LkT >
__stdcall jmmcg::intrusive::private_::slist_iterator_internal< V const, LkT >::slist_iterator_internal ( slist_iterator_internal< V const, LkT > const &  n)
inlinenoexcept

Definition at line 249 of file intrusive.hpp.

Member Function Documentation

◆ operator!=()

template<class V , class LkT >
bool __fastcall jmmcg::intrusive::private_::slist_iterator_internal< V const, LkT >::operator!= ( slist_iterator_internal< V const, LkT > const &  n) const
inlinenoexcept

Definition at line 264 of file intrusive.hpp.

◆ operator*()

template<class V , class LkT >
const_pointer __fastcall jmmcg::intrusive::private_::slist_iterator_internal< V const, LkT >::operator* ( ) const
inlinenoexcept

Definition at line 280 of file intrusive.hpp.

Referenced by operator->().

◆ operator++() [1/2]

template<class V , class LkT >
slist_iterator_internal& __fastcall jmmcg::intrusive::private_::slist_iterator_internal< V const, LkT >::operator++ ( )
inlinenoexcept

Definition at line 268 of file intrusive.hpp.

◆ operator++() [2/2]

template<class V , class LkT >
slist_iterator_internal __fastcall jmmcg::intrusive::private_::slist_iterator_internal< V const, LkT >::operator++ ( int  )
inlinenoexcept

Definition at line 275 of file intrusive.hpp.

◆ operator->()

template<class V , class LkT >
const_pointer __fastcall jmmcg::intrusive::private_::slist_iterator_internal< V const, LkT >::operator-> ( ) const
inlinenoexcept

Definition at line 283 of file intrusive.hpp.

References operator*().

◆ operator==()

template<class V , class LkT >
bool __fastcall jmmcg::intrusive::private_::slist_iterator_internal< V const, LkT >::operator== ( slist_iterator_internal< V const, LkT > const &  n) const
inlinenoexcept

Definition at line 253 of file intrusive.hpp.

Friends And Related Function Documentation

◆ operator<<

template<class V , class LkT >
tostream& operator<< ( tostream os,
slist_iterator_internal< V const, LkT > const &  i 
)
friend

Definition at line 288 of file intrusive.hpp.

◆ slist< V, LkT >

template<class V , class LkT >
friend class slist< V, LkT >
friend

Definition at line 296 of file intrusive.hpp.

◆ stack< V, LkT >

template<class V , class LkT >
friend class stack< V, LkT >
friend

Definition at line 295 of file intrusive.hpp.

Member Data Documentation

◆ const_pointer

template<class V , class LkT >
const typedef shared_ptr<V, lock_traits> jmmcg::intrusive::private_::slist_iterator_internal< V const, LkT >::const_pointer

Definition at line 227 of file intrusive.hpp.


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