summaryrefslogtreecommitdiff
path: root/Runtime/Lua/LuaBind/LuaBindUtility.h
diff options
context:
space:
mode:
Diffstat (limited to 'Runtime/Lua/LuaBind/LuaBindUtility.h')
-rw-r--r--Runtime/Lua/LuaBind/LuaBindUtility.h12
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