diff options
Diffstat (limited to 'source/3rd-party/Luax/luax_state.h')
-rw-r--r-- | source/3rd-party/Luax/luax_state.h | 17 |
1 files changed, 8 insertions, 9 deletions
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) //--------------------------------------------------------------------------------// |