Mercurial > hg > nginx-quic
comparison src/core/ngx_rbtree.c @ 1023:68cc5e2e1a5d
make global the rbtree color handling macros
author | Igor Sysoev <igor@sysoev.ru> |
---|---|
date | Fri, 12 Jan 2007 19:48:30 +0000 |
parents | 4924b71d77f6 |
children | 4fc402c3ec73 |
comparison
equal
deleted
inserted
replaced
1022:7058eb754ef0 | 1023:68cc5e2e1a5d |
---|---|
10 | 10 |
11 /* | 11 /* |
12 * The red-black tree code is based on the algorithm described in | 12 * The red-black tree code is based on the algorithm described in |
13 * the "Introduction to Algorithms" by Cormen, Leiserson and Rivest. | 13 * the "Introduction to Algorithms" by Cormen, Leiserson and Rivest. |
14 */ | 14 */ |
15 | |
16 #define ngx_rbt_red(node) ((node)->color = 1) | |
17 #define ngx_rbt_black(node) ((node)->color = 0) | |
18 #define ngx_rbt_is_red(node) ((node)->color) | |
19 #define ngx_rbt_is_black(node) (!ngx_rbt_is_red(node)) | |
20 #define ngx_rbt_copy_color(n1, n2) (n1->color = n2->color) | |
21 | 15 |
22 | 16 |
23 static ngx_inline void ngx_rbtree_left_rotate(ngx_rbtree_node_t **root, | 17 static ngx_inline void ngx_rbtree_left_rotate(ngx_rbtree_node_t **root, |
24 ngx_rbtree_node_t *sentinel, ngx_rbtree_node_t *node); | 18 ngx_rbtree_node_t *sentinel, ngx_rbtree_node_t *node); |
25 static ngx_inline void ngx_rbtree_right_rotate(ngx_rbtree_node_t **root, | 19 static ngx_inline void ngx_rbtree_right_rotate(ngx_rbtree_node_t **root, |