libstdc++
GNU C++ library
Loading...
Searching...
No Matches

◆ operator--() [1/2]

template<bool _Const, typename _ValPtr>
_Iterator & std::__rb_tree::_Iterator< _Const, _ValPtr >::operator-- ( )
inlineconstexprnoexcept

Definition at line 619 of file stl_tree.h.

620 {
621 if (_M_node->_M_color == _S_red
622 && _M_node->_M_parent->_M_parent == _M_node)
623 _M_node = _M_node->_M_right;
624 else if (_M_node->_M_left)
625 {
626 _Base_ptr __y = _M_node->_M_left;
627 while (__y->_M_right)
628 __y = __y->_M_right;
629 _M_node = __y;
630 }
631 else
632 {
633 _Base_ptr __y = _M_node->_M_parent;
634 while (_M_node == __y->_M_left)
635 {
636 _M_node = __y;
637 __y = __y->_M_parent;
638 }
639 _M_node = __y;
640 }
641 return *this;
642 }
typename _Node_base::_Base_ptr _Base_ptr
Definition stl_tree.h:553