1999-08-26 07:53:55 +08:00
|
|
|
#if !defined ISO && !defined POSIX
|
|
|
|
type ENTRY
|
|
|
|
type {struct entry}
|
|
|
|
element {struct entry} {char*} key
|
|
|
|
element {struct entry} {void*} data
|
|
|
|
|
|
|
|
type ACTION
|
|
|
|
constant FIND
|
|
|
|
constant ENTER
|
|
|
|
|
|
|
|
type VISIT
|
|
|
|
constant preorder
|
|
|
|
constant postorder
|
|
|
|
constant endorder
|
|
|
|
constant leaf
|
|
|
|
|
|
|
|
function int hcreate (size_t)
|
|
|
|
function void hdestroy (void)
|
|
|
|
function {ENTRY*} hsearch (ENTRY, ACTION)
|
|
|
|
function void insque (void*, void*)
|
|
|
|
function {void*} lfind (const void*, const void*, size_t*, size_t, int (*)(const void*, const void*))
|
|
|
|
function {void*} lsearch (const void*, void*, size_t*, size_t, int (*)(const void*, const void*))
|
|
|
|
function void remque (void*)
|
|
|
|
function {void*} tdelete (const void*, void**, int(*)(const void*, const void*))
|
2000-02-23 14:02:09 +08:00
|
|
|
function {void*} tfind (const void*, void*const*, int(*)(const void*, const void*))
|
1999-08-26 07:53:55 +08:00
|
|
|
function {void*} tsearch (const void*, void**, int(*)(const void*, const void*))
|
|
|
|
function void twalk (const void*, void (*) (const void*, VISIT, int))
|
1999-08-26 08:13:21 +08:00
|
|
|
|
|
|
|
allow *_t
|
1999-08-26 07:53:55 +08:00
|
|
|
#endif
|