diff options
Diffstat (limited to 'Runtime/Lua/LuaBind/LuaBindUtility.h')
-rw-r--r-- | Runtime/Lua/LuaBind/LuaBindUtility.h | 12 |
1 files changed, 3 insertions, 9 deletions
diff --git a/Runtime/Lua/LuaBind/LuaBindUtility.h b/Runtime/Lua/LuaBind/LuaBindUtility.h index b890b57..bf138e4 100644 --- a/Runtime/Lua/LuaBind/LuaBindUtility.h +++ b/Runtime/Lua/LuaBind/LuaBindUtility.h @@ -5,19 +5,15 @@ // RegisterClass 注册类的方法和成员,比如枚举、常量等到class table GetNativeClassName 获得工厂的类名, // 同时用来避免注册时错误注册为了singleton,通过编译时报错避免 +// RegisterClass和win32的宏冲突,所以加个下划线 #define LUA_BIND_DECL_CLASS(type, ...) \ friend class LuaBind::State; \ friend class LuaBind::NativeClass<type,##__VA_ARGS__>; \ - static void RegisterClass(LuaBind::State&); \ + static void RegisterClass_(LuaBind::State&); \ static void RegisterPostprocess(LuaBind::State&); \ static const char* GetNativeClassName() { return #type; }; //static const char* GetClassName() { return #type; }; -// 作为基类的抽象工厂类可以使用此宏,注册一个入口,在派生类的注册函数中调用,注册基类的这些方法。 -#define LUA_BIND_DECL_ABSTRACT_CLASS() \ - static void RegisterClass(::State&);\ - static void RegisterPostprocess(::State&) - #define LUA_BIND_DECL_METHOD(mtd) static int mtd(lua_State* L) #define LUA_BIND_DECL_ENUM(e, under_line_index) @@ -26,7 +22,7 @@ #define LUA_BIND_IMPL_METHOD(type, f) int type::f(lua_State* L) // 由应用程序实现的两个接口。上下文里有一个state。 -#define LUA_BIND_REGISTRY(type) void type::RegisterClass(LuaBind::State& state) +#define LUA_BIND_REGISTRY(type) void type::RegisterClass_(LuaBind::State& state) #define LUA_BIND_POSTPROCESS(type) void type::RegisterPostprocess(LuaBind::State& state) // 用来注册的宏。之前这里忘了用可变宏,导致没有luaclastable ref没有注册对。 @@ -53,8 +49,6 @@ return 0;\ } -#define LUA_BIND_INHERIT(state, type) type::RegisterClass(state) - #define luaxport private #endif
\ No newline at end of file |