Main Page   Class Hierarchy   Alphabetical List   Compound List   File List   Compound Members   File Members  

reverse_iterator Class Template Reference

#include <stl_iterator.h>

Collaboration diagram for reverse_iterator:

Collaboration graph
[legend]
List of all members.

Public Types

typedef random_access_iterator_tag iterator_category
typedef T value_type
typedef Distance difference_type
typedef T * pointer
typedef Reference reference

Public Methods

 reverse_iterator ()
 reverse_iterator (RandomAccessIterator x)
RandomAccessIterator base () const
Reference operator * () const
pointer operator-> () const
selfoperator++ ()
self operator++ (int)
selfoperator-- ()
self operator-- (int)
self operator+ (Distance n) const
selfoperator+= (Distance n)
self operator- (Distance n) const
selfoperator-= (Distance n)
Reference operator[] (Distance n) const

Protected Attributes

RandomAccessIterator current

Private Types

typedef reverse_iterator<
RandomAccessIterator, T,
Reference, Distance > 
self

template<class RandomAccessIterator, class T, class Reference = T&, class Distance = ptrdiff_t>
class reverse_iterator< RandomAccessIterator, T, Reference, Distance >


Member Typedef Documentation

template<class RandomAccessIterator, class T, class Reference = T&, class Distance = ptrdiff_t>
typedef Distance reverse_iterator::difference_type
 

Definition at line 642 of file stl_iterator.h.

template<class RandomAccessIterator, class T, class Reference = T&, class Distance = ptrdiff_t>
typedef random_access_iterator_tag reverse_iterator::iterator_category
 

Definition at line 640 of file stl_iterator.h.

template<class RandomAccessIterator, class T, class Reference = T&, class Distance = ptrdiff_t>
typedef T* reverse_iterator::pointer
 

Definition at line 643 of file stl_iterator.h.

Referenced by operator->.

template<class RandomAccessIterator, class T, class Reference = T&, class Distance = ptrdiff_t>
typedef Reference reverse_iterator::reference
 

Definition at line 644 of file stl_iterator.h.

template<class RandomAccessIterator, class T, class Reference = T&, class Distance = ptrdiff_t>
typedef reverse_iterator<RandomAccessIterator, T, Reference, Distance> reverse_iterator::self [private]
 

Definition at line 636 of file stl_iterator.h.

Referenced by operator+, and operator-.

template<class RandomAccessIterator, class T, class Reference = T&, class Distance = ptrdiff_t>
typedef T reverse_iterator::value_type
 

Definition at line 641 of file stl_iterator.h.


Constructor & Destructor Documentation

template<class RandomAccessIterator, class T, class Reference = T&, class Distance = ptrdiff_t>
reverse_iterator< RandomAccessIterator, T, Reference, Distance >::reverse_iterator   [inline]
 

Definition at line 646 of file stl_iterator.h.

00646 {}

template<class RandomAccessIterator, class T, class Reference = T&, class Distance = ptrdiff_t>
reverse_iterator< RandomAccessIterator, T, Reference, Distance >::reverse_iterator RandomAccessIterator    x [inline, explicit]
 

Definition at line 647 of file stl_iterator.h.

References current.

00647 : current(x) {}


Member Function Documentation

template<class RandomAccessIterator, class T, class Reference = T&, class Distance = ptrdiff_t>
RandomAccessIterator reverse_iterator< RandomAccessIterator, T, Reference, Distance >::base   const [inline]
 

Definition at line 648 of file stl_iterator.h.

References current.

Referenced by operator+.

00648 { return current; }

template<class RandomAccessIterator, class T, class Reference = T&, class Distance = ptrdiff_t>
Reference reverse_iterator< RandomAccessIterator, T, Reference, Distance >::operator *   const [inline]
 

Definition at line 649 of file stl_iterator.h.

References current.

Referenced by operator->.

00649 { return *(current - 1); }

template<class RandomAccessIterator, class T, class Reference = T&, class Distance = ptrdiff_t>
self reverse_iterator< RandomAccessIterator, T, Reference, Distance >::operator+ Distance    n const [inline]
 

Definition at line 671 of file stl_iterator.h.

References current, and self.

00671                                    {
00672     return self(current - n);
00673   }

template<class RandomAccessIterator, class T, class Reference = T&, class Distance = ptrdiff_t>
self reverse_iterator< RandomAccessIterator, T, Reference, Distance >::operator++ int    [inline]
 

Definition at line 657 of file stl_iterator.h.

References current.

00657                        {
00658     self tmp = *this;
00659     --current;
00660     return tmp;
00661   }

template<class RandomAccessIterator, class T, class Reference = T&, class Distance = ptrdiff_t>
self& reverse_iterator< RandomAccessIterator, T, Reference, Distance >::operator++   [inline]
 

Definition at line 653 of file stl_iterator.h.

References current.

00653                      {
00654     --current;
00655     return *this;
00656   }

template<class RandomAccessIterator, class T, class Reference = T&, class Distance = ptrdiff_t>
self& reverse_iterator< RandomAccessIterator, T, Reference, Distance >::operator+= Distance    n [inline]
 

Definition at line 674 of file stl_iterator.h.

References current.

00674                                {
00675     current -= n;
00676     return *this;
00677   }

template<class RandomAccessIterator, class T, class Reference = T&, class Distance = ptrdiff_t>
self reverse_iterator< RandomAccessIterator, T, Reference, Distance >::operator- Distance    n const [inline]
 

Definition at line 678 of file stl_iterator.h.

References current, and self.

00678                                    {
00679     return self(current + n);
00680   }

template<class RandomAccessIterator, class T, class Reference = T&, class Distance = ptrdiff_t>
self reverse_iterator< RandomAccessIterator, T, Reference, Distance >::operator-- int    [inline]
 

Definition at line 666 of file stl_iterator.h.

References current.

00666                        {
00667     self tmp = *this;
00668     ++current;
00669     return tmp;
00670   }

template<class RandomAccessIterator, class T, class Reference = T&, class Distance = ptrdiff_t>
self& reverse_iterator< RandomAccessIterator, T, Reference, Distance >::operator--   [inline]
 

Definition at line 662 of file stl_iterator.h.

References current.

00662                      {
00663     ++current;
00664     return *this;
00665   }

template<class RandomAccessIterator, class T, class Reference = T&, class Distance = ptrdiff_t>
self& reverse_iterator< RandomAccessIterator, T, Reference, Distance >::operator-= Distance    n [inline]
 

Definition at line 681 of file stl_iterator.h.

References current.

00681                                {
00682     current += n;
00683     return *this;
00684   }

template<class RandomAccessIterator, class T, class Reference = T&, class Distance = ptrdiff_t>
pointer reverse_iterator< RandomAccessIterator, T, Reference, Distance >::operator->   const [inline]
 

Definition at line 651 of file stl_iterator.h.

References operator *, and pointer.

00651 { return &(operator*()); }

template<class RandomAccessIterator, class T, class Reference = T&, class Distance = ptrdiff_t>
Reference reverse_iterator< RandomAccessIterator, T, Reference, Distance >::operator[] Distance    n const [inline]
 

Definition at line 685 of file stl_iterator.h.

00685 { return *(*this + n); }


Member Data Documentation

template<class RandomAccessIterator, class T, class Reference = T&, class Distance = ptrdiff_t>
RandomAccessIterator reverse_iterator::current [protected]
 

Definition at line 638 of file stl_iterator.h.

Referenced by base, operator *, operator+, operator++, operator+=, operator-, operator--, operator-=, and reverse_iterator.


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

Documentation generated on Thu May 2 15:03:42 2002

Generated with doxygen 1.2.12 by Dimitri van Heesch ,   1997-2001