diff options
author | chai <chaifix@163.com> | 2019-03-18 00:17:41 +0800 |
---|---|---|
committer | chai <chaifix@163.com> | 2019-03-18 00:17:41 +0800 |
commit | 9c0c9c9284b4cea07656a5e91eaf90adb961a38e (patch) | |
tree | c6bb935775691eb8ed8df88ef988391dfc725b43 /Source | |
parent | 8c047249a3d32f7e03f8bc0cae6861f4f388e3f4 (diff) |
*luax
Diffstat (limited to 'Source')
-rw-r--r-- | Source/3rdParty/Luax/luax_class.hpp | 6 | ||||
-rw-r--r-- | Source/3rdParty/Luax/luax_class.inl | 4 | ||||
-rw-r--r-- | Source/3rdParty/Luax/luax_config.h | 2 | ||||
-rw-r--r-- | Source/3rdParty/Luax/luax_state.inl | 8 | ||||
-rw-r--r-- | Source/Asura.Engine/Graphics/Mesh2D.h | 5 | ||||
-rw-r--r-- | Source/Asura.Engine/graphics/image_data.cpp | 6 | ||||
-rw-r--r-- | Source/Asura.Engine/graphics/image_data.h | 10 | ||||
-rw-r--r-- | Source/Asura.Engine/graphics/mesh2d.h | 5 |
8 files changed, 30 insertions, 16 deletions
diff --git a/Source/3rdParty/Luax/luax_class.hpp b/Source/3rdParty/Luax/luax_class.hpp index 1689e0c..3cbaf9c 100644 --- a/Source/3rdParty/Luax/luax_class.hpp +++ b/Source/3rdParty/Luax/luax_class.hpp @@ -125,15 +125,17 @@ namespace Luax // LUAX_DECL_METHOD( l___gc ); +#ifdef LUAX_ENABLE_NATIVE_EXTEND LUAX_DECL_METHOD( l_ExtendFactory ); +#endif LUAX_DECL_METHOD( l_GetRefTable ); LUAX_DECL_METHOD( l_New ); //------------------------------------------------------------------------------------------------------------ // - +#ifdef LUAX_ENABLE_NATIVE_EXTEND LUAX_DECL_METHOD( l_ExtendSingleton ); - +#endif }; //-------------------------------------------------------------------------------------------------------------- diff --git a/Source/3rdParty/Luax/luax_class.inl b/Source/3rdParty/Luax/luax_class.inl index 48f1c1a..6f00a84 100644 --- a/Source/3rdParty/Luax/luax_class.inl +++ b/Source/3rdParty/Luax/luax_class.inl @@ -345,6 +345,8 @@ namespace Luax return 0; } +#ifdef LUAX_ENABLE_NATIVE_EXTEND + /// /// ࣬luaijԱΪƣDZ֤userdataͳһNative classṩCtor֧֣ /// nativeʵ崴ʹCtorгʼӵкͻһNewбnativeһ͡ @@ -447,6 +449,8 @@ namespace Luax return 1; } +#endif + template<typename T> int LuaxNativeClass<T>::l_GetClass(lua_State* L) { diff --git a/Source/3rdParty/Luax/luax_config.h b/Source/3rdParty/Luax/luax_config.h index 3401336..a161d95 100644 --- a/Source/3rdParty/Luax/luax_config.h +++ b/Source/3rdParty/Luax/luax_config.h @@ -50,6 +50,8 @@ namespace Luax #define LUAX_API LUAX_LIBRARY_EXPORT #endif +//#define LUAX_ENABLE_NATIVE_EXTEND 0 + } #endif
\ No newline at end of file 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); diff --git a/Source/Asura.Engine/Graphics/Mesh2D.h b/Source/Asura.Engine/Graphics/Mesh2D.h index de4a0c8..2c58f00 100644 --- a/Source/Asura.Engine/Graphics/Mesh2D.h +++ b/Source/Asura.Engine/Graphics/Mesh2D.h @@ -3,7 +3,7 @@ #include "Scripting/Luax.hpp" -#include "Scripting/Portable.h" +#include "scripting/portable.hpp" namespace AsuraEngine { @@ -13,7 +13,8 @@ namespace AsuraEngine /// /// 2D meshһЩ㶯 /// - class Mesh2D ASURA_FINAL: public Scripting::Portable + class Mesh2D ASURA_FINAL + : public Scripting::Portable<Mesh2D> { public: diff --git a/Source/Asura.Engine/graphics/image_data.cpp b/Source/Asura.Engine/graphics/image_data.cpp index 68781a1..821bfd6 100644 --- a/Source/Asura.Engine/graphics/image_data.cpp +++ b/Source/Asura.Engine/graphics/image_data.cpp @@ -1,6 +1,6 @@ -#include "ImageData.h" -#include "PNGDecoder.h" -#include "STBDecoder.h" +#include "image_data.h" +#include "png_decoder.h" +#include "stb_decoder.h" namespace AsuraEngine { diff --git a/Source/Asura.Engine/graphics/image_data.h b/Source/Asura.Engine/graphics/image_data.h index 931eaa3..1e711a8 100644 --- a/Source/Asura.Engine/graphics/image_data.h +++ b/Source/Asura.Engine/graphics/image_data.h @@ -3,11 +3,11 @@ #include <list> -#include "Scripting/Luax.hpp" -#include "Filesystem/DecodedData.h" -#include "ImageDecoder.h" -#include "PixelFormat.h" -#include "Color.h" +#include "scripting/luax.hpp" +#include "filesystem/decoded_data.h" +#include "image_decoder.h" +#include "pixel_format.h" +#include "color.h" namespace AsuraEngine { diff --git a/Source/Asura.Engine/graphics/mesh2d.h b/Source/Asura.Engine/graphics/mesh2d.h index de4a0c8..2c58f00 100644 --- a/Source/Asura.Engine/graphics/mesh2d.h +++ b/Source/Asura.Engine/graphics/mesh2d.h @@ -3,7 +3,7 @@ #include "Scripting/Luax.hpp" -#include "Scripting/Portable.h" +#include "scripting/portable.hpp" namespace AsuraEngine { @@ -13,7 +13,8 @@ namespace AsuraEngine /// /// 2D meshһЩ㶯 /// - class Mesh2D ASURA_FINAL: public Scripting::Portable + class Mesh2D ASURA_FINAL + : public Scripting::Portable<Mesh2D> { public: |