1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
|
#ifndef _SEARCH_H
#define _SEARCH_H
#include <stddef.h>
#ifdef __cplusplus
extern "C" {
#endif
typedef enum {
preorder,
postorder,
endorder,
leaf
} VISIT;
#ifndef __MLIBC_ABI_ONLY
void *tsearch(const void *, void **, int(*compar)(const void *, const void *));
void *tfind(const void *, void *const *, int (*compar)(const void *, const void *));
void *tdelete(const void *, void **, int(*compar)(const void *, const void *));
void twalk(const void *, void (*action)(const void *, VISIT, int));
void tdestroy(void *, void (*free_node)(void *));
void *lsearch(const void *key, void *base, size_t *nelp, size_t width,
int (*compar)(const void *, const void *));
void *lfind(const void *key, const void *base, size_t *nelp,
size_t width, int (*compar)(const void *, const void *));
#endif /* !__MLIBC_ABI_ONLY */
#ifdef __cplusplus
}
#endif
#endif // _SEARCH_H
|