STLdoc
STLdocumentation
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros
Public Types | Public Member Functions | List of all members
_String_iterator< _Mystr > Class Template Reference
Inheritance diagram for _String_iterator< _Mystr >:
_String_const_iterator< _Mystr > _Iterator012< random_access_iterator_tag, _Mystr::value_type, _Mystr::difference_type, _Mystr::const_pointer, _Mystr::const_reference, _Iterator_base > _Iterator_base0

Public Types

typedef _String_iterator< _Mystr > _Myiter
 
typedef _String_const_iterator< _Mystr > _Mybase
 
typedef random_access_iterator_tag iterator_category
 
typedef _Mystr::value_type value_type
 
typedef _Mystr::difference_type difference_type
 
typedef _Mystr::pointer pointer
 
typedef _Mystr::reference reference
 
typedef pointer _Unchecked_type
 
- Public Types inherited from _String_const_iterator< _Mystr >
typedef _String_const_iterator< _Mystr > _Myiter
 
typedef random_access_iterator_tag iterator_category
 
typedef _Mystr::value_type value_type
 
typedef _Mystr::difference_type difference_type
 
typedef _Mystr::const_pointer pointer
 
typedef _Mystr::const_reference reference
 
typedef pointer _Unchecked_type
 
- Public Types inherited from _Iterator012< random_access_iterator_tag, _Mystr::value_type, _Mystr::difference_type, _Mystr::const_pointer, _Mystr::const_reference, _Iterator_base >
typedef random_access_iterator_tag iterator_category
 
typedef _Mystr::value_type value_type
 
typedef _Mystr::difference_type difference_type
 
typedef _Mystr::const_pointer pointer
 
typedef _Mystr::const_reference reference
 

Public Member Functions

 _String_iterator ()
 
 _String_iterator (pointer _Parg, const _Container_base *_Pstring)
 
_Myiter_Rechecked (_Unchecked_type _Right)
 
_Unchecked_type _Unchecked () const
 
reference operator* () const
 
pointer operator-> () const
 
_Myiteroperator++ ()
 
_Myiter operator++ (int)
 
_Myiteroperator-- ()
 
_Myiter operator-- (int)
 
_Myiteroperator+= (const difference_type _Off)
 
_Myiter operator+ (const difference_type _Off) const
 
_Myiteroperator-= (const difference_type _Off)
 
_Myiter operator- (const difference_type _Off) const
 
difference_type operator- (const _Mybase &_Right) const
 
reference operator[] (const difference_type _Off) const
 
- Public Member Functions inherited from _String_const_iterator< _Mystr >
 _String_const_iterator ()
 
 _String_const_iterator (pointer _Parg, const _Container_base *_Pstring)
 
_Myiter_Rechecked (_Unchecked_type _Right)
 
_Unchecked_type _Unchecked () const
 
reference operator* () const
 
pointer operator-> () const
 
_Myiteroperator++ ()
 
_Myiter operator++ (int)
 
_Myiteroperator-- ()
 
_Myiter operator-- (int)
 
_Myiteroperator+= (const difference_type _Off)
 
_Myiter operator+ (const difference_type _Off) const
 
_Myiteroperator-= (const difference_type _Off)
 
_Myiter operator- (const difference_type _Off) const
 
difference_type operator- (const _Myiter &_Right) const
 
reference operator[] (const difference_type _Off) const
 
bool operator== (const _Myiter &_Right) const
 
bool operator!= (const _Myiter &_Right) const
 
bool operator< (const _Myiter &_Right) const
 
bool operator> (const _Myiter &_Right) const
 
bool operator<= (const _Myiter &_Right) const
 
bool operator>= (const _Myiter &_Right) const
 
void _Compat (const _Myiter &) const
 
- Public Member Functions inherited from _Iterator_base0
void _Adopt (const void *)
 
const _Container_base0_Getcont () const
 

Additional Inherited Members

- Public Attributes inherited from _String_const_iterator< _Mystr >
pointer _Ptr
 

Member Typedef Documentation

template<class _Mystr>
typedef _String_const_iterator<_Mystr> _String_iterator< _Mystr >::_Mybase
template<class _Mystr>
typedef _String_iterator<_Mystr> _String_iterator< _Mystr >::_Myiter
template<class _Mystr>
typedef pointer _String_iterator< _Mystr >::_Unchecked_type
template<class _Mystr>
typedef _Mystr::difference_type _String_iterator< _Mystr >::difference_type
template<class _Mystr>
typedef random_access_iterator_tag _String_iterator< _Mystr >::iterator_category
template<class _Mystr>
typedef _Mystr::pointer _String_iterator< _Mystr >::pointer
template<class _Mystr>
typedef _Mystr::reference _String_iterator< _Mystr >::reference
template<class _Mystr>
typedef _Mystr::value_type _String_iterator< _Mystr >::value_type

Constructor & Destructor Documentation

template<class _Mystr>
_String_iterator< _Mystr >::_String_iterator ( )
inline
1416  { // construct with null string pointer
1417  }
template<class _Mystr>
_String_iterator< _Mystr >::_String_iterator ( pointer  _Parg,
const _Container_base _Pstring 
)
inline
1420  : _Mybase(_Parg, _Pstring)
1421  { // construct with pointer _Parg
1422  }
_String_const_iterator< _Mystr > _Mybase
Definition: xstring:1407

Member Function Documentation

template<class _Mystr>
_Myiter& _String_iterator< _Mystr >::_Rechecked ( _Unchecked_type  _Right)
inline
1427  { // reset from unchecked iterator
1428  this->_Ptr = _Right;
1429  return (*this);
1430  }
pointer _Ptr
Definition: xstring:1372
constexpr const _Ty &() _Right
Definition: algorithm:3723
template<class _Mystr>
_Unchecked_type _String_iterator< _Mystr >::_Unchecked ( ) const
inline
1433  { // make an unchecked iterator
1434  return (_Const_cast(this->_Ptr));
1435  }
auto _Const_cast(_Ptrty _Ptr)
Definition: xmemory0:303
pointer _Ptr
Definition: xstring:1372
template<class _Mystr>
reference _String_iterator< _Mystr >::operator* ( ) const
inline
1438  { // return designated object
1439  return ((reference)**(_Mybase *)this);
1440  }
_String_const_iterator< _Mystr > _Mybase
Definition: xstring:1407
_Mystr::reference reference
Definition: xstring:1413
template<class _Mystr>
_Myiter _String_iterator< _Mystr >::operator+ ( const difference_type  _Off) const
inline
1480  { // return this + integer
1481  _Myiter _Tmp = *this;
1482  return (_Tmp += _Off);
1483  }
_String_iterator< _Mystr > _Myiter
Definition: xstring:1406
template<class _Mystr>
_Myiter& _String_iterator< _Mystr >::operator++ ( )
inline
1448  { // preincrement
1449  ++*(_Mybase *)this;
1450  return (*this);
1451  }
_String_const_iterator< _Mystr > _Mybase
Definition: xstring:1407
template<class _Mystr>
_Myiter _String_iterator< _Mystr >::operator++ ( int  )
inline
1454  { // postincrement
1455  _Myiter _Tmp = *this;
1456  ++*this;
1457  return (_Tmp);
1458  }
_String_iterator< _Mystr > _Myiter
Definition: xstring:1406
template<class _Mystr>
_Myiter& _String_iterator< _Mystr >::operator+= ( const difference_type  _Off)
inline
1474  { // increment by integer
1475  *(_Mybase *)this += _Off;
1476  return (*this);
1477  }
_String_const_iterator< _Mystr > _Mybase
Definition: xstring:1407
template<class _Mystr>
_Myiter _String_iterator< _Mystr >::operator- ( const difference_type  _Off) const
inline
1491  { // return this - integer
1492  _Myiter _Tmp = *this;
1493  return (_Tmp -= _Off);
1494  }
_String_iterator< _Mystr > _Myiter
Definition: xstring:1406
template<class _Mystr>
difference_type _String_iterator< _Mystr >::operator- ( const _Mybase _Right) const
inline
1497  { // return difference of iterators
1498  return (*(_Mybase *)this - _Right);
1499  }
_String_const_iterator< _Mystr > _Mybase
Definition: xstring:1407
constexpr const _Ty &() _Right
Definition: algorithm:3723
template<class _Mystr>
_Myiter& _String_iterator< _Mystr >::operator-- ( )
inline
1461  { // predecrement
1462  --*(_Mybase *)this;
1463  return (*this);
1464  }
_String_const_iterator< _Mystr > _Mybase
Definition: xstring:1407
template<class _Mystr>
_Myiter _String_iterator< _Mystr >::operator-- ( int  )
inline
1467  { // postdecrement
1468  _Myiter _Tmp = *this;
1469  --*this;
1470  return (_Tmp);
1471  }
_String_iterator< _Mystr > _Myiter
Definition: xstring:1406
template<class _Mystr>
_Myiter& _String_iterator< _Mystr >::operator-= ( const difference_type  _Off)
inline
1486  { // decrement by integer
1487  return (*this += -_Off);
1488  }
template<class _Mystr>
pointer _String_iterator< _Mystr >::operator-> ( ) const
inline
1443  { // return pointer to class object
1444  return (pointer_traits<pointer>::pointer_to(**this));
1445  }
Definition: xmemory0:254
template<class _Mystr>
reference _String_iterator< _Mystr >::operator[] ( const difference_type  _Off) const
inline
1502  { // subscript
1503  return (*(*this + _Off));
1504  }

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