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 |