Lines Matching refs:__z
143 _Rb_global<_Dummy>::_Rebalance_for_erase(_Rb_tree_node_base* __z,
147 _Rb_tree_node_base* __y = __z;
151 if (__y->_M_left == 0) // __z has at most one non-null child. y == z.
154 if (__y->_M_right == 0) // __z has exactly one non-null child. y == z.
156 else { // __z has two non-null children. Set __y to
157 __y = _Rb_tree_node_base::_S_minimum(__y->_M_right); // __z's successor. __x might be null.
162 if (__y != __z) { // relink y in place of z. y is z's successor
163 __z->_M_left->_M_parent = __y;
164 __y->_M_left = __z->_M_left;
165 if (__y != __z->_M_right) {
169 __y->_M_right = __z->_M_right;
170 __z->_M_right->_M_parent = __y;
174 if (__root == __z)
176 else if (__z->_M_parent->_M_left == __z)
177 __z->_M_parent->_M_left = __y;
179 __z->_M_parent->_M_right = __y;
180 __y->_M_parent = __z->_M_parent;
181 _STLP_STD::swap(__y->_M_color, __z->_M_color);
182 __y = __z;
185 else { // __y == __z
188 if (__root == __z)
191 if (__z->_M_parent->_M_left == __z)
192 __z->_M_parent->_M_left = __x;
194 __z->_M_parent->_M_right = __x;
197 if (__leftmost == __z) {
198 if (__z->_M_right == 0) // __z->_M_left must be null also
199 __leftmost = __z->_M_parent;
200 // makes __leftmost == _M_header if __z == __root
204 if (__rightmost == __z) {
205 if (__z->_M_left == 0) // __z->_M_right must be null also
206 __rightmost = __z->_M_parent;
207 // makes __rightmost == _M_header if __z == __root
208 else // __x == __z->_M_left