Cloudy
Spectral Synthesis Code for Astrophysics
Loading...
Searching...
No Matches
ProxyIterator< P, C > Class Template Reference

#include <proxy_iterator.h>

Public Types

typedef P value_type
typedef int difference_type
typedef random_access_iterator_tag iterator_category
typedef const value_typereference
typedef const value_typepointer

Public Member Functions

 ProxyIterator (typename P::list_type *list, int index)
 ProxyIterator (const ProxyIterator &other)
 ProxyIterator (void)
ProxyIteratoroperator= (ProxyIterator other)
 operator const_iterator_type () const
void swap (ProxyIterator other)
bool associated () const
bool equals (const ProxyIterator &other) const
reference operator* () const
pointer operator-> () const
ProxyIteratoroperator++ ()
ProxyIterator operator++ (int)
ProxyIteratoroperator-- ()
ProxyIterator operator-- (int)
const ProxyIterator add (difference_type i) const
difference_type diff (const ProxyIterator &other) const
int cmp (const ProxyIterator &other) const
ProxyIteratoroperator+= (difference_type i)
ProxyIteratoroperator-= (difference_type i)
const value_type operator[] (difference_type i) const

Private Types

typedef EnableIf< Not< IsSame< P, C > >, ProxyIterator< C, C > > const_iterator_type_1
typedef const_iterator_type_1::type const_iterator_type

Private Attributes

proxy

Member Typedef Documentation

◆ const_iterator_type

template<class P, class C>
typedef const_iterator_type_1::type ProxyIterator< P, C >::const_iterator_type
private

◆ const_iterator_type_1

template<class P, class C>
typedef EnableIf<Not<IsSame<P,C> >, ProxyIterator<C,C> > ProxyIterator< P, C >::const_iterator_type_1
private

◆ difference_type

template<class P, class C>
typedef int ProxyIterator< P, C >::difference_type

◆ iterator_category

template<class P, class C>
typedef random_access_iterator_tag ProxyIterator< P, C >::iterator_category

◆ pointer

template<class P, class C>
typedef const value_type* ProxyIterator< P, C >::pointer

◆ reference

template<class P, class C>
typedef const value_type& ProxyIterator< P, C >::reference

◆ value_type

template<class P, class C>
typedef P ProxyIterator< P, C >::value_type

Constructor & Destructor Documentation

◆ ProxyIterator() [1/3]

template<class P, class C>
ProxyIterator< P, C >::ProxyIterator ( typename P::list_type * list,
int index )
inlineexplicit

◆ ProxyIterator() [2/3]

template<class P, class C>
ProxyIterator< P, C >::ProxyIterator ( const ProxyIterator< P, C > & other)
inline

◆ ProxyIterator() [3/3]

template<class P, class C>
ProxyIterator< P, C >::ProxyIterator ( void )
inlineexplicit

Member Function Documentation

◆ add()

template<class P, class C>
const ProxyIterator ProxyIterator< P, C >::add ( difference_type i) const
inline

Referenced by operator+(), operator+(), and operator-().

◆ associated()

template<class P, class C>
bool ProxyIterator< P, C >::associated ( ) const
inline

◆ cmp()

template<class P, class C>
int ProxyIterator< P, C >::cmp ( const ProxyIterator< P, C > & other) const
inline

◆ diff()

template<class P, class C>
difference_type ProxyIterator< P, C >::diff ( const ProxyIterator< P, C > & other) const
inline

Referenced by operator-().

◆ equals()

template<class P, class C>
bool ProxyIterator< P, C >::equals ( const ProxyIterator< P, C > & other) const
inline

Referenced by operator==().

◆ operator const_iterator_type()

template<class P, class C>
ProxyIterator< P, C >::operator const_iterator_type ( ) const
inline

◆ operator*()

template<class P, class C>
reference ProxyIterator< P, C >::operator* ( ) const
inline

◆ operator++() [1/2]

template<class P, class C>
ProxyIterator & ProxyIterator< P, C >::operator++ ( )
inline

◆ operator++() [2/2]

template<class P, class C>
ProxyIterator ProxyIterator< P, C >::operator++ ( int )
inline

◆ operator+=()

template<class P, class C>
ProxyIterator & ProxyIterator< P, C >::operator+= ( difference_type i)
inline

◆ operator--() [1/2]

template<class P, class C>
ProxyIterator & ProxyIterator< P, C >::operator-- ( )
inline

◆ operator--() [2/2]

template<class P, class C>
ProxyIterator ProxyIterator< P, C >::operator-- ( int )
inline

◆ operator-=()

template<class P, class C>
ProxyIterator & ProxyIterator< P, C >::operator-= ( difference_type i)
inline

◆ operator->()

template<class P, class C>
pointer ProxyIterator< P, C >::operator-> ( ) const
inline

◆ operator=()

template<class P, class C>
ProxyIterator & ProxyIterator< P, C >::operator= ( ProxyIterator< P, C > other)
inline

◆ operator[]()

template<class P, class C>
const value_type ProxyIterator< P, C >::operator[] ( difference_type i) const
inline

◆ swap()

template<class P, class C>
void ProxyIterator< P, C >::swap ( ProxyIterator< P, C > other)
inline

Member Data Documentation

◆ proxy


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