Lines Matching refs:rb_node

59 static inline void rb_set_black(struct rb_node *rb)
64 static inline struct rb_node *rb_red_parent(struct rb_node *red)
66 return (struct rb_node *)red->__rb_parent_color;
75 __rb_rotate_set_parents(struct rb_node *old, struct rb_node *new,
78 struct rb_node *parent = rb_parent(old);
85 __rb_insert(struct rb_node *node, struct rb_root *root,
86 void (*augment_rotate)(struct rb_node *old, struct rb_node *new))
88 struct rb_node *parent = rb_red_parent(node), *gparent, *tmp;
227 ____rb_erase_color(struct rb_node *parent, struct rb_root *root,
228 void (*augment_rotate)(struct rb_node *old, struct rb_node *new))
230 struct rb_node *node = NULL, *sibling, *tmp1, *tmp2;
410 void __rb_erase_color(struct rb_node *parent, struct rb_root *root,
411 void (*augment_rotate)(struct rb_node *old, struct rb_node *new))
423 static inline void dummy_propagate(struct rb_node *node, struct rb_node *stop) {}
424 static inline void dummy_copy(struct rb_node *old, struct rb_node *new) {}
425 static inline void dummy_rotate(struct rb_node *old, struct rb_node *new) {}
433 void rb_insert_color(struct rb_node *node, struct rb_root *root)
438 void rb_erase(struct rb_node *node, struct rb_root *root)
440 struct rb_node *rebalance;
453 void __rb_insert_augmented(struct rb_node *node, struct rb_root *root,
454 void (*augment_rotate)(struct rb_node *old, struct rb_node *new))
462 struct rb_node *rb_first(const struct rb_root *root)
464 struct rb_node *n;
466 n = root->rb_node;
474 struct rb_node *rb_last(const struct rb_root *root)
476 struct rb_node *n;
478 n = root->rb_node;
486 struct rb_node *rb_next(const struct rb_node *node)
488 struct rb_node *parent;
501 return (struct rb_node *)node;
517 struct rb_node *rb_prev(const struct rb_node *node)
519 struct rb_node *parent;
532 return (struct rb_node *)node;
545 void rb_replace_node(struct rb_node *victim, struct rb_node *new,
548 struct rb_node *parent = rb_parent(victim);
561 static struct rb_node *rb_left_deepest_node(const struct rb_node *node)
569 return (struct rb_node *)node;
573 struct rb_node *rb_next_postorder(const struct rb_node *node)
575 const struct rb_node *parent;
588 return (struct rb_node *)parent;
591 struct rb_node *rb_first_postorder(const struct rb_root *root)
593 if (!root->rb_node)
596 return rb_left_deepest_node(root->rb_node);