|
|
|
@ -45,20 +45,29 @@ struct que_elem |
|
|
|
}; |
|
|
|
#endif |
|
|
|
|
|
|
|
struct hsearch_data |
|
|
|
{ |
|
|
|
struct internal_head *htable; |
|
|
|
size_t htablesize; |
|
|
|
}; |
|
|
|
|
|
|
|
__BEGIN_DECLS |
|
|
|
int hcreate (size_t); |
|
|
|
void hdestroy (void); |
|
|
|
ENTRY *hsearch (ENTRY, ACTION); |
|
|
|
void *lfind (const void *, const void *, size_t *, size_t, |
|
|
|
int (*) (const void *, const void *)); |
|
|
|
void *lsearch (const void *, void *, size_t *, size_t, |
|
|
|
int (*) (const void *, const void *)); |
|
|
|
int hcreate_r (size_t, struct hsearch_data *); |
|
|
|
void hdestroy_r (struct hsearch_data *); |
|
|
|
void *tdelete (const void * __restrict, void ** __restrict, |
|
|
|
int (*) (const void *, const void *)); |
|
|
|
void *tfind (const void *, void * const *, |
|
|
|
void tdestroy (void *, void (*)(void *)); |
|
|
|
void *tfind (const void *, void **, |
|
|
|
int (*) (const void *, const void *)); |
|
|
|
void *tsearch (const void *, void **, int (*) (const void *, const void *)); |
|
|
|
void twalk (const void *, void (*) (const void *, VISIT, int)); |
|
|
|
void *lfind (const void *, const void *, size_t *, size_t, |
|
|
|
int (*) (const void *, const void *)); |
|
|
|
void *lsearch (const void *, void *, size_t *, size_t, |
|
|
|
int (*) (const void *, const void *)); |
|
|
|
__END_DECLS |
|
|
|
|
|
|
|
#endif /* !_SEARCH_H_ */ |
|
|
|
|