diff -r 000000000000 -r 84fdfb0344c9 glib.c --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/glib.c Sun Feb 01 21:28:57 2009 +0200 @@ -0,0 +1,31 @@ + +#include + +#include "glib_types.h" +#include "glib_main_context.h" +#include "glib_timeout.h" +#include "glib_source.h" + +int luaopen_glib (lua_State *L) +{ + lua_pushstring (L, LGLIB_OBJREGISTRY); + lua_newtable (L); + lua_createtable (L, 0, 1); + lua_pushstring (L, "__mode"); + lua_pushstring (L, "v"); + lua_settable (L, -3); + lua_setmetatable (L, -2); + lua_rawset (L, LUA_REGISTRYINDEX); + + lua_createtable (L, 3, 0); + lua_pushvalue (L, -1); + lua_setglobal (L, "g"); + + luaopen_glib_main_context (L); + luaopen_glib_source (L); + luaopen_glib_timeout (L); + lua_pop (L, 3); + + return 1; +} +