diff src/core/ngx_rbtree.h @ 853:a7c8cbb4c55f

rbtree insert procedure
author Igor Sysoev <igor@sysoev.ru>
date Thu, 16 Nov 2006 15:34:52 +0000
parents 4390fcad6628
children 4924b71d77f6
line wrap: on
line diff
--- 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_volati
     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 *