a482b6e2e12bbab7c5f3d0d3b60c573ef9baa7ab
[libc-test] / src / api / search.c
1 #include <search.h>
2 #define T(t) (t*)0;
3 #define F(t,n) {t *y = &x.n;}
4 #define C(n) switch(n){case n:;}
5 static void f()
6 {
7 T(size_t)
8 T(ACTION)
9 T(VISIT)
10 {
11 ENTRY x;
12 F(char*,key)
13 F(void*,data)
14 }
15 switch((ACTION)0){
16 case FIND:
17 case ENTER:;
18 }
19 switch((VISIT)0){
20 case preorder:
21 case postorder:
22 case endorder:
23 case leaf:;
24 }
25 {int(*p)(size_t) = hcreate;}
26 {void(*p)(void) = hdestroy;}
27 {ENTRY*(*p)(ENTRY,ACTION) = hsearch;}
28 {void(*p)(void*,void*) = insque;}
29 {void*(*p)(const void*,const void*,size_t*,size_t,int(*)(const void*,const void*)) = lfind;}
30 {void*(*p)(const void*,void*,size_t*,size_t,int(*)(const void*,const void*)) = lsearch;}
31 {void(*p)(void*) = remque;}
32 {void*(*p)(const void*restrict,void**restrict,int(*)(const void*,const void*)) = tdelete;}
33 {void*(*p)(const void*,void*const*,int(*)(const void*,const void*)) = tfind;}
34 {void*(*p)(const void*,void**,int(*)(const void*,const void*)) = tsearch;}
35 {void(*p)(const void*,void(*)(const void*,VISIT,int)) = twalk;}
36 }