This commit is contained in:
Glenn Maynard
2005-07-05 06:31:45 +00:00
parent 12b5a43ca4
commit df841ec994
3 changed files with 27 additions and 18 deletions
+22
View File
@@ -72,6 +72,28 @@ static const CString EMPTY_STRING;
return (X)(i+1); /*invalid*/ \
}
#define LuaXToString(X) \
LuaFunction( X##ToString, X##ToString( (X) IArg(1) ) );
#define LuaStringToX(X) \
LuaFunction( StringTo##X, (X) StringTo##X( SArg(1) ) );
#define LuaXType(X, CNT, Prefix) \
static void Lua##X(lua_State* L) \
{ \
FOREACH_ENUM( X, CNT, i ) \
{ \
CString s = X##Names[i]; \
s.MakeUpper(); \
LUA->SetGlobal( Prefix+s, i ); \
} \
CString sType = "NUM" #X "S" ; \
sType.MakeUpper(); \
LUA->SetGlobal( sType, CNT ); \
LUA->SetGlobal( Prefix "INVALID", CNT+1 ); \
} \
REGISTER_WITH_LUA_FUNCTION( Lua##X );
#endif
/*