| Function report | 
| Source Code: include\linux\rbtree_augmented.h | Create Date:2022-07-28 06:12:38 | 
| Last Modify:2020-03-12 14:18:49 | Copyright©Brick | 
| home page | Tree | 
| Annotation kernel can get tool activity | Download SCCT | Chinese | 
Name:__rb_erase_augmented
Proto:static __always_inline struct rb_node *__rb_erase_augmented(struct rb_node *node, struct rb_root *root, const struct rb_augment_callbacks *augment)
Type:struct rb_node
Parameter:
| Type | Parameter | Name | 
|---|---|---|
| struct rb_node * | node | |
| struct rb_root * | root | |
| const struct rb_augment_callbacks * | augment | 
| 206 | If Not tmp Then | 
| 214 | pc = __rb_parent_color | 
| 215 | parent = __rb_parent(pc) | 
| 216 | __rb_change_child(node, child, parent, root) | 
| 217 | If child Then | 
| 218 | __rb_parent_color = pc | 
| 219 | rebalance = NULL | 
| 220 | Else rebalance = __rb_is_black(pc) ? parent : NULL | 
| 223 | Else if Not child Then | 
| 225 | __rb_parent_color = pc = __rb_parent_color | 
| 226 | parent = __rb_parent(pc) | 
| 227 | __rb_change_child(node, tmp, parent, root) | 
| 228 | rebalance = NULL | 
| 230 | Else | 
| 234 | If Not tmp Then | 
| 248 | Else | 
| 263 | Do | 
| 269 | WRITE_ONCE(rb_left, child2) | 
| 270 | WRITE_ONCE(rb_right, child) | 
| 271 | rb_set_parent(child, successor) | 
| 278 | WRITE_ONCE(rb_left, tmp) | 
| 279 | rb_set_parent(tmp, successor) | 
| 281 | pc = __rb_parent_color | 
| 282 | tmp = __rb_parent(pc) | 
| 283 | __rb_change_child(node, successor, tmp, root) | 
| 285 | If child2 Then | 
| 286 | rb_set_parent_color(child2, parent, RB_BLACK) | 
| 287 | rebalance = NULL | 
| 288 | Else | 
| 289 | rebalance = rb_is_black(successor) ? parent : NULL | 
| 291 | __rb_parent_color = pc | 
| 296 | Return rebalance | 
| Name | Describe | 
|---|---|
| rb_erase | 
| Source code conversion tool public plug-in interface | X | 
|---|---|
| Support c/c++/esqlc/java Oracle/Informix/Mysql Plug-in can realize: logical Report Code generation and batch code conversion |