Mercurial > hg > nginx-quic
comparison src/core/ngx_rbtree.h @ 205:4a9a2b1dd6fa
nginx-0.0.1-2003-12-04-17:53:00 import
author | Igor Sysoev <igor@sysoev.ru> |
---|---|
date | Thu, 04 Dec 2003 14:53:00 +0000 |
parents | |
children | 9aa426375256 |
comparison
equal
deleted
inserted
replaced
204:e0bcfb77d6c7 | 205:4a9a2b1dd6fa |
---|---|
1 #ifndef _NGX_RBTREE_H_INCLUDED_ | |
2 #define _NGX_RBTREE_H_INCLUDED_ | |
3 | |
4 | |
5 #include <ngx_config.h> | |
6 #include <ngx_core.h> | |
7 | |
8 | |
9 typedef struct ngx_rbtree_s ngx_rbtree_t; | |
10 | |
11 struct ngx_rbtree_s { | |
12 ngx_int_t key; | |
13 ngx_rbtree_t *left; | |
14 ngx_rbtree_t *right; | |
15 ngx_rbtree_t *parent; | |
16 void *data; | |
17 }; | |
18 | |
19 extern ngx_rbtree_t sentinel; | |
20 | |
21 | |
22 void ngx_rbtree_insert(ngx_rbtree_t **root, ngx_rbtree_t *node); | |
23 void ngx_rbtree_delete(ngx_rbtree_t **root, ngx_rbtree_t *node); | |
24 | |
25 | |
26 ngx_inline static ngx_rbtree_t *ngx_rbtree_min(ngx_rbtree_t *root) | |
27 { | |
28 while (root->left != &sentinel) { | |
29 root = root->left; | |
30 } | |
31 | |
32 return root; | |
33 } | |
34 | |
35 | |
36 #endif /* _NGX_RBTREE_H_INCLUDED_ */ |