Lines Matching defs:__z
257 _Rb_tree_rebalance_for_erase(_Rb_tree_node_base* const __z,
263 _Rb_tree_node_base* __y = __z;
267 if (__y->_M_left == 0) // __z has at most one non-null child. y == z.
270 if (__y->_M_right == 0) // __z has exactly one non-null child. y == z.
274 // __z has two non-null children. Set __y to
275 __y = __y->_M_right; // __z's successor. __x might be null.
280 if (__y != __z)
283 __z->_M_left->_M_parent = __y;
284 __y->_M_left = __z->_M_left;
285 if (__y != __z->_M_right)
290 __y->_M_right = __z->_M_right;
291 __z->_M_right->_M_parent = __y;
295 if (__root == __z)
297 else if (__z->_M_parent->_M_left == __z)
298 __z->_M_parent->_M_left = __y;
300 __z->_M_parent->_M_right = __y;
301 __y->_M_parent = __z->_M_parent;
302 std::swap(__y->_M_color, __z->_M_color);
303 __y = __z;
307 { // __y == __z
311 if (__root == __z)
314 if (__z->_M_parent->_M_left == __z)
315 __z->_M_parent->_M_left = __x;
317 __z->_M_parent->_M_right = __x;
318 if (__leftmost == __z)
320 if (__z->_M_right == 0) // __z->_M_left must be null also
321 __leftmost = __z->_M_parent;
322 // makes __leftmost == _M_header if __z == __root
326 if (__rightmost == __z)
328 if (__z->_M_left == 0) // __z->_M_right must be null also
329 __rightmost = __z->_M_parent;
330 // makes __rightmost == _M_header if __z == __root
331 else // __x == __z->_M_left