|
Zephyr Project API 4.2.99
A Scalable Open Source RTOS
|
Go to the source code of this file.
Data Structures | |
| struct | rbnode |
| Balanced red/black tree node structure. More... | |
| struct | rbtree |
| Balanced red/black tree structure. More... | |
Macros | |
| #define | RB_FOR_EACH(tree, node) |
| Walk a tree in-order without recursing. | |
| #define | RB_FOR_EACH_CONTAINER(tree, node, field) |
| Loop over rbtree with implicit container field logic. | |
Typedefs | |
| typedef bool(* | rb_lessthan_t) (struct rbnode *a, struct rbnode *b) |
| Red/black tree comparison predicate. | |
| typedef void(* | rb_visit_t) (struct rbnode *node, void *cookie) |
| Prototype for node visitor callback. | |
Functions | |
| void | rb_insert (struct rbtree *tree, struct rbnode *node) |
| Insert node into tree. | |
| void | rb_remove (struct rbtree *tree, struct rbnode *node) |
| Remove node from tree. | |
| static struct rbnode * | rb_get_min (struct rbtree *tree) |
| Returns the lowest-sorted member of the tree. | |
| static struct rbnode * | rb_get_max (struct rbtree *tree) |
| Returns the highest-sorted member of the tree. | |
| bool | rb_contains (struct rbtree *tree, struct rbnode *node) |
| Returns true if the given node is part of the tree. | |
| static void | rb_walk (struct rbtree *tree, rb_visit_t visit_fn, void *cookie) |
| Walk/enumerate a rbtree. | |