diff options
author | chai <chaifix@163.com> | 2018-08-12 21:52:15 +0800 |
---|---|---|
committer | chai <chaifix@163.com> | 2018-08-12 21:52:15 +0800 |
commit | 02298dd5b704e9a87b907e1e7df27decccfd0620 (patch) | |
tree | c55b3b82940e044e3c748dd9107956b61b02d95d /src/3rdparty/luax/luax.h | |
parent | 7b34bd98bb00796febd5351b9d2e75fd2c247432 (diff) |
*update
Diffstat (limited to 'src/3rdparty/luax/luax.h')
-rw-r--r-- | src/3rdparty/luax/luax.h | 19 |
1 files changed, 19 insertions, 0 deletions
diff --git a/src/3rdparty/luax/luax.h b/src/3rdparty/luax/luax.h index 6ec4dc9..56023b3 100644 --- a/src/3rdparty/luax/luax.h +++ b/src/3rdparty/luax/luax.h @@ -276,6 +276,25 @@ inline int luax_isfloat(lua_State* L, int i) return 0; return lua_tonumber(L, i) != lua_tointeger(L, i); } + +#define luax_isnumberstrict(L, i) (lua_type(L, i) == LUA_TNUMBER) +#define luax_isstringstrict(L, i) (lua_type(L, i) == LUA_TSTRING) +#define luax_isbooleanstrict(L, i) (lua_type(L, i) == LUA_TBOOLEAN) +#define luax_istablestrict(L, i) (lua_type(L, i) == LUA_TTABLE) +#define luax_isnilstrict(L, i) (lua_type(L, i) == LUA_TNIL) +inline int luax_isintegerstrict(lua_State* L, int i) +{ + if (!luax_isnumberstrict(L, i)) + return 0; + return lua_tonumber(L, i) == lua_tointeger(L, i); +} +inline int luax_isfloatstrict(lua_State* L, int i) +{ + if (!luax_isnumberstrict(L, i)) + return 0; + return lua_tonumber(L, i) != lua_tointeger(L, i); +} + /** * To userdata. */ |