#include <lua.h>
#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;
}