foobar2000 SDK  2015-08-03
Public Types | Public Member Functions
pfc::iterator< t_item >

#include <iterators.h>

+ Inheritance diagram for pfc::iterator< t_item >:

Public Types

typedef _list_node< t_item > t_node
 
typedef refcounted_object_ptr_t< t_nodet_nodeptr
 
typedef iterator< t_item > t_self
 
typedef const_iterator< t_item > t_selfConst
 
- Public Types inherited from pfc::const_iterator< t_item >
typedef _list_node< t_item > t_node
 
typedef refcounted_object_ptr_t< t_nodet_nodeptr
 
typedef const_iterator< t_item > t_self
 

Public Member Functions

 iterator ()
 
 iterator (t_node *source)
 
 iterator (t_nodeptr const &source)
 
 iterator (t_self const &other)
 
 iterator (t_self &&other)
 
bool operator!= (const t_self &other) const throw ()
 
t_item & operator* () const throw ()
 
const t_selfoperator++ () throw ()
 
t_self operator++ (int) throw ()
 
const t_selfoperator-- () throw ()
 
t_self operator-- (int) throw ()
 
t_item * operator-> () const throw ()
 
t_self const & operator= (t_self const &other)
 
t_self const & operator= (t_self &&other)
 
bool operator== (const t_self &other) const throw ()
 
- Public Member Functions inherited from pfc::const_iterator< t_item >
 const_iterator ()
 
 const_iterator (t_node *source)
 
 const_iterator (t_nodeptr const &source)
 
 const_iterator (t_self const &other)
 
 const_iterator (t_self &&other)
 
t_node_node () const throw ()
 
void invalidate () throw ()
 
bool is_empty () const throw ()
 
bool is_valid () const throw ()
 
void next () throw ()
 
bool operator!= (const t_self &other) const throw ()
 
const t_item & operator* () const throw ()
 
const t_selfoperator++ () throw ()
 
t_self operator++ (int) throw ()
 
const t_selfoperator-- () throw ()
 
t_self operator-- (int) throw ()
 
const t_item * operator-> () const throw ()
 
t_self const & operator= (t_self const &other)
 
t_self const & operator= (t_self &&other)
 
bool operator== (const t_self &other) const throw ()
 
void prev () throw ()
 
void walk (bool forward) throw ()
 

Additional Inherited Members

- Protected Attributes inherited from pfc::const_iterator< t_item >
t_nodeptr m_content
 

Detailed Description

template<typename t_item>
class pfc::iterator< t_item >

Definition at line 56 of file iterators.h.

Member Typedef Documentation

template<typename t_item >
typedef _list_node<t_item> pfc::iterator< t_item >::t_node

Definition at line 60 of file iterators.h.

template<typename t_item >
typedef refcounted_object_ptr_t<t_node> pfc::iterator< t_item >::t_nodeptr

Definition at line 61 of file iterators.h.

template<typename t_item >
typedef iterator<t_item> pfc::iterator< t_item >::t_self

Definition at line 59 of file iterators.h.

template<typename t_item >
typedef const_iterator<t_item> pfc::iterator< t_item >::t_selfConst

Definition at line 58 of file iterators.h.

Constructor & Destructor Documentation

template<typename t_item >
pfc::iterator< t_item >::iterator ( )
inline

Definition at line 63 of file iterators.h.

63 {}
template<typename t_item >
pfc::iterator< t_item >::iterator ( t_node source)
inline

Definition at line 64 of file iterators.h.

64 : t_selfConst(source) {}
const_iterator< t_item > t_selfConst
Definition: iterators.h:58
template<typename t_item >
pfc::iterator< t_item >::iterator ( t_nodeptr const &  source)
inline

Definition at line 65 of file iterators.h.

65 : t_selfConst(source) {}
const_iterator< t_item > t_selfConst
Definition: iterators.h:58
template<typename t_item >
pfc::iterator< t_item >::iterator ( t_self const &  other)
inline

Definition at line 66 of file iterators.h.

66 : t_selfConst(other) {}
const_iterator< t_item > t_selfConst
Definition: iterators.h:58
template<typename t_item >
pfc::iterator< t_item >::iterator ( t_self &&  other)
inline

Definition at line 67 of file iterators.h.

67 : t_selfConst(std::move(other)) {}
const_iterator< t_item > t_selfConst
Definition: iterators.h:58

Member Function Documentation

template<typename t_item >
bool pfc::iterator< t_item >::operator!= ( const t_self other) const
throw (
)
inline

Definition at line 81 of file iterators.h.

81 {return this->m_content != other.m_content;}
t_nodeptr m_content
Definition: iterators.h:54
template<typename t_item >
t_item& pfc::iterator< t_item >::operator* ( ) const
throw (
)
inline

Definition at line 72 of file iterators.h.

72 {return this->m_content->m_content;}
t_nodeptr m_content
Definition: iterators.h:54
template<typename t_item >
const t_self& pfc::iterator< t_item >::operator++ ( )
throw (
)
inline

Definition at line 75 of file iterators.h.

75 {this->next(); return *this;}
template<typename t_item >
t_self pfc::iterator< t_item >::operator++ ( int  )
throw (
)
inline

Definition at line 77 of file iterators.h.

77 {t_self old = *this; this->next(); return old;}
iterator< t_item > t_self
Definition: iterators.h:59
template<typename t_item >
const t_self& pfc::iterator< t_item >::operator-- ( )
throw (
)
inline

Definition at line 76 of file iterators.h.

76 {this->prev(); return *this;}
template<typename t_item >
t_self pfc::iterator< t_item >::operator-- ( int  )
throw (
)
inline

Definition at line 78 of file iterators.h.

78 {t_self old = *this; this->prev(); return old;}
iterator< t_item > t_self
Definition: iterators.h:59
template<typename t_item >
t_item* pfc::iterator< t_item >::operator-> ( ) const
throw (
)
inline

Definition at line 73 of file iterators.h.

73 {return &this->m_content->m_content;}
t_nodeptr m_content
Definition: iterators.h:54
template<typename t_item >
t_self const& pfc::iterator< t_item >::operator= ( t_self const &  other)
inline

Definition at line 69 of file iterators.h.

69 {this->m_content = other.m_content; return *this;}
t_nodeptr m_content
Definition: iterators.h:54
template<typename t_item >
t_self const& pfc::iterator< t_item >::operator= ( t_self &&  other)
inline

Definition at line 70 of file iterators.h.

70 {this->m_content = std::move(other.m_content); return *this;}
t_nodeptr m_content
Definition: iterators.h:54
template<typename t_item >
bool pfc::iterator< t_item >::operator== ( const t_self other) const
throw (
)
inline

Definition at line 80 of file iterators.h.

80 {return this->m_content == other.m_content;}
t_nodeptr m_content
Definition: iterators.h:54

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