version 1.6, 2004/06/24 16:14:40 |
version 1.7, 2004/07/08 21:15:11 |
|
|
|
|
#ifndef _SEARCH_H_ |
#ifndef _SEARCH_H_ |
#define _SEARCH_H_ |
#define _SEARCH_H_ |
|
|
#include <sys/cdefs.h> |
#include <sys/cdefs.h> |
#include <machine/ansi.h> |
#include <machine/ansi.h> |
|
|
|
|
|
|
typedef struct entry { |
typedef struct entry { |
char *key; |
char *key; |
char *data; |
void *data; |
} ENTRY; |
} ENTRY; |
|
|
typedef enum { |
typedef enum { |
|
|
} VISIT; |
} VISIT; |
|
|
__BEGIN_DECLS |
__BEGIN_DECLS |
extern void *bsearch(const void *, const void *, size_t, size_t, |
void *bsearch(const void *, const void *, size_t, size_t, |
int (*)(const void *, const void *)); |
int (*)(const void *, const void *)); |
extern int hcreate(size_t); |
int hcreate(size_t); |
extern void hdestroy(void); |
void hdestroy(void); |
extern ENTRY *hsearch(ENTRY, ACTION); |
ENTRY *hsearch(ENTRY, ACTION); |
|
|
extern void *lfind(const void *, const void *, size_t *, size_t, |
void *lfind(const void *, const void *, size_t *, size_t, |
int (*)(const void *, const void *)); |
int (*)(const void *, const void *)); |
extern void *lsearch(const void *, const void *, size_t *, size_t, |
void *lsearch(const void *, const void *, size_t *, size_t, |
int (*)(const void *, const void *)); |
int (*)(const void *, const void *)); |
extern void insque(void *, void *); |
void insque(void *, void *); |
extern void remque(void *); |
void remque(void *); |
|
|
extern void *tdelete(const void *, void **, |
void *tdelete(const void *, void **, |
int (*)(const void *, const void *)); |
int (*)(const void *, const void *)); |
extern void *tfind(const void *, void * const *, |
void *tfind(const void *, void * const *, |
int (*)(const void *, const void *)); |
int (*)(const void *, const void *)); |
extern void *tsearch(const void *, void **, |
void *tsearch(const void *, void **, |
int (*)(const void *, const void *)); |
int (*)(const void *, const void *)); |
extern void twalk(const void *, void (*)(const void *, VISIT, int)); |
void twalk(const void *, void (*)(const void *, VISIT, int)); |
__END_DECLS |
__END_DECLS |
|
|
#endif |
#endif /* !_SEARCH_H_ */ |