From 8164adb15b76f537f8b6c78b9992786b61d61cc8 Mon Sep 17 00:00:00 2001 From: chai Date: Sat, 30 Mar 2019 21:49:29 +0800 Subject: *misc --- source/3rd-party/Luax/luax_class.hpp | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) (limited to 'source/3rd-party/Luax/luax_class.hpp') diff --git a/source/3rd-party/Luax/luax_class.hpp b/source/3rd-party/Luax/luax_class.hpp index bfb1a4d..08b4e3f 100644 --- a/source/3rd-party/Luax/luax_class.hpp +++ b/source/3rd-party/Luax/luax_class.hpp @@ -21,8 +21,16 @@ namespace Luax static void RegisterLuaxPostprocess(Luax::LuaxState&); \ static const char* GetLuaxFactoryName() { return #type; };\ static const char* GetLuaxClassName() { return #type; };\ - static bool IsLuaxClassSingleton() { return false; }; + static bool IsLuaxClassSingleton() { return false; } + /// + /// 作为基类的抽象工厂类可以使用此宏,注册一个入口,在派生类的注册函数中调用,注册基类的这些 + /// 方法。 + /// +#define LUAX_DECL_ABSTRACT_FACTORY() \ + static void RegisterLuaxClass(Luax::LuaxState&);\ + static void RegisterLuaxPostprocess(Luax::LuaxState&) + /// /// RegisterLuaxClass 注册类的方法和成员,比如枚举、常量等到class table /// LuaxGetSingletonName 获得单例的类名 @@ -32,7 +40,7 @@ namespace Luax static void RegisterLuaxPostprocess(Luax::LuaxState&); \ static const char* GetLuaxSingletonName() { return #type; }; \ static const char* GetLuaxClassName() { return #type; }; \ - static bool IsLuaxClassSingleton() { return true; }; + static bool IsLuaxClassSingleton() { return true; } #define LUAX_DECL_METHOD(mtd) static int mtd(lua_State* L) -- cgit v1.1-26-g67d0