]>
Commit | Line | Data |
---|---|---|
0e2cd867 | 1 | /* |
528b2c61 | 2 | * $Id: splay.h,v 1.13 2003/01/23 00:36:48 robertc Exp $ |
0e2cd867 | 3 | */ |
4 | ||
b5638623 | 5 | #ifndef SQUID_SPLAY_H |
6 | #define SQUID_SPLAY_H | |
3c01c392 | 7 | |
8 | typedef struct _splay_node { | |
5b220cbf | 9 | void *data; |
10 | struct _splay_node *left; | |
11 | struct _splay_node *right; | |
3c01c392 | 12 | } splayNode; |
13 | ||
9bc73deb | 14 | typedef int SPLAYCMP(const void *a, const void *b); |
15 | typedef void SPLAYWALKEE(void *nodedata, void *state); | |
a49fd4c6 | 16 | typedef void SPLAYFREE(void *); |
3c01c392 | 17 | |
e6ccf245 | 18 | SQUIDCEXTERN int splayLastResult; |
3c01c392 | 19 | |
e6ccf245 | 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 *); | |
bdffbfa5 | 25 | |
b5638623 | 26 | #endif /* SQUID_SPLAY_H */ |