The Pedigree Project 0.1
Public Member Functions | Private Attributes | List of all members
IntrusiveList< T, Member >::IteratorType< Value, Forward, Backward > Class Template Reference
+ Collaboration diagram for IntrusiveList< T, Member >::IteratorType< Value, Forward, Backward >:

Public Member Functions

 IteratorType (node_t *node)
 
Value & operator* () const
 
Value * operator-> () const
 
IteratorType & operator++ ()
 
IteratorType operator++ (int)
 
IteratorType & operator-- ()
 
IteratorType operator-- (int)
 
template<typename OtherValue , node_t *(node_t::*)() OtherForward, node_t *(node_t::*)() OtherBackward>
bool operator== (const IteratorType< OtherValue, OtherForward, OtherBackward > &other) const
 
template<typename OtherValue , node_t *(node_t::*)() OtherForward, node_t *(node_t::*)() OtherBackward>
bool operator!= (const IteratorType< OtherValue, OtherForward, OtherBackward > &other) const
 
node_t * __getNode () const
 

Private Attributes

node_t * m_Node
 

Detailed Description

template<typename T, IntrusiveListNode< T > T::* Member>
template<typename Value, node_t *(node_t::*)() Forward, node_t *(node_t::*)() Backward>
class IntrusiveList< T, Member >::IteratorType< Value, Forward, Backward >

Definition at line 60 of file IntrusiveList.h.

Constructor & Destructor Documentation

◆ IteratorType() [1/2]

template<typename T , IntrusiveListNode< T > T::* Member>
template<typename Value , node_t *(node_t::*)() Forward, node_t *(node_t::*)() Backward>
IntrusiveList< T, Member >::IteratorType< Value, Forward, Backward >::IteratorType ( )
inline

Definition at line 62 of file IntrusiveList.h.

◆ IteratorType() [2/2]

template<typename T , IntrusiveListNode< T > T::* Member>
template<typename Value , node_t *(node_t::*)() Forward, node_t *(node_t::*)() Backward>
IntrusiveList< T, Member >::IteratorType< Value, Forward, Backward >::IteratorType ( node_t *  node)
inlineexplicit

Definition at line 64 of file IntrusiveList.h.

Member Function Documentation

◆ __getNode()

template<typename T , IntrusiveListNode< T > T::* Member>
template<typename Value , node_t *(node_t::*)() Forward, node_t *(node_t::*)() Backward>
node_t * IntrusiveList< T, Member >::IteratorType< Value, Forward, Backward >::__getNode ( ) const
inline

Definition at line 108 of file IntrusiveList.h.

◆ operator!=()

template<typename T , IntrusiveListNode< T > T::* Member>
template<typename Value , node_t *(node_t::*)() Forward, node_t *(node_t::*)() Backward>
template<typename OtherValue , node_t *(node_t::*)() OtherForward, node_t *(node_t::*)() OtherBackward>
bool IntrusiveList< T, Member >::IteratorType< Value, Forward, Backward >::operator!= ( const IteratorType< OtherValue, OtherForward, OtherBackward > &  other) const
inline

Definition at line 104 of file IntrusiveList.h.

◆ operator*()

template<typename T , IntrusiveListNode< T > T::* Member>
template<typename Value , node_t *(node_t::*)() Forward, node_t *(node_t::*)() Backward>
Value & IntrusiveList< T, Member >::IteratorType< Value, Forward, Backward >::operator* ( ) const
inline

Definition at line 66 of file IntrusiveList.h.

◆ operator++() [1/2]

template<typename T , IntrusiveListNode< T > T::* Member>
template<typename Value , node_t *(node_t::*)() Forward, node_t *(node_t::*)() Backward>
IteratorType & IntrusiveList< T, Member >::IteratorType< Value, Forward, Backward >::operator++ ( )
inline

Definition at line 74 of file IntrusiveList.h.

◆ operator++() [2/2]

template<typename T , IntrusiveListNode< T > T::* Member>
template<typename Value , node_t *(node_t::*)() Forward, node_t *(node_t::*)() Backward>
IteratorType IntrusiveList< T, Member >::IteratorType< Value, Forward, Backward >::operator++ ( int  )
inline

Definition at line 79 of file IntrusiveList.h.

◆ operator--() [1/2]

template<typename T , IntrusiveListNode< T > T::* Member>
template<typename Value , node_t *(node_t::*)() Forward, node_t *(node_t::*)() Backward>
IteratorType & IntrusiveList< T, Member >::IteratorType< Value, Forward, Backward >::operator-- ( )
inline

Definition at line 85 of file IntrusiveList.h.

◆ operator--() [2/2]

template<typename T , IntrusiveListNode< T > T::* Member>
template<typename Value , node_t *(node_t::*)() Forward, node_t *(node_t::*)() Backward>
IteratorType IntrusiveList< T, Member >::IteratorType< Value, Forward, Backward >::operator-- ( int  )
inline

Definition at line 90 of file IntrusiveList.h.

◆ operator->()

template<typename T , IntrusiveListNode< T > T::* Member>
template<typename Value , node_t *(node_t::*)() Forward, node_t *(node_t::*)() Backward>
Value * IntrusiveList< T, Member >::IteratorType< Value, Forward, Backward >::operator-> ( ) const
inline

Definition at line 70 of file IntrusiveList.h.

◆ operator==()

template<typename T , IntrusiveListNode< T > T::* Member>
template<typename Value , node_t *(node_t::*)() Forward, node_t *(node_t::*)() Backward>
template<typename OtherValue , node_t *(node_t::*)() OtherForward, node_t *(node_t::*)() OtherBackward>
bool IntrusiveList< T, Member >::IteratorType< Value, Forward, Backward >::operator== ( const IteratorType< OtherValue, OtherForward, OtherBackward > &  other) const
inline

Definition at line 98 of file IntrusiveList.h.

Member Data Documentation

◆ m_Node

template<typename T , IntrusiveListNode< T > T::* Member>
template<typename Value , node_t *(node_t::*)() Forward, node_t *(node_t::*)() Backward>
node_t* IntrusiveList< T, Member >::IteratorType< Value, Forward, Backward >::m_Node
private

Definition at line 113 of file IntrusiveList.h.


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