aboutsummaryrefslogtreecommitdiff
path: root/src/lua/modules/bit/je_lua_bit.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/lua/modules/bit/je_lua_bit.cpp')
-rw-r--r--src/lua/modules/bit/je_lua_bit.cpp86
1 files changed, 0 insertions, 86 deletions
diff --git a/src/lua/modules/bit/je_lua_bit.cpp b/src/lua/modules/bit/je_lua_bit.cpp
deleted file mode 100644
index 9484743..0000000
--- a/src/lua/modules/bit/je_lua_bit.cpp
+++ /dev/null
@@ -1,86 +0,0 @@
-#include "common/je_lua_common.h"
-#include "common/je_lua.h"
-#include "libjin/jin.h"
-
-#include <cstdlib>
-
-namespace JinEngine
-{
- namespace Lua
- {
-
- LUA_IMPLEMENT int l_and(lua_State* L)
- {
- int a = luax_checkinteger(L, 1);
- int b = luax_checkinteger(L, 2);
- luax_pushinteger(L, a & b);
- return 1;
- }
-
- LUA_IMPLEMENT int l_or(lua_State* L)
- {
- int a = luax_checkinteger(L, 1);
- int b = luax_checkinteger(L, 2);
- luax_pushinteger(L, a | b);
- return 1;
- }
-
- LUA_IMPLEMENT int l_xor(lua_State* L)
- {
- int a = luax_checkinteger(L, 1);
- int b = luax_checkinteger(L, 2);
- luax_pushinteger(L, a ^ b);
- return 1;
- }
-
- LUA_IMPLEMENT int l_not(lua_State* L)
- {
- int n = luax_checkinteger(L, 1);
- luax_pushinteger(L, ~n);
- return 1;
- }
-
- LUA_IMPLEMENT int l_lshift(lua_State* L)
- {
- int a = luax_checkinteger(L, 1);
- int b = luax_checkinteger(L, 2);
- luax_pushinteger(L, a << b);
- return 1;
- }
-
- LUA_IMPLEMENT int l_rshift(lua_State* L)
- {
- int a = luax_checkinteger(L, 1);
- int b = luax_checkinteger(L, 2);
- luax_pushinteger(L, a >> b);
- return 1;
- }
-
- LUA_IMPLEMENT int l_include(lua_State* L)
- {
- int a = luax_checkinteger(L, 1);
- int b = luax_checkinteger(L, 2);
- luax_pushboolean(L, (a & b) == b);
- return 1;
- }
-
- LUA_EXPORT int luaopen_bit(lua_State* L)
- {
- luaL_Reg methods[] = {
- { "bAnd", l_and },
- { "bOr" , l_or },
- { "bXor", l_xor },
- { "bNot", l_not },
- { "bLs", l_lshift },
- { "bRs", l_rshift },
- { "bInc", l_include },
- { 0, 0 }
- };
-
- luax_newlib(L, methods);
-
- return 1;
- }
-
- } // namespace Lua
-} // namespace JinEngine \ No newline at end of file