diff options
author | Justin M. Keyes <justinkz@gmail.com> | 2017-12-31 01:11:50 +0100 |
---|---|---|
committer | GitHub <noreply@github.com> | 2017-12-31 01:11:50 +0100 |
commit | 9ad557fb2d4a1ef3101c7894a1038aa2eb932a48 (patch) | |
tree | 0664208e25fd4672c05527e4521299452da44961 /test/unit/eval/helpers.lua | |
parent | 46f432074e739a0eca9bb204e9c7769935669dbd (diff) | |
parent | 8ac7c23b7dd7c435fb80315921e3704c8e0a7448 (diff) | |
download | rneovim-9ad557fb2d4a1ef3101c7894a1038aa2eb932a48.tar.gz rneovim-9ad557fb2d4a1ef3101c7894a1038aa2eb932a48.tar.bz2 rneovim-9ad557fb2d4a1ef3101c7894a1038aa2eb932a48.zip |
Merge pull request #7762 from ZyX-I/remove-some-listitems
Remove some tv_list_item_…() functions
Diffstat (limited to 'test/unit/eval/helpers.lua')
-rw-r--r-- | test/unit/eval/helpers.lua | 18 |
1 files changed, 14 insertions, 4 deletions
diff --git a/test/unit/eval/helpers.lua b/test/unit/eval/helpers.lua index d7399182f7..6babd4be77 100644 --- a/test/unit/eval/helpers.lua +++ b/test/unit/eval/helpers.lua @@ -7,7 +7,7 @@ local ffi = helpers.ffi local eq = helpers.eq local eval = cimport('./src/nvim/eval.h', './src/nvim/eval/typval.h', - './src/nvim/hashtab.h') + './src/nvim/hashtab.h', './src/nvim/memory.h') local null_string = {[true]='NULL string'} local null_list = {[true]='NULL list'} @@ -24,10 +24,19 @@ local nil_value = {[true]='nil'} local lua2typvalt +local function tv_list_item_alloc() + return ffi.cast('listitem_T*', eval.xmalloc(ffi.sizeof('listitem_T'))) +end + +local function tv_list_item_free(li) + eval.tv_clear(li.li_tv) + eval.xfree(li) +end + local function li_alloc(nogc) - local gcfunc = eval.tv_list_item_free + local gcfunc = tv_list_item_free if nogc then gcfunc = nil end - local li = ffi.gc(eval.tv_list_item_alloc(), gcfunc) + local li = ffi.gc(tv_list_item_alloc(), gcfunc) li.li_next = nil li.li_prev = nil li.li_tv = {v_type=eval.VAR_UNKNOWN, v_lock=eval.VAR_UNLOCKED} @@ -41,7 +50,7 @@ local function populate_list(l, lua_l, processed) processed[lua_l] = l for i = 1, #lua_l do local item_tv = ffi.gc(lua2typvalt(lua_l[i], processed), nil) - local item_li = eval.tv_list_item_alloc() + local item_li = tv_list_item_alloc() item_li.li_tv = item_tv eval.tv_list_append(l, item_li) end @@ -533,6 +542,7 @@ return { typvalt=typvalt, li_alloc=li_alloc, + tv_list_item_free=tv_list_item_free, dict_iter=dict_iter, list_iter=list_iter, |