Implement twalk(3), add unit tests.

I've also added insque(3) and remque(3) (from NetBSD because the OpenBSD
ones are currently broken for non-circular lists).

I've not added the three hash table functions that should be in this header
because they operate on a single global hash table and thus aren't likely
to be useful.

Bug: https://code.google.com/p/android/issues/detail?id=73719
Change-Id: I97397a7b921e2e860fd9c8032cafd9097380498a
This commit is contained in:
Elliott Hughes
2014-07-23 16:02:26 -07:00
parent 467e49be70
commit 3e424d0a24
14 changed files with 534 additions and 213 deletions

View File

@@ -29,6 +29,9 @@ typedef struct node {
__BEGIN_DECLS
void insque(void*, void*);
void remque(void*);
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*));