public LuaState() { L = LuaAPI.luaL_newstate(); LuaAPI.luaL_openlibs(L); LuaAPI.lua_newtable(L); LuaAPI.lua_pushstring(L, "getmetatable"); LuaAPI.lua_getglobal(L, "getmetatable"); LuaAPI.lua_settable(L, -3); LuaAPI.lua_pushstring(L, "rawget"); LuaAPI.lua_getglobal(L, "rawget"); LuaAPI.lua_settable(L, -3); LuaAPI.lua_pushstring(L, "rawset"); LuaAPI.lua_getglobal(L, "rawset"); LuaAPI.lua_settable(L, -3); LuaAPI.lua_setglobal(L, "luanet"); LuaAPI.lua_getglobal(L, "luanet"); translator = new ObjectTranslator(this, L); translator.PushTranslator(L); LuaAPI.lua_atpanic(L, LuaStatic.panic); LuaAPI.lua_pushstdcallcfunction(L, LuaStatic.print); LuaAPI.lua_setglobal(L, "print"); LuaAPI.lua_pushstdcallcfunction(L, LuaStatic.loadfile); LuaAPI.lua_setglobal(L, "loadfile"); LuaAPI.lua_pushstdcallcfunction(L, LuaStatic.dofile); LuaAPI.lua_setglobal(L, "dofile"); LuaAPI.lua_pushstdcallcfunction(L, LuaStatic.importWrap); LuaAPI.lua_setglobal(L, "import"); AddLoader(LuaStatic.loader, 2); AddLoader(LuaStatic.LoadBuiltinLib, 3); errorFuncRef = LuaAPI.get_error_func_ref(L); LuaAPI.lua_settop(L, 0); //clear stack }