diff options
author | ZyX <kp-pav@yandex.ru> | 2015-08-03 23:06:06 +0300 |
---|---|---|
committer | ZyX <kp-pav@yandex.ru> | 2015-10-08 22:00:16 +0300 |
commit | 07d9ab26c6526c0d9af0435f1adeb614a1b88743 (patch) | |
tree | e3023fdfdd1d24ae1cae114d6e936e7b0641babc /src/nvim/eval_defs.h | |
parent | 56174572bc70947ab1e9e6ef48112272682ad6d8 (diff) | |
download | rneovim-07d9ab26c6526c0d9af0435f1adeb614a1b88743.tar.gz rneovim-07d9ab26c6526c0d9af0435f1adeb614a1b88743.tar.bz2 rneovim-07d9ab26c6526c0d9af0435f1adeb614a1b88743.zip |
*: Make ShaDa code use VimL values for additional_\* data
Diffstat (limited to 'src/nvim/eval_defs.h')
-rw-r--r-- | src/nvim/eval_defs.h | 13 |
1 files changed, 13 insertions, 0 deletions
diff --git a/src/nvim/eval_defs.h b/src/nvim/eval_defs.h index a8a8acd048..373f1e6278 100644 --- a/src/nvim/eval_defs.h +++ b/src/nvim/eval_defs.h @@ -2,6 +2,7 @@ #define NVIM_EVAL_DEFS_H #include <limits.h> +#include <stddef.h> #include "nvim/hashtab.h" @@ -132,4 +133,16 @@ typedef struct list_stack_S { struct list_stack_S *prev; } list_stack_T; +// In a hashtab item "hi_key" points to "di_key" in a dictitem. +// This avoids adding a pointer to the hashtab item. + +/// Convert a dictitem pointer to a hashitem key pointer +#define DI2HIKEY(di) ((di)->di_key) + +/// Convert a hashitem key pointer to a dictitem pointer +#define HIKEY2DI(p) ((dictitem_T *)(p - offsetof(dictitem_T, di_key))) + +/// Convert a hashitem pointer to a dictitem pointer +#define HI2DI(hi) HIKEY2DI((hi)->hi_key) + #endif // NVIM_EVAL_DEFS_H |