aboutsummaryrefslogtreecommitdiff
path: root/scripts/genmsgpack.lua
Commit message (Collapse)AuthorAge
* generators: separate source generators from scriptsBjörn Linse2017-05-10
|
* api: generate ui eventsBjörn Linse2017-05-10
|
* generators: Do not leak error messages textZyX2017-05-08
|
* Merge branch 'master' into luaviml'/luaZyX2017-05-08
|
* genmsgpack: Do not export functions with __Björn Linse2017-04-11
|
* lua: Move files from src/nvim/viml/executor to src/nvim/luaZyX2017-04-11
|
* genmsgpack: Include error source in error messagesZyX2017-03-27
|
* api: Reserve more numbers for internal callsZyX2017-03-27
| | | | | | Reasoning; currently INTERNAL_CALL is mostly used to determine whether it is needed to deal with NL-used-as-NUL problem. This code is useful for nvim_… API calls done from VimL, but not for API calls done from lua, yet lua needs to supply something as channel_id.
* functests: Test for error conditionsZyX2017-03-27
| | | | | | | | | | | | | | | | | | | | | | | During testing found the following bugs: 1. msgpack-gen.lua script is completely unprepared for Float values either in return type or in arguments. Specifically: 1. At the time of writing relevant code FLOAT_OBJ did not exist as well as FLOATING_OBJ, but it would be used by msgpack-gen.lua should return type be Float. I added FLOATING_OBJ macros later because did not know that msgpack-gen.lua uses these _OBJ macros, otherwise it would be FLOAT_OBJ. 2. msgpack-gen.lua should use .data.floating in place of .data.float. But it did not expect that .data subattribute may have name different from lowercased type name. 2. vim_replace_termcodes returned its argument as-is if it receives an empty string (as well as _vim_id*() functions did). But if something in returned argument lives in an allocated memory such action will cause double free: once when freeing arguments, then when freeing return value. It did not cause problems yet because msgpack bindings return empty string as {NULL, 0} and nothing was actually allocated. 3. New code in msgpack-gen.lua popped arguments in reversed order, making lua bindings’ signatures be different from API ones.
* eval: Add luaeval functionZyX2017-03-27
No tests yet, no documentation update, no :lua* stuff, no vim module. converter.c should also work with typval_T, not Object. Known problem: luaeval("1", {}) results in PANIC: unprotected error in call to Lua API (attempt to index a nil value) Ref #3823