aboutsummaryrefslogtreecommitdiff
path: root/src/nvim/lib/khash.h
diff options
context:
space:
mode:
authorZyX <kp-pav@yandex.ru>2015-08-08 20:41:39 +0300
committerZyX <kp-pav@yandex.ru>2015-10-08 22:00:35 +0300
commitbcdda63e3ab0fcc1e55f51702f78cf602da30a10 (patch)
tree199064ccff2ff81c4d9f26e8945d5c0aedff1010 /src/nvim/lib/khash.h
parentfd4d5521a3445b36fba69046ba6fb0caad8f398d (diff)
downloadrneovim-bcdda63e3ab0fcc1e55f51702f78cf602da30a10.tar.gz
rneovim-bcdda63e3ab0fcc1e55f51702f78cf602da30a10.tar.bz2
rneovim-bcdda63e3ab0fcc1e55f51702f78cf602da30a10.zip
shada: Allocate all hashes on stack
Diffstat (limited to 'src/nvim/lib/khash.h')
-rw-r--r--src/nvim/lib/khash.h15
1 files changed, 15 insertions, 0 deletions
diff --git a/src/nvim/lib/khash.h b/src/nvim/lib/khash.h
index 17f653f45e..e45dcf2c80 100644
--- a/src/nvim/lib/khash.h
+++ b/src/nvim/lib/khash.h
@@ -653,4 +653,19 @@ typedef const char *kh_cstr_t;
*/
#define KHASH_MAP_INIT_STR(name, khval_t) \
KHASH_INIT(name, kh_cstr_t, khval_t, 1, kh_str_hash_func, kh_str_hash_equal)
+
+/*! @function
+ @abstract Return a literal for an empty hash table.
+ @param name Name of the hash table [symbol]
+ */
+#define KHASH_EMPTY_TABLE(name) \
+ ((kh_##name##_t) { \
+ .n_buckets = 0, \
+ .size = 0, \
+ .n_occupied = 0, \
+ .upper_bound = 0, \
+ .flags = NULL, \
+ .keys = NULL, \
+ .vals = NULL, \
+ })
#endif /* __AC_KHASH_H */