diff options
author | Yatao Li <yatli@microsoft.com> | 2020-03-03 18:17:37 +0800 |
---|---|---|
committer | Yatao Li <yatli@microsoft.com> | 2020-04-28 01:53:05 +0800 |
commit | 6da16ac931eec7be2487ee98e7f605fa12b0171d (patch) | |
tree | 3835e1fee5c75f5f54c0cbc6f23ef5ccefe1c37a /src/nvim/eval/typval.c | |
parent | 9c85caa390ccf6295233c4201a60ccfa66417816 (diff) | |
download | rneovim-6da16ac931eec7be2487ee98e7f605fa12b0171d.tar.gz rneovim-6da16ac931eec7be2487ee98e7f605fa12b0171d.tar.bz2 rneovim-6da16ac931eec7be2487ee98e7f605fa12b0171d.zip |
external pum: use floating point geometry; typval: add tv_dict_add_float
Diffstat (limited to 'src/nvim/eval/typval.c')
-rw-r--r-- | src/nvim/eval/typval.c | 22 |
1 files changed, 22 insertions, 0 deletions
diff --git a/src/nvim/eval/typval.c b/src/nvim/eval/typval.c index c8b5fc294c..773e493d0b 100644 --- a/src/nvim/eval/typval.c +++ b/src/nvim/eval/typval.c @@ -1634,6 +1634,28 @@ int tv_dict_add_nr(dict_T *const d, const char *const key, return OK; } +/// Add a floating point number entry to dictionary +/// +/// @param[out] d Dictionary to add entry to. +/// @param[in] key Key to add. +/// @param[in] key_len Key length. +/// @param[in] nr Floating point number to add. +/// +/// @return OK in case of success, FAIL when key already exists. +int tv_dict_add_float(dict_T *const d, const char *const key, + const size_t key_len, const float_T nr) +{ + dictitem_T *const item = tv_dict_item_alloc_len(key, key_len); + + item->di_tv.v_type = VAR_FLOAT; + item->di_tv.vval.v_float = nr; + if (tv_dict_add(d, item) == FAIL) { + tv_dict_item_free(item); + return FAIL; + } + return OK; +} + /// Add a special entry to dictionary /// /// @param[out] d Dictionary to add entry to. |