diff options
Diffstat (limited to 'bindings/lua')
-rw-r--r-- | bindings/lua/lunit/console.lua (renamed from bindings/lua/lunitx/lunit/console.lua) | 0 | ||||
-rw-r--r-- | bindings/lua/lunit/lunit.lua (renamed from bindings/lua/lunitx/lunit.lua) | 2 | ||||
-rw-r--r-- | bindings/lua/lunitx/atexit.lua | 32 | ||||
-rw-r--r-- | bindings/lua/lunitx/lunitx.lua | 21 | ||||
-rw-r--r-- | bindings/lua/test.lua | 2 | ||||
-rw-r--r-- | bindings/lua/upb.c | 19 |
6 files changed, 17 insertions, 59 deletions
diff --git a/bindings/lua/lunitx/lunit/console.lua b/bindings/lua/lunit/console.lua index 0ff22a4..0ff22a4 100644 --- a/bindings/lua/lunitx/lunit/console.lua +++ b/bindings/lua/lunit/console.lua diff --git a/bindings/lua/lunitx/lunit.lua b/bindings/lua/lunit/lunit.lua index 8fa87de..80f43c1 100644 --- a/bindings/lua/lunitx/lunit.lua +++ b/bindings/lua/lunit/lunit.lua @@ -529,7 +529,7 @@ function lunit.runtest(tcname, testname) orig_assert( is_string(testname) ) if (not getrunner()) then - loadrunner("lunit.console") + loadrunner("console") end local function callit(context, func) diff --git a/bindings/lua/lunitx/atexit.lua b/bindings/lua/lunitx/atexit.lua deleted file mode 100644 index c3cdddc..0000000 --- a/bindings/lua/lunitx/atexit.lua +++ /dev/null @@ -1,32 +0,0 @@ - -local actions = {} - -local atexit - -if _VERSION >= 'Lua 5.2' then - - atexit = function (fn) - actions[#actions+1] = setmetatable({}, { __gc = fn }) - end - -else - - local newproxy = newproxy - local debug = debug - local assert = assert - local setmetatable = setmetatable - - local function gc(fn) - local p = assert(newproxy()) - assert(debug.setmetatable(p, { __gc = fn })) - return p - end - - atexit = function (fn) - actions[#actions+1] = gc(fn) - end - -end - -return atexit - diff --git a/bindings/lua/lunitx/lunitx.lua b/bindings/lua/lunitx/lunitx.lua deleted file mode 100644 index 7656e6a..0000000 --- a/bindings/lua/lunitx/lunitx.lua +++ /dev/null @@ -1,21 +0,0 @@ -local atexit = require "atexit" -local lunit = require "lunit" - ---for k,v in pairs(debug.getinfo(1,"S")) do print(k,v) end --- autonameing --- module("bcrc-test", lunit.testcase, package.seeall) - -atexit(function() - local _, emsg = xpcall(function() - lunit.main(arg) - end, debug.traceback) - if emsg then - print(emsg) - os.exit(1) - end - if lunit.stats.failed > 0 or lunit.stats.errors > 0 then - os.exit(1) - end -end) - -return lunit diff --git a/bindings/lua/test.lua b/bindings/lua/test.lua index fc4db70..b19da53 100644 --- a/bindings/lua/test.lua +++ b/bindings/lua/test.lua @@ -1,6 +1,6 @@ local upb = require "upb" -local lunit = require "lunitx" +local lunit = require "lunit" if _VERSION >= 'Lua 5.2' then _ENV = lunit.module("testupb", "seeall") diff --git a/bindings/lua/upb.c b/bindings/lua/upb.c index 7c41d98..9eb46f3 100644 --- a/bindings/lua/upb.c +++ b/bindings/lua/upb.c @@ -122,11 +122,8 @@ static void lupb_setdefault(lua_State *L, int narg, upb_fielddef *f) { void lupb_checkstatus(lua_State *L, upb_status *s) { if (!upb_ok(s)) { - lua_pushstring(L, upb_status_getstr(s)); - upb_status_uninit(s); + lua_pushstring(L, upb_status_errmsg(s)); lua_error(L); - } else { - upb_status_uninit(s); } } @@ -576,6 +573,12 @@ static int lupb_fielddef_type(lua_State *L) { return 1; } +static int lupb_fielddef_index(lua_State *L) { + const upb_fielddef *f = lupb_fielddef_check(L, 1); + lua_pushnumber(L, upb_fielddef_index(f)); + return 1; +} + static int lupb_fielddef_intfmt(lua_State *L) { const upb_fielddef *f = lupb_fielddef_check(L, 1); lua_pushnumber(L, upb_fielddef_intfmt(f)); @@ -602,6 +605,7 @@ static const struct luaL_Reg lupb_fielddef_m[] = { {"default", lupb_fielddef_default}, {"getsel", lupb_fielddef_getsel}, {"has_subdef", lupb_fielddef_hassubdef}, + {"index", lupb_fielddef_index}, {"intfmt", lupb_fielddef_intfmt}, {"istagdelim", lupb_fielddef_istagdelim}, {"label", lupb_fielddef_label}, @@ -718,6 +722,12 @@ static int lupb_msgdef_selectorcount(lua_State *L) { return 1; } +static int lupb_msgdef_submsgfieldcount(lua_State *L) { + const upb_msgdef *m = lupb_msgdef_check(L, 1); + lua_pushinteger(L, m->submsg_field_count); + return 1; +} + static int lupb_msgdef_field(lua_State *L) { const upb_msgdef *m = lupb_msgdef_check(L, 1); int type = lua_type(L, 2); @@ -766,6 +776,7 @@ static const struct luaL_Reg lupb_msgdef_m[] = { // Internal-only. {"_selector_count", lupb_msgdef_selectorcount}, + {"_submsg_field_count", lupb_msgdef_submsgfieldcount}, {NULL, NULL} }; |