From 62085e1b49ce2d8a630373e410812d5c4a9eecc2 Mon Sep 17 00:00:00 2001 From: chai Date: Fri, 29 Mar 2019 08:56:55 +0800 Subject: *luax --- source/3rd-party/Luax/luax_state.h | 17 ++++++++--------- 1 file changed, 8 insertions(+), 9 deletions(-) (limited to 'source/3rd-party/Luax/luax_state.h') diff --git a/source/3rd-party/Luax/luax_state.h b/source/3rd-party/Luax/luax_state.h index b6d1ff0..dc3b79f 100644 --- a/source/3rd-party/Luax/luax_state.h +++ b/source/3rd-party/Luax/luax_state.h @@ -27,6 +27,10 @@ namespace Luax { public: + LuaxState(lua_State* state); + LuaxState(const LuaxState& state); + virtual ~LuaxState(); + inline lua_State* operator ->() { return mState; }; inline lua_State& operator *() { return *mState; }; inline operator lua_State*() { return mState; } @@ -192,22 +196,18 @@ namespace Luax void RegisterPlainEnumRegistry(cc8* name); #endif - //------------------------------------------------------------------------------// - protected: friend class LuaxVM; - LuaxState(lua_State* state); - LuaxState(const LuaxState& state); - virtual ~LuaxState(); - /// /// 屏蔽对LuaxState的地址相关操作 /// void* operator &(); void* operator new(size_t size); + //------------------------------------------------------------------------------// + lua_State* const mState; }; @@ -252,12 +252,11 @@ namespace Luax /// 在成员方法里创建LuaxState并对参数进行检查。 /// #define LUAX_SETUP(L, params) \ - LuaxRuntime& runtime = LuaxRuntime::Get(); \ - LuaxState& state = runtime[L].state; \ + Luax::LuaxState state(L); \ if(!state.CheckParams(1, params)) return 0 #define LUAX_STATE(L) \ - Luax::LuaxState& state = Luax::LuaxRuntime::Get().GetLuaxState(L) + Luax::LuaxState state(L) //--------------------------------------------------------------------------------// -- cgit v1.1-26-g67d0