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

Public Types

typedef _Tree_iterator< _Mytree > _Myiter
 
typedef _Tree_const_iterator< _Mytree > _Mybase
 
typedef bidirectional_iterator_tag iterator_category
 
typedef _Mytree::_Nodeptr _Nodeptr
 
typedef _Mytree::value_type value_type
 
typedef _Mytree::difference_type difference_type
 
typedef _Mytree::pointer pointer
 
typedef _Mytree::reference reference
 
typedef _Tree_unchecked_iterator< _Mytree > _Unchecked_type
 
- Public Types inherited from _Tree_const_iterator< _Mytree >
typedef _Tree_const_iterator< _Mytree > _Myiter
 
typedef _Tree_unchecked_const_iterator< _Mytree, _Iterator_base_Mybase
 
typedef bidirectional_iterator_tag iterator_category
 
typedef _Mytree::_Nodeptr _Nodeptr
 
typedef _Mytree::value_type value_type
 
typedef _Mytree::difference_type difference_type
 
typedef _Mytree::const_pointer pointer
 
typedef _Mytree::const_reference reference
 
typedef _Tree_unchecked_const_iterator< _Mytree > _Unchecked_type
 
- Public Types inherited from _Tree_unchecked_const_iterator< _Mytree, _Iterator_base >
typedef _Tree_unchecked_const_iterator< _Mytree, _Iterator_base_Myiter
 
typedef bidirectional_iterator_tag iterator_category
 
typedef _Mytree::_Nodeptr _Nodeptr
 
typedef _Mytree::value_type value_type
 
typedef _Mytree::difference_type difference_type
 
typedef _Mytree::const_pointer pointer
 
typedef _Mytree::const_reference reference
 
- Public Types inherited from _Iterator012< bidirectional_iterator_tag, _Mytree::value_type, _Mytree::difference_type, _Mytree::const_pointer, _Mytree::const_reference, _Iterator_base >
typedef bidirectional_iterator_tag iterator_category
 
typedef _Mytree::value_type value_type
 
typedef _Mytree::difference_type difference_type
 
typedef _Mytree::const_pointer pointer
 
typedef _Mytree::const_reference reference
 

Public Member Functions

 _Tree_iterator ()
 
 _Tree_iterator (_Nodeptr _Pnode, const _Mytree *_Plist)
 
_Myiter_Rechecked (_Unchecked_type _Right)
 
_Unchecked_type _Unchecked () const
 
reference operator* () const
 
pointer operator-> () const
 
_Myiteroperator++ ()
 
_Myiter operator++ (int)
 
_Myiteroperator-- ()
 
_Myiter operator-- (int)
 
- Public Member Functions inherited from _Tree_const_iterator< _Mytree >
 _Tree_const_iterator ()
 
 _Tree_const_iterator (_Nodeptr _Pnode, const _Mytree *_Plist)
 
_Myiter_Rechecked (_Unchecked_type _Right)
 
_Unchecked_type _Unchecked () const
 
reference operator* () const
 
pointer operator-> () const
 
_Myiteroperator++ ()
 
_Myiter operator++ (int)
 
_Myiteroperator-- ()
 
_Myiter operator-- (int)
 
bool operator== (const _Myiter &_Right) const
 
bool operator!= (const _Myiter &_Right) const
 
- Public Member Functions inherited from _Tree_unchecked_const_iterator< _Mytree, _Iterator_base >
 _Tree_unchecked_const_iterator ()
 
 _Tree_unchecked_const_iterator (_Nodeptr _Pnode, const _Mytree *_Plist)
 
reference operator* () const
 
pointer operator-> () const
 
_Myiteroperator++ ()
 
_Myiter operator++ (int)
 
_Myiteroperator-- ()
 
_Myiter operator-- (int)
 
bool operator== (const _Myiter &_Right) const
 
bool operator!= (const _Myiter &_Right) const
 
_Nodeptr _Mynode () const
 
- Public Member Functions inherited from _Iterator_base0
void _Adopt (const void *)
 
const _Container_base0_Getcont () const
 

Additional Inherited Members

- Public Attributes inherited from _Tree_unchecked_const_iterator< _Mytree, _Iterator_base >
_Nodeptr _Ptr
 

Member Typedef Documentation

template<class _Mytree>
typedef _Tree_const_iterator<_Mytree> _Tree_iterator< _Mytree >::_Mybase
template<class _Mytree>
typedef _Tree_iterator<_Mytree> _Tree_iterator< _Mytree >::_Myiter
template<class _Mytree>
typedef _Mytree::_Nodeptr _Tree_iterator< _Mytree >::_Nodeptr
template<class _Mytree>
typedef _Tree_unchecked_iterator<_Mytree> _Tree_iterator< _Mytree >::_Unchecked_type
template<class _Mytree>
typedef _Mytree::difference_type _Tree_iterator< _Mytree >::difference_type
template<class _Mytree>
typedef bidirectional_iterator_tag _Tree_iterator< _Mytree >::iterator_category
template<class _Mytree>
typedef _Mytree::pointer _Tree_iterator< _Mytree >::pointer
template<class _Mytree>
typedef _Mytree::reference _Tree_iterator< _Mytree >::reference
template<class _Mytree>
typedef _Mytree::value_type _Tree_iterator< _Mytree >::value_type

Constructor & Destructor Documentation

template<class _Mytree>
_Tree_iterator< _Mytree >::_Tree_iterator ( )
inline
379  { // construct with null node
380  }
template<class _Mytree>
_Tree_iterator< _Mytree >::_Tree_iterator ( _Nodeptr  _Pnode,
const _Mytree *  _Plist 
)
inline
383  : _Mybase(_Pnode, _Plist)
384  { // construct with node pointer _Pnode
385  }
_Tree_const_iterator< _Mytree > _Mybase
Definition: xtree:368

Member Function Documentation

template<class _Mytree>
_Myiter& _Tree_iterator< _Mytree >::_Rechecked ( _Unchecked_type  _Right)
inline
390  { // reset from unchecked iterator
391  this->_Ptr = _Right._Ptr;
392  return (*this);
393  }
constexpr const _Ty &() _Right
Definition: algorithm:3591
template<class _Mytree>
_Unchecked_type _Tree_iterator< _Mytree >::_Unchecked ( ) const
inline
396  { // make an unchecked iterator
397  return (_Unchecked_type(this->_Ptr, static_cast<const _Mytree *>(this->_Getcont())));
398  }
_Tree_unchecked_iterator< _Mytree > _Unchecked_type
Definition: xtree:387
const _Container_base0 * _Getcont() const
Definition: xutility:57
template<class _Mytree>
reference _Tree_iterator< _Mytree >::operator* ( ) const
inline
401  { // return designated value
402  return ((reference)**(_Mybase *)this);
403  }
_Mytree::reference reference
Definition: xtree:376
_Tree_const_iterator< _Mytree > _Mybase
Definition: xtree:368
template<class _Mytree>
_Myiter& _Tree_iterator< _Mytree >::operator++ ( )
inline
411  { // preincrement
412  ++static_cast<_Mybase&>(*this);
413  return (*this);
414  }
_Tree_const_iterator< _Mytree > _Mybase
Definition: xtree:368
template<class _Mytree>
_Myiter _Tree_iterator< _Mytree >::operator++ ( int  )
inline
417  { // postincrement
418  _Myiter _Tmp = *this;
419  ++*this;
420  return (_Tmp);
421  }
_Tree_iterator< _Mytree > _Myiter
Definition: xtree:367
template<class _Mytree>
_Myiter& _Tree_iterator< _Mytree >::operator-- ( )
inline
424  { // predecrement
425  --static_cast<_Mybase&>(*this);
426  return (*this);
427  }
_Tree_const_iterator< _Mytree > _Mybase
Definition: xtree:368
template<class _Mytree>
_Myiter _Tree_iterator< _Mytree >::operator-- ( int  )
inline
430  { // postdecrement
431  _Myiter _Tmp = *this;
432  --*this;
433  return (_Tmp);
434  }
_Tree_iterator< _Mytree > _Myiter
Definition: xtree:367
template<class _Mytree>
pointer _Tree_iterator< _Mytree >::operator-> ( ) const
inline
406  { // return pointer to class object
407  return (pointer_traits<pointer>::pointer_to(**this));
408  }
Definition: xmemory0:244

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