diff options
Diffstat (limited to 'Source/3rdParty/Luax/luax_state.inl')
-rw-r--r-- | Source/3rdParty/Luax/luax_state.inl | 8 |
1 files changed, 6 insertions, 2 deletions
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<T>::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<T>::l_ExtendSingleton, 1); lua_setfield(state, -2, "Extend"); +#endif cc8* type = T::GetLuaxSingletonName(); SetField(top, type); |