STLdoc
STLdocumentation
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros
Public Types | Public Member Functions | Protected Attributes | List of all members
move_iterator< _RanIt > Class Template Reference

Public Types

typedef move_iterator< _RanIt > _Myt
 
typedef iterator_traits< _RanIt >::iterator_category iterator_category
 
typedef iterator_traits< _RanIt >::value_type value_type
 
typedef iterator_traits< _RanIt >::difference_type difference_type
 
typedef _RanIt pointer
 
typedef value_type && reference
 
typedef _RanIt iterator_type
 

Public Member Functions

 move_iterator ()
 
 move_iterator (iterator_type _Right)
 
template<class _RanIt2 >
 move_iterator (const move_iterator< _RanIt2 > &_Right)
 
template<class _RanIt2 >
_Mytoperator= (const move_iterator< _RanIt2 > &_Right)
 
_RanIt base () const
 
reference operator* () const
 
pointer operator-> () const
 
_Mytoperator++ ()
 
_Myt operator++ (int)
 
_Mytoperator-- ()
 
_Myt operator-- (int)
 
template<class _RanIt2 >
bool _Equal (const move_iterator< _RanIt2 > &_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 >
bool _Less (const move_iterator< _RanIt2 > &_Right) const
 
difference_type operator- (const _Myt &_Right) const
 

Protected Attributes

iterator_type current
 

Member Typedef Documentation

template<class _RanIt>
typedef move_iterator<_RanIt> move_iterator< _RanIt >::_Myt
template<class _RanIt>
typedef iterator_traits<_RanIt>::difference_type move_iterator< _RanIt >::difference_type
template<class _RanIt>
typedef iterator_traits<_RanIt>::iterator_category move_iterator< _RanIt >::iterator_category
template<class _RanIt>
typedef _RanIt move_iterator< _RanIt >::iterator_type
template<class _RanIt>
typedef _RanIt move_iterator< _RanIt >::pointer
template<class _RanIt>
typedef value_type&& move_iterator< _RanIt >::reference
template<class _RanIt>
typedef iterator_traits<_RanIt>::value_type move_iterator< _RanIt >::value_type

Constructor & Destructor Documentation

template<class _RanIt>
move_iterator< _RanIt >::move_iterator ( )
inline
1839  { // construct with default wrapped iterator
1840  }
template<class _RanIt>
move_iterator< _RanIt >::move_iterator ( iterator_type  _Right)
inlineexplicit
1843  : current(_Right)
1844  { // construct wrapped iterator from _Right
1845  }
iterator_type current
Definition: xutility:1948
const _Ty & _Right
Definition: algorithm:4087
template<class _RanIt>
template<class _RanIt2 >
move_iterator< _RanIt >::move_iterator ( const move_iterator< _RanIt2 > &  _Right)
inline
1849  : current(_Right.base())
1850  { // initialize with compatible base
1851  }
_RanIt base() const
Definition: xutility:1860
iterator_type current
Definition: xutility:1948

Member Function Documentation

template<class _RanIt>
template<class _RanIt2 >
bool move_iterator< _RanIt >::_Equal ( const move_iterator< _RanIt2 > &  _Right) const
inline
1903  { // test for iterator equality
1904  return (current == _Right.base());
1905  }
_RanIt base() const
Definition: xutility:1860
iterator_type current
Definition: xutility:1948
template<class _RanIt>
template<class _RanIt2 >
bool move_iterator< _RanIt >::_Less ( const move_iterator< _RanIt2 > &  _Right) const
inline
1938  { // test if this < _Right
1939  return (current < _Right.base());
1940  }
_RanIt base() const
Definition: xutility:1860
iterator_type current
Definition: xutility:1948
template<class _RanIt>
_RanIt move_iterator< _RanIt >::base ( ) const
inline
1861  { // return wrapped iterator
1862  return (current);
1863  }
iterator_type current
Definition: xutility:1948
template<class _RanIt>
reference move_iterator< _RanIt >::operator* ( ) const
inline
1866  { // return designated value
1867  return (_STD move(*current));
1868  }
_OutIt move(_InIt _First, _InIt _Last, _OutIt _Dest)
Definition: xutility:2447
iterator_type current
Definition: xutility:1948
template<class _RanIt>
_Myt move_iterator< _RanIt >::operator+ ( difference_type  _Off) const
inline
1916  { // return this + integer
1917  return (_Myt(current + _Off));
1918  }
move_iterator< _RanIt > _Myt
Definition: xutility:1827
iterator_type current
Definition: xutility:1948
template<class _RanIt>
_Myt& move_iterator< _RanIt >::operator++ ( )
inline
1876  { // preincrement
1877  ++current;
1878  return (*this);
1879  }
iterator_type current
Definition: xutility:1948
template<class _RanIt>
_Myt move_iterator< _RanIt >::operator++ ( int  )
inline
1882  { // postincrement
1883  _Myt _Tmp = *this;
1884  ++current;
1885  return (_Tmp);
1886  }
move_iterator< _RanIt > _Myt
Definition: xutility:1827
iterator_type current
Definition: xutility:1948
template<class _RanIt>
_Myt& move_iterator< _RanIt >::operator+= ( difference_type  _Off)
inline
1910  { // increment by integer
1911  current += _Off;
1912  return (*this);
1913  }
iterator_type current
Definition: xutility:1948
template<class _RanIt>
_Myt move_iterator< _RanIt >::operator- ( difference_type  _Off) const
inline
1927  { // return this - integer
1928  return (_Myt(current - _Off));
1929  }
move_iterator< _RanIt > _Myt
Definition: xutility:1827
iterator_type current
Definition: xutility:1948
template<class _RanIt>
difference_type move_iterator< _RanIt >::operator- ( const _Myt _Right) const
inline
1943  { // return difference of iterators
1944  return (current - _Right.base());
1945  }
iterator_type current
Definition: xutility:1948
const _Ty & _Right
Definition: algorithm:4087
template<class _RanIt>
_Myt& move_iterator< _RanIt >::operator-- ( )
inline
1889  { // predecrement
1890  --current;
1891  return (*this);
1892  }
iterator_type current
Definition: xutility:1948
template<class _RanIt>
_Myt move_iterator< _RanIt >::operator-- ( int  )
inline
1895  { // postdecrement
1896  _Myt _Tmp = *this;
1897  --current;
1898  return (_Tmp);
1899  }
move_iterator< _RanIt > _Myt
Definition: xutility:1827
iterator_type current
Definition: xutility:1948
template<class _RanIt>
_Myt& move_iterator< _RanIt >::operator-= ( difference_type  _Off)
inline
1921  { // decrement by integer
1922  current -= _Off;
1923  return (*this);
1924  }
iterator_type current
Definition: xutility:1948
template<class _RanIt>
pointer move_iterator< _RanIt >::operator-> ( ) const
inline
1871  { // return pointer to class object
1872  return (current);
1873  }
iterator_type current
Definition: xutility:1948
template<class _RanIt>
template<class _RanIt2 >
_Myt& move_iterator< _RanIt >::operator= ( const move_iterator< _RanIt2 > &  _Right)
inline
1855  { // assign with compatible base
1856  current = _Right.base();
1857  return (*this);
1858  }
_RanIt base() const
Definition: xutility:1860
iterator_type current
Definition: xutility:1948
template<class _RanIt>
reference move_iterator< _RanIt >::operator[] ( difference_type  _Off) const
inline
1932  { // subscript
1933  return (_STD move(current[_Off]));
1934  }
_OutIt move(_InIt _First, _InIt _Last, _OutIt _Dest)
Definition: xutility:2447
iterator_type current
Definition: xutility:1948

Member Data Documentation

template<class _RanIt>
iterator_type move_iterator< _RanIt >::current
protected

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