lm.c
changeset 19 d775d7289fe4
parent 17 ab4470465a0c
child 23 13f03e604c8a
--- a/lm.c	Sun Apr 05 16:55:48 2009 +0300
+++ b/lm.c	Mon Apr 27 13:15:23 2009 +0300
@@ -22,34 +22,26 @@
 int luaopen_loudmouth (lua_State *L)
 {
 	lua_pushliteral (L, LLM_OBJREGISTRY); // 1 registry key
-	lua_newtable (L);                    // 2 registry value (table)
-	lua_createtable (L, 0, 1);           // 3 metatable
-	lua_pushliteral (L, "__mode");        // 4 metatable key
-	lua_pushliteral (L, "v");             // 5 metatable value
-	lua_settable (L, -3);                // 3 metatable
-	lua_setmetatable (L, -2);            // 2 registry value
-	lua_rawset (L, LUA_REGISTRYINDEX);   // 0
+	lua_newtable (L);                     // 2 registry value (table)
+	lua_createtable (L, 0, 1);            // 3 metatable
+	lua_pushliteral (L, "v");             // 4 metatable value
+	lua_setfield (L, -2, "__mode");       // 3 metatable
+	lua_setmetatable (L, -2);             // 2 registry value
+	lua_rawset (L, LUA_REGISTRYINDEX);    // 0
 	
 	lua_createtable (L, 6, 0);
-
-	lua_pushliteral (L, "message_node");
 	luaopen_lm_message_node (L);
-	lua_settable (L, -3);
-	lua_pushliteral (L, "message");
+	lua_setfield (L, -2, "message_node");
 	luaopen_lm_message (L);
-	lua_settable (L, -3);
-	lua_pushliteral (L, "message_handler");
+	lua_setfield (L, -2, "message");
 	luaopen_lm_message_handler (L);
-	lua_settable (L, -3);
-	lua_pushliteral (L, "proxy");
+	lua_setfield (L, -2, "message_handler");
 	luaopen_lm_proxy (L);
-	lua_settable (L, -3);
-	lua_pushliteral (L, "ssl");
+	lua_setfield (L, -2, "proxy");
 	luaopen_lm_ssl (L);
-	lua_settable (L, -3);
-	lua_pushliteral (L, "connection");
+	lua_setfield (L, -2, "ssl");
 	luaopen_lm_connection (L);
-	lua_settable (L, -3);
+	lua_setfield (L, -2, "connection");
 
 	return 1;
 }