From 9c0c9c9284b4cea07656a5e91eaf90adb961a38e Mon Sep 17 00:00:00 2001 From: chai Date: Mon, 18 Mar 2019 00:17:41 +0800 Subject: *luax --- Source/3rdParty/Luax/luax_state.inl | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) (limited to 'Source/3rdParty/Luax/luax_state.inl') diff --git a/Source/3rdParty/Luax/luax_state.inl b/Source/3rdParty/Luax/luax_state.inl index 712eb1d..12fa21f 100644 --- a/Source/3rdParty/Luax/luax_state.inl +++ b/Source/3rdParty/Luax/luax_state.inl @@ -20,7 +20,7 @@ namespace Luax T::RegisterLuaxClass(state); // 检测T里面是否没有注册必须的方法 - #define _assertmethod(I, NAME) \ +#define _assertmethod(I, NAME) \ GetField(I, NAME); \ assert(IsType(-1, LUA_TFUNCTION)); \ Pop(); @@ -28,12 +28,14 @@ namespace Luax _assertmethod(-1, "New"); //_assertmethod(-1, "__gc"); - #undef _assertmethod +#undef _assertmethod +#ifdef LUAX_ENABLE_NATIVE_EXTEND // .Extend() lua_pushvalue(state, -1); // class table lua_pushcclosure(state, LuaxNativeClass::l_ExtendFactory, 1); lua_setfield(state, -2, "Extend"); +#endif // class["__index"] = class lua_pushvalue(state, -1); // class table @@ -74,10 +76,12 @@ namespace Luax lua_pushvalue(state, -1); lua_setfield(state, -2, "__index"); +#ifdef LUAX_ENABLE_NATIVE_EXTEND // .Extend() lua_pushvalue(state, -1); // class table lua_pushcclosure(state, LuaxNativeClass::l_ExtendSingleton, 1); lua_setfield(state, -2, "Extend"); +#endif cc8* type = T::GetLuaxSingletonName(); SetField(top, type); -- cgit v1.1-26-g67d0