Tumble::iterators::dedereferencer< old_iterator, output_type, output_ref > Class Template Reference

Take in an iterator and dereference it twice. So we can take a list<int**> and iterate over it as if it were a list<int> using a: dedereferencer<list<int**>::iterator, int>. More...

#include </usr1/tp517/Tumble/trunk/src/tumble/iterator_wrapper.h>

Collaboration diagram for Tumble::iterators::dedereferencer< old_iterator, output_type, output_ref >:

[legend]
List of all members.

Public Types

typedef std::iterator_traits<
old_iterator >::difference_type 
difference_type
typedef std::iterator_traits<
old_iterator >::iterator_category 
iterator_category
typedef output_type value_type
typedef output_ref reference
typedef output_type * pointer

Public Member Functions

 dedereferencer ()
 dedereferencer (const old_iterator &it)
reference operator * () const
reference operator[] (const difference_type &i) const
old_iterator base ()

Public Attributes

 define_move_operators
 define_relational_operators

Private Types

typedef dedereferencer iterator

Private Attributes

old_iterator it_

Detailed Description

template<class old_iterator, class output_type, class output_ref = output_type&>
class Tumble::iterators::dedereferencer< old_iterator, output_type, output_ref >

Take in an iterator and dereference it twice. So we can take a list<int**> and iterate over it as if it were a list<int> using a: dedereferencer<list<int**>::iterator, int>.

!

Definition at line 130 of file iterator_wrapper.h.


Member Typedef Documentation

template<class old_iterator, class output_type, class output_ref = output_type&>
typedef dedereferencer Tumble::iterators::dedereferencer< old_iterator, output_type, output_ref >::iterator [private]

Definition at line 132 of file iterator_wrapper.h.

template<class old_iterator, class output_type, class output_ref = output_type&>
typedef std::iterator_traits<old_iterator>::difference_type Tumble::iterators::dedereferencer< old_iterator, output_type, output_ref >::difference_type

Definition at line 137 of file iterator_wrapper.h.

template<class old_iterator, class output_type, class output_ref = output_type&>
typedef std::iterator_traits<old_iterator>::iterator_category Tumble::iterators::dedereferencer< old_iterator, output_type, output_ref >::iterator_category

Definition at line 139 of file iterator_wrapper.h.

template<class old_iterator, class output_type, class output_ref = output_type&>
typedef output_type Tumble::iterators::dedereferencer< old_iterator, output_type, output_ref >::value_type

Definition at line 140 of file iterator_wrapper.h.

template<class old_iterator, class output_type, class output_ref = output_type&>
typedef output_ref Tumble::iterators::dedereferencer< old_iterator, output_type, output_ref >::reference

Definition at line 141 of file iterator_wrapper.h.

template<class old_iterator, class output_type, class output_ref = output_type&>
typedef output_type* Tumble::iterators::dedereferencer< old_iterator, output_type, output_ref >::pointer

Definition at line 142 of file iterator_wrapper.h.


Constructor & Destructor Documentation

template<class old_iterator, class output_type, class output_ref = output_type&>
Tumble::iterators::dedereferencer< old_iterator, output_type, output_ref >::dedereferencer (  )  [inline]

Definition at line 144 of file iterator_wrapper.h.

template<class old_iterator, class output_type, class output_ref = output_type&>
Tumble::iterators::dedereferencer< old_iterator, output_type, output_ref >::dedereferencer ( const old_iterator &  it  )  [inline]

Definition at line 145 of file iterator_wrapper.h.


Member Function Documentation

template<class old_iterator, class output_type, class output_ref = output_type&>
reference Tumble::iterators::dedereferencer< old_iterator, output_type, output_ref >::operator * (  )  const [inline]

Definition at line 147 of file iterator_wrapper.h.

template<class old_iterator, class output_type, class output_ref = output_type&>
reference Tumble::iterators::dedereferencer< old_iterator, output_type, output_ref >::operator[] ( const difference_type i  )  const [inline]

Definition at line 150 of file iterator_wrapper.h.

References Tumble::iterators::dedereferencer< old_iterator, output_type, output_ref >::it_.

template<class old_iterator, class output_type, class output_ref = output_type&>
old_iterator Tumble::iterators::dedereferencer< old_iterator, output_type, output_ref >::base (  )  [inline]

Definition at line 154 of file iterator_wrapper.h.

References Tumble::iterators::dedereferencer< old_iterator, output_type, output_ref >::it_.


Member Data Documentation

template<class old_iterator, class output_type, class output_ref = output_type&>
old_iterator Tumble::iterators::dedereferencer< old_iterator, output_type, output_ref >::it_ [private]

Definition at line 131 of file iterator_wrapper.h.

Referenced by Tumble::iterators::dedereferencer< old_iterator, output_type, output_ref >::base(), and Tumble::iterators::dedereferencer< old_iterator, output_type, output_ref >::operator[]().

template<class old_iterator, class output_type, class output_ref = output_type&>
Tumble::iterators::dedereferencer< old_iterator, output_type, output_ref >::define_move_operators

Definition at line 156 of file iterator_wrapper.h.

template<class old_iterator, class output_type, class output_ref = output_type&>
Tumble::iterators::dedereferencer< old_iterator, output_type, output_ref >::define_relational_operators

Definition at line 157 of file iterator_wrapper.h.


The documentation for this class was generated from the following file:
Generated on Mon May 24 09:53:35 2010 for TUMBLE by  doxygen 1.5.2