luaL_checkboolean

luaL_optboolean
This commit is contained in:
luca salmin 2021-11-22 10:44:39 +01:00
parent cecd50fb06
commit 07ae23cd40
2 changed files with 17 additions and 0 deletions

View file

@ -20,6 +20,8 @@ LUALIB_API int luaL_getmetafield(lua_State* L, int obj, const char* e);
LUALIB_API int luaL_callmeta(lua_State* L, int obj, const char* e);
LUALIB_API l_noret luaL_typeerrorL(lua_State* L, int narg, const char* tname);
LUALIB_API l_noret luaL_argerrorL(lua_State* L, int narg, const char* extramsg);
LUALIB_API bool luaL_checkboolean(lua_State* L, int numArg);
LUALIB_API bool luaL_optboolean(lua_State* L, int numArg, bool def);
LUALIB_API const char* luaL_checklstring(lua_State* L, int numArg, size_t* l);
LUALIB_API const char* luaL_optlstring(lua_State* L, int numArg, const char* def, size_t* l);
LUALIB_API double luaL_checknumber(lua_State* L, int numArg);

View file

@ -149,6 +149,21 @@ LUALIB_API void luaL_checkany(lua_State* L, int narg)
luaL_error(L, "missing argument #%d", narg);
}
LUALIB_API bool luaL_checkboolean(lua_State* L, int narg)
{
if(!lua_isboolean(L, narg))
tag_error(L, narg, LUA_TBOOLEAN);
return lua_toboolean(L, narg);
}
LUALIB_API bool luaL_optboolean(lua_State* L, int narg, bool def)
{
if (lua_isnoneornil(L, narg))
return def;
else
return luaL_checkboolean(L, narg);
}
LUALIB_API const char* luaL_checklstring(lua_State* L, int narg, size_t* len)
{
const char* s = lua_tolstring(L, narg, len);