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: