From 82222280fe2ee8e5ae28d8992fc39a1e60c096cd Mon Sep 17 00:00:00 2001 From: Glenn Maynard Date: Wed, 27 Sep 2006 08:46:16 +0000 Subject: [PATCH] use lua_setfield --- stepmania/src/LuaBinding.h | 21 +++++++-------------- 1 file changed, 7 insertions(+), 14 deletions(-) diff --git a/stepmania/src/LuaBinding.h b/stepmania/src/LuaBinding.h index 75f43962b5..93f28f9181 100644 --- a/stepmania/src/LuaBinding.h +++ b/stepmania/src/LuaBinding.h @@ -40,21 +40,17 @@ public: // We use the metatable to determine the type of the table, so don't // allow it to be changed. - lua_pushliteral( L, "__metatable" ); lua_pushstring( L, "(hidden)" ); - lua_settable( L, metatable ); + lua_setfield( L, metatable, "__metatable" ); - lua_pushliteral( L, "__index" ); lua_pushvalue( L, methods ); - lua_settable( L, metatable ); + lua_setfield( L, metatable, "__index" ); - lua_pushliteral( L, "__tostring" ); lua_pushcfunction( L, tostring_T ); - lua_settable( L, metatable ); + lua_setfield( L, metatable, "__tostring" ); - lua_pushliteral( L, "__eq" ); lua_pushcfunction( L, equal ); - lua_settable( L, metatable ); + lua_setfield( L, metatable, "__eq" ); // fill method table with methods from class T for( unsigned i=0; s_pvMethods && i < s_pvMethods->size(); i++ ) @@ -71,9 +67,8 @@ public: int methods_metatable = lua_gettop( L ); // Hide the metatable. - lua_pushliteral( L, "__metatable" ); lua_pushstring( L, "(hidden)" ); - lua_settable( L, methods_metatable ); + lua_setfield( L, methods_metatable, "__metatable" ); if( strcmp(m_sBaseClassName, "none") ) { @@ -81,14 +76,12 @@ public: // to the base class. If the base class doesn't exist, we probably // were called before the Register() of the base class; we'll fill // it in when we get to it. - lua_pushliteral( L, "__index" ); LuaBinding::CreateMethodsTable( L, m_sBaseClassName ); - lua_settable( L, methods_metatable ); + lua_setfield( L, methods_metatable, "__index" ); } - lua_pushliteral( L, "type" ); lua_pushstring( L, m_sClassName ); - lua_settable( L, methods_metatable ); + lua_setfield( L, methods_metatable, "type" ); /* Set and pop the methods metatable. */ lua_setmetatable( L, methods );