From: Mike Pall Date: Fri, 7 Apr 2017 10:27:09 +0000 (+0200) Subject: From Lua 5.3: Add lua_isyieldable(). X-Git-Tag: v2.1.0-beta3~14 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=f2e2a3f757629c520ebcac44ba7fb12cb07e56e2;p=thirdparty%2FLuaJIT.git From Lua 5.3: Add lua_isyieldable(). Contributed by François Perrad. --- diff --git a/src/lj_api.c b/src/lj_api.c index 3c1a07bc..c417af7e 100644 --- a/src/lj_api.c +++ b/src/lj_api.c @@ -1113,6 +1113,11 @@ LUALIB_API int luaL_callmeta(lua_State *L, int idx, const char *field) /* -- Coroutine yield and resume ------------------------------------------ */ +LUA_API int lua_isyieldable(lua_State *L) +{ + return cframe_canyield(L->cframe); +} + LUA_API int lua_yield(lua_State *L, int nresults) { void *cf = L->cframe; diff --git a/src/lua.h b/src/lua.h index 0c653f56..615e0e36 100644 --- a/src/lua.h +++ b/src/lua.h @@ -351,6 +351,9 @@ LUA_API int lua_loadx (lua_State *L, lua_Reader reader, void *dt, LUA_API const lua_Number *lua_version (lua_State *L); LUA_API void lua_copy (lua_State *L, int fromidx, int toidx); +/* From Lua 5.3. */ +LUA_API int lua_isyieldable (lua_State *L); + struct lua_Debug { int event;