summaryrefslogtreecommitdiffhomepage
path: root/src/core/ngx_rbtree.h
diff options
context:
space:
mode:
authorIgor Sysoev <igor@sysoev.ru>2006-11-16 15:34:52 +0000
committerIgor Sysoev <igor@sysoev.ru>2006-11-16 15:34:52 +0000
commit8c5f37e7d3081598090669a74c34facee96134b1 (patch)
tree3a65d6cb4ad9551f755292104a3c90b96137ed88 /src/core/ngx_rbtree.h
parentd2ad7cb3d701bfa934d973eac6abefa4f9e402ce (diff)
downloadnginx-8c5f37e7d3081598090669a74c34facee96134b1.tar.gz
nginx-8c5f37e7d3081598090669a74c34facee96134b1.tar.bz2
rbtree insert procedure
Diffstat (limited to 'src/core/ngx_rbtree.h')
-rw-r--r--src/core/ngx_rbtree.h9
1 files changed, 6 insertions, 3 deletions
diff --git a/src/core/ngx_rbtree.h b/src/core/ngx_rbtree.h
index a57ec778d..c03703dc2 100644
--- a/src/core/ngx_rbtree.h
+++ b/src/core/ngx_rbtree.h
@@ -23,19 +23,20 @@ struct ngx_rbtree_node_s {
ngx_rbtree_node_t *left;
ngx_rbtree_node_t *right;
ngx_rbtree_node_t *parent;
- char color;
+ u_char color;
+ u_char data;
};
typedef struct ngx_rbtree_s ngx_rbtree_t;
-typedef ngx_rbtree_node_t *(*ngx_rbtree_insert_pt) (ngx_rbtree_node_t *root,
+typedef void (*ngx_rbtree_insert_pt) (ngx_rbtree_node_t *root,
ngx_rbtree_node_t *node, ngx_rbtree_node_t *sentinel);
struct ngx_rbtree_s {
ngx_rbtree_node_t *root;
ngx_rbtree_node_t *sentinel;
- /* ngx_rbtree_insert_pt insert; */
+ ngx_rbtree_insert_pt insert;
};
@@ -43,6 +44,8 @@ void ngx_rbtree_insert(ngx_thread_volatile ngx_rbtree_t *tree,
ngx_rbtree_node_t *node);
void ngx_rbtree_delete(ngx_thread_volatile ngx_rbtree_t *tree,
ngx_rbtree_node_t *node);
+void ngx_rbtree_insert_timer_value(ngx_rbtree_node_t *root,
+ ngx_rbtree_node_t *node, ngx_rbtree_node_t *sentinel);
static ngx_inline ngx_rbtree_node_t *