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>