From af62f267a24091a16cbafe844d59cdbd4e78f5b1 Mon Sep 17 00:00:00 2001 From: chai Date: Mon, 12 Nov 2018 21:58:05 +0800 Subject: =?UTF-8?q?*=E4=BD=BF=E7=94=A8int=E5=81=9A=E7=8A=B6=E6=80=81?= =?UTF-8?q?=E6=9C=BAkey?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/lua/common/je_lua_reference.cpp | 31 +++++++++++++++++++++++++++++++ 1 file changed, 31 insertions(+) create mode 100644 src/lua/common/je_lua_reference.cpp (limited to 'src/lua/common/je_lua_reference.cpp') diff --git a/src/lua/common/je_lua_reference.cpp b/src/lua/common/je_lua_reference.cpp new file mode 100644 index 0000000..90223de --- /dev/null +++ b/src/lua/common/je_lua_reference.cpp @@ -0,0 +1,31 @@ +#include "je_lua_reference.h" + +namespace JinEngine +{ + namespace Lua + { + + LuaRef::LuaRef(lua_State* L, int i) + : mL(L) + { + luax_pushvalue(mL, i); + mIndex = luax_ref(mL, LUA_REGISTRYINDEX); + } + + LuaRef::~LuaRef() + { + unref(); + } + + void LuaRef::unref() + { + luax_unref(mL, LUA_REGISTRYINDEX, mIndex); + } + + void LuaRef::push() + { + luax_rawgeti(mL, LUA_REGISTRYINDEX, mIndex); + } + + } +} \ No newline at end of file -- cgit v1.1-26-g67d0