STLdoc
STLdocumentation
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros
Public Types | Public Member Functions | Protected Attributes | List of all members
_Revranit< _RanIt, _Base > Class Template Reference
Inheritance diagram for _Revranit< _RanIt, _Base >:

Public Types

typedef _Revranit< _RanIt, _Base > _Myt
 
typedef _Base::difference_type difference_type
 
typedef _Base::pointer pointer
 
typedef _Base::reference reference
 
typedef _RanIt iterator_type
 

Public Member Functions

 _Revranit ()
 
 _Revranit (_RanIt _Right)
 
template<class _RanIt2 , class _Base2 >
 _Revranit (const _Revranit< _RanIt2, _Base2 > &_Right)
 
_RanIt base () const
 
reference operator* () const
 
pointer operator-> () const
 
_Mytoperator++ ()
 
_Myt operator++ (int)
 
_Mytoperator-- ()
 
_Myt operator-- (int)
 
template<class _RanIt2 , class _Base2 >
bool _Equal (const _Revranit< _RanIt2, _Base2 > &_Right) const
 
_Mytoperator+= (difference_type _Off)
 
_Myt operator+ (difference_type _Off) const
 
_Mytoperator-= (difference_type _Off)
 
_Myt operator- (difference_type _Off) const
 
reference operator[] (difference_type _Off) const
 
template<class _RanIt2 , class _Base2 >
bool _Less (const _Revranit< _RanIt2, _Base2 > &_Right) const
 
difference_type operator- (const _Myt &_Right) const
 

Protected Attributes

_RanIt current
 

Member Typedef Documentation

template<class _RanIt, class _Base>
typedef _Revranit<_RanIt, _Base> _Revranit< _RanIt, _Base >::_Myt
template<class _RanIt, class _Base>
typedef _Base::difference_type _Revranit< _RanIt, _Base >::difference_type
template<class _RanIt, class _Base>
typedef _RanIt _Revranit< _RanIt, _Base >::iterator_type
template<class _RanIt, class _Base>
typedef _Base::pointer _Revranit< _RanIt, _Base >::pointer
template<class _RanIt, class _Base>
typedef _Base::reference _Revranit< _RanIt, _Base >::reference

Constructor & Destructor Documentation

template<class _RanIt, class _Base>
_Revranit< _RanIt, _Base >::_Revranit ( )
inline
813  { // construct with default wrapped iterator
814  }
template<class _RanIt, class _Base>
_Revranit< _RanIt, _Base >::_Revranit ( _RanIt  _Right)
inlineexplicit
817  : current(_Right)
818  { // construct wrapped iterator from _Right
819  }
_RanIt current
Definition: xutility:919
const _Ty & _Right
Definition: algorithm:4087
template<class _RanIt, class _Base>
template<class _RanIt2 , class _Base2 >
_Revranit< _RanIt, _Base >::_Revranit ( const _Revranit< _RanIt2, _Base2 > &  _Right)
inline
824  : current(_Right.base())
825  { // initialize with compatible base
826  }
_RanIt current
Definition: xutility:919
_RanIt base() const
Definition: xutility:828

Member Function Documentation

template<class _RanIt, class _Base>
template<class _RanIt2 , class _Base2 >
bool _Revranit< _RanIt, _Base >::_Equal ( const _Revranit< _RanIt2, _Base2 > &  _Right) const
inline
873  { // test for iterator equality
874  return (current == _Right.base());
875  }
_RanIt current
Definition: xutility:919
_RanIt base() const
Definition: xutility:828
template<class _RanIt, class _Base>
template<class _RanIt2 , class _Base2 >
bool _Revranit< _RanIt, _Base >::_Less ( const _Revranit< _RanIt2, _Base2 > &  _Right) const
inline
909  { // test if this < _Right
910  return (_Right.base() < current);
911  }
_RanIt current
Definition: xutility:919
_RanIt base() const
Definition: xutility:828
template<class _RanIt, class _Base>
_RanIt _Revranit< _RanIt, _Base >::base ( ) const
inline
829  { // return wrapped iterator
830  return (current);
831  }
_RanIt current
Definition: xutility:919
template<class _RanIt, class _Base>
reference _Revranit< _RanIt, _Base >::operator* ( ) const
inline
834  { // return designated value
835  _RanIt _Tmp = current;
836  return (*--_Tmp);
837  }
_RanIt current
Definition: xutility:919
template<class _RanIt, class _Base>
_Myt _Revranit< _RanIt, _Base >::operator+ ( difference_type  _Off) const
inline
886  { // return this + integer
887  return (_Myt(current - _Off));
888  }
_Revranit< _RanIt, _Base > _Myt
Definition: xutility:806
_RanIt current
Definition: xutility:919
template<class _RanIt, class _Base>
_Myt& _Revranit< _RanIt, _Base >::operator++ ( )
inline
845  { // preincrement
846  --current;
847  return (*this);
848  }
_RanIt current
Definition: xutility:919
template<class _RanIt, class _Base>
_Myt _Revranit< _RanIt, _Base >::operator++ ( int  )
inline
851  { // postincrement
852  _Myt _Tmp = *this;
853  --current;
854  return (_Tmp);
855  }
_Revranit< _RanIt, _Base > _Myt
Definition: xutility:806
_RanIt current
Definition: xutility:919
template<class _RanIt, class _Base>
_Myt& _Revranit< _RanIt, _Base >::operator+= ( difference_type  _Off)
inline
880  { // increment by integer
881  current -= _Off;
882  return (*this);
883  }
_RanIt current
Definition: xutility:919
template<class _RanIt, class _Base>
_Myt _Revranit< _RanIt, _Base >::operator- ( difference_type  _Off) const
inline
897  { // return this - integer
898  return (_Myt(current + _Off));
899  }
_Revranit< _RanIt, _Base > _Myt
Definition: xutility:806
_RanIt current
Definition: xutility:919
template<class _RanIt, class _Base>
difference_type _Revranit< _RanIt, _Base >::operator- ( const _Myt _Right) const
inline
914  { // return difference of iterators
915  return (_Right.base() - current);
916  }
_RanIt current
Definition: xutility:919
const _Ty & _Right
Definition: algorithm:4087
template<class _RanIt, class _Base>
_Myt& _Revranit< _RanIt, _Base >::operator-- ( )
inline
858  { // predecrement
859  ++current;
860  return (*this);
861  }
_RanIt current
Definition: xutility:919
template<class _RanIt, class _Base>
_Myt _Revranit< _RanIt, _Base >::operator-- ( int  )
inline
864  { // postdecrement
865  _Myt _Tmp = *this;
866  ++current;
867  return (_Tmp);
868  }
_Revranit< _RanIt, _Base > _Myt
Definition: xutility:806
_RanIt current
Definition: xutility:919
template<class _RanIt, class _Base>
_Myt& _Revranit< _RanIt, _Base >::operator-= ( difference_type  _Off)
inline
891  { // decrement by integer
892  current += _Off;
893  return (*this);
894  }
_RanIt current
Definition: xutility:919
template<class _RanIt, class _Base>
pointer _Revranit< _RanIt, _Base >::operator-> ( ) const
inline
840  { // return pointer to class object
841  return (_STD pointer_traits<pointer>::pointer_to(**this));
842  }
Definition: xmemory0:198
template<class _RanIt, class _Base>
reference _Revranit< _RanIt, _Base >::operator[] ( difference_type  _Off) const
inline
902  { // subscript
903  return (*(*this + _Off));
904  }

Member Data Documentation

template<class _RanIt, class _Base>
_RanIt _Revranit< _RanIt, _Base >::current
protected

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