aboutsummaryrefslogtreecommitdiff
path: root/include/__bsearch.h
diff options
context:
space:
mode:
Diffstat (limited to 'include/__bsearch.h')
-rw-r--r--include/__bsearch.h60
1 files changed, 0 insertions, 60 deletions
diff --git a/include/__bsearch.h b/include/__bsearch.h
deleted file mode 100644
index 6abcff6..0000000
--- a/include/__bsearch.h
+++ /dev/null
@@ -1,60 +0,0 @@
-#include <stddef.h>
-
-#include "macros.h"
-
-#define __MLIB_DEFINE_BSEARCH(TYPE, TABLE, DEFAULT) \
- static TYPE mlib_lookup(rune ch) \
- { \
- ptrdiff_t i, lo, hi; \
- lo = 0; \
- hi = lengthof(TABLE) - 1; \
- i = (lo + hi) / 2; \
- do { \
- if (ch < TABLE[i].lo) \
- hi = i - 1; \
- else if (ch > TABLE[i].hi) \
- lo = i + 1; \
- else \
- return TABLE[i].val; \
- i = (lo + hi) / 2; \
- } while (lo <= hi); \
- return DEFAULT; \
- }
-
-#define __MLIB_DEFINE_BSEARCH_CONTAINS(TABLE) \
- static bool mlib_lookup_contains(rune ch) \
- { \
- ptrdiff_t i, lo, hi; \
- lo = 0; \
- hi = lengthof(TABLE) - 1; \
- i = (lo + hi) / 2; \
- do { \
- if (ch < TABLE[i].lo) \
- hi = i - 1; \
- else if (ch > TABLE[i].hi) \
- lo = i + 1; \
- else \
- return true; \
- i = (lo + hi) / 2; \
- } while (lo <= hi); \
- return false; \
- }
-
-#define __MLIB_DEFINE_BSEARCH_KV(TYPE, TABLE, DEFAULT) \
- static TYPE mlib_lookup_kv(rune ch) \
- { \
- ptrdiff_t i, lo, hi; \
- lo = 0; \
- hi = lengthof(TABLE) - 1; \
- i = (lo + hi) / 2; \
- do { \
- if (ch < TABLE[i].k) \
- hi = i - 1; \
- else if (ch > TABLE[i].k) \
- lo = i + 1; \
- else \
- return TABLE[i].v; \
- i = (lo + hi) / 2; \
- } while (lo <= hi); \
- return DEFAULT; \
- }