Annotation of embedaddon/lighttpd/src/splaytree.h, revision 1.1.1.2
1.1 misho 1: #ifndef _SPLAY_TREE_H_
2: #define _SPLAY_TREE_H_
1.1.1.2 ! misho 3: #include "first.h"
1.1 misho 4:
5: typedef struct tree_node {
6: struct tree_node * left, * right;
7: int key;
8: int size; /* maintained to be the number of nodes rooted here */
9:
10: void *data;
11: } splay_tree;
12:
13:
14: splay_tree * splaytree_splay (splay_tree *t, int key);
15: splay_tree * splaytree_insert(splay_tree *t, int key, void *data);
16: splay_tree * splaytree_delete(splay_tree *t, int key);
17: splay_tree * splaytree_size(splay_tree *t);
18:
19: #define splaytree_size(x) (((x)==NULL) ? 0 : ((x)->size))
20: /* This macro returns the size of a node. Unlike "x->size", */
21: /* it works even if x=NULL. The test could be avoided by using */
22: /* a special version of NULL which was a real node with size 0. */
23:
24:
25: #endif
FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>