]> git.ipfire.org Git - thirdparty/squid.git/blob - include/splay.h
C++ conversion
[thirdparty/squid.git] / include / splay.h
1 /*
2 * $Id: splay.h,v 1.12 2002/10/13 20:34:51 robertc Exp $
3 */
4
5 #ifndef SQUID_SPLAY_H
6 #define SQUID_SPLAY_H
7
8 typedef struct _splay_node {
9 void *data;
10 struct _splay_node *left;
11 struct _splay_node *right;
12 } splayNode;
13
14 typedef int SPLAYCMP(const void *a, const void *b);
15 typedef void SPLAYWALKEE(void *nodedata, void *state);
16 typedef void SPLAYFREE(void *);
17
18 SQUIDCEXTERN int splayLastResult;
19
20 SQUIDCEXTERN splayNode *splay_insert(void *, splayNode *, SPLAYCMP *);
21 SQUIDCEXTERN splayNode *splay_splay(const void *, splayNode *, SPLAYCMP *);
22 SQUIDCEXTERN splayNode *splay_delete(const void *, splayNode *, SPLAYCMP *);
23 SQUIDCEXTERN void splay_destroy(splayNode *, SPLAYFREE *);
24 SQUIDCEXTERN void splay_walk(splayNode *, SPLAYWALKEE *, void *);
25
26 #endif /* SQUID_SPLAY_H */