diff options
Diffstat (limited to 'Runtime/Lua')
-rw-r--r-- | Runtime/Lua/LuaBind/LuaBindClass.hpp | 4 | ||||
-rw-r--r-- | Runtime/Lua/LuaHelper.h | 1 | ||||
-rw-r--r-- | Runtime/Lua/LuaObjectProxy.h | 6 |
3 files changed, 9 insertions, 2 deletions
diff --git a/Runtime/Lua/LuaBind/LuaBindClass.hpp b/Runtime/Lua/LuaBind/LuaBindClass.hpp index a5ac978..27b3261 100644 --- a/Runtime/Lua/LuaBind/LuaBindClass.hpp +++ b/Runtime/Lua/LuaBind/LuaBindClass.hpp @@ -60,6 +60,8 @@ namespace LuaBind // 对userdata减少一个引用在ref table里,以尝试回收userdata。 template<class DATATYPE> void Release(State& state, DATATYPE* userdata); + LuaBind::VM* GetVM() { return mOwner; } + // 将userdata push到栈顶,如果没有初始化mUserdata,初始化设置好元表并把初始化好的 // userdata留在栈顶。并添加一个引用。这是一个将native对象所有权移交给lua控制的方法。 bool PushUserdata(State& state) override; @@ -87,8 +89,6 @@ namespace LuaBind NativeClass(LuaBind::VM* vm); virtual ~NativeClass(); - LuaBind::VM* GetVM() { return mOwner; } - // 成员引用管理,在实例的ref table里。设置、取、清除 void SetMemberRef(State& state, MemberRef& memRef, int idx); bool PushMemberRef(State& state, MemberRef& memRef); diff --git a/Runtime/Lua/LuaHelper.h b/Runtime/Lua/LuaHelper.h index 1c18620..04fc3ef 100644 --- a/Runtime/Lua/LuaHelper.h +++ b/Runtime/Lua/LuaHelper.h @@ -1,5 +1,6 @@ #pragma once
#include "./LuaBind/LuaBind.h"
+#include "LuaObjectProxy.h"
// lua 5.1 doc: https://www.lua.org/manual/5.1/
diff --git a/Runtime/Lua/LuaObjectProxy.h b/Runtime/Lua/LuaObjectProxy.h new file mode 100644 index 0000000..e5d1b41 --- /dev/null +++ b/Runtime/Lua/LuaObjectProxy.h @@ -0,0 +1,6 @@ +#pragma once + +// access lua side object's field and methods +class LuaObjectProxy +{ +};
\ No newline at end of file |