ProxyIterator< P, C > Class Template Reference

#include <proxy_iterator.h>

Collaboration diagram for ProxyIterator< P, C >:
[legend]

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

Detailed Description

template<class P, class C>
class ProxyIterator< P, C >

Definition at line 58 of file proxy_iterator.h.


Member Typedef Documentation

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

Definition at line 63 of file proxy_iterator.h.

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

Definition at line 62 of file proxy_iterator.h.

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

Definition at line 66 of file proxy_iterator.h.

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

Definition at line 67 of file proxy_iterator.h.

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

Definition at line 69 of file proxy_iterator.h.

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

Definition at line 68 of file proxy_iterator.h.

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

Definition at line 65 of file proxy_iterator.h.


Constructor & Destructor Documentation

template<class P, class C>
ProxyIterator< P, C >::ProxyIterator ( typename P::list_type *  list,
int  index 
) [inline, explicit]

Definition at line 71 of file proxy_iterator.h.

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

Definition at line 73 of file proxy_iterator.h.

template<class P, class C>
ProxyIterator< P, C >::ProxyIterator ( void   )  [inline, explicit]

Definition at line 75 of file proxy_iterator.h.

Referenced by ProxyIterator< P, C >::add().


Member Function Documentation

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

Definition at line 138 of file proxy_iterator.h.

References ProxyIterator< P, C >::proxy, and ProxyIterator< P, C >::ProxyIterator().

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

Here is the call graph for this function:

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

Definition at line 92 of file proxy_iterator.h.

References ProxyIterator< P, C >::proxy.

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

Definition at line 148 of file proxy_iterator.h.

References ProxyIterator< P, C >::proxy.

Referenced by operator>(), and operator>=().

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

Definition at line 143 of file proxy_iterator.h.

References ProxyIterator< P, C >::proxy.

Referenced by operator-().

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

Definition at line 97 of file proxy_iterator.h.

References ProxyIterator< P, C >::proxy.

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

Definition at line 81 of file proxy_iterator.h.

References ProxyIterator< P, C >::proxy.

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

Definition at line 103 of file proxy_iterator.h.

References ProxyIterator< P, C >::proxy.

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

Definition at line 119 of file proxy_iterator.h.

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

Definition at line 114 of file proxy_iterator.h.

References ProxyIterator< P, C >::proxy.

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

Definition at line 158 of file proxy_iterator.h.

References ProxyIterator< P, C >::proxy.

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

Definition at line 130 of file proxy_iterator.h.

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

Definition at line 125 of file proxy_iterator.h.

References ProxyIterator< P, C >::proxy.

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

Definition at line 163 of file proxy_iterator.h.

References ProxyIterator< P, C >::proxy.

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

Definition at line 107 of file proxy_iterator.h.

References ProxyIterator< P, C >::proxy.

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

Definition at line 76 of file proxy_iterator.h.

References ProxyIterator< P, C >::swap().

Here is the call graph for this function:

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

Definition at line 169 of file proxy_iterator.h.

References ProxyIterator< P, C >::proxy.

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

Definition at line 86 of file proxy_iterator.h.

References ProxyIterator< P, C >::proxy.

Referenced by ProxyIterator< P, C >::operator=().


Field Documentation

template<class P, class C>
P ProxyIterator< P, C >::proxy [private]

The documentation for this class was generated from the following file:
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines

Generated on 15 Nov 2012 for cloudy by  doxygen 1.6.1