2 * Written by J.T. Conklin <jtc@NetBSD.org>
5 * $NetBSD: search.h,v 1.18 2005/07/06 15:47:15 drochner Exp $
12 #include <sys/cdefs.h>
13 #include <sys/_types.h>
15 #ifndef _SIZE_T_DECLARED
16 typedef __size_t size_t;
17 #define _SIZE_T_DECLARED
20 typedef struct entry {
36 #ifdef _SEARCH_PRIVATE
39 struct node *llink, *rlink;
43 struct que_elem *next;
44 struct que_elem *prev;
51 ENTRY *hsearch(ENTRY, ACTION);
53 void *lfind(const void *, const void *, size_t *, size_t,
54 int (*)(const void *, const void *));
55 void *lsearch(const void *, void *, size_t *, size_t,
56 int (*)(const void *, const void *));
57 void insque(void *, void *);
60 void *tdelete(const void * __restrict, void ** __restrict,
61 int (*)(const void *, const void *));
62 void *tfind(const void *, void * const *,
63 int (*)(const void *, const void *));
64 void *tsearch(const void *, void **, int (*)(const void *, const void *));
65 void twalk(const void *, void (*)(const void *, VISIT, int));
68 #endif /* !_SEARCH_H_ */