comparison src/core/ngx_radix_tree.h @ 340:0bf903191ceb

nginx-0.0.3-2004-05-25-19:28:46 import
author Igor Sysoev <igor@sysoev.ru>
date Tue, 25 May 2004 15:28:46 +0000
parents
children 41e552841296
comparison
equal deleted inserted replaced
339:8c5b69141dfd 340:0bf903191ceb
1 #ifndef _NGX_RADIX_TREE_H_INCLUDED_
2 #define _NGX_RADIX_TREE_H_INCLUDED_
3
4
5 #include <ngx_config.h>
6 #include <ngx_core.h>
7
8
9 typedef struct ngx_radix_node_s ngx_radix_node_t;
10
11 struct ngx_radix_node_s {
12 uintptr_t value;
13 ngx_radix_node_t *right;
14 ngx_radix_node_t *left;
15 };
16
17
18 typedef struct {
19 ngx_radix_node_t *root;
20 ngx_pool_t *pool;
21 char *free;
22 size_t size;
23 } ngx_radix_tree_t;
24
25
26 ngx_radix_tree_t *ngx_radix_tree_create(ngx_pool_t *pool);
27 ngx_int_t ngx_radix32tree_insert(ngx_radix_tree_t *tree,
28 uint32_t key, uint32_t mask, uintptr_t value);
29 void ngx_radix32tree_delete(ngx_radix_tree_t *tree,
30 uint32_t key, uint32_t mask);
31 uintptr_t ngx_radix32tree_find(ngx_radix_tree_t *tree, uint32_t key);
32
33
34 #endif /* _NGX_RADIX_TREE_H_INCLUDED_ */