static int Get(IntPtr L)
    {
        try
        {
            int count = LuaDLL.lua_gettop(L);

            if (count == 1)
            {
                string arg0 = ToLua.CheckString(L, 1);
                object o    = WGame.Cookie.Get(arg0);
                ToLua.Push(L, o);
                return(1);
            }
            else if (count == 2)
            {
                string arg0 = ToLua.CheckString(L, 1);
                WGame.Cookie.IfNullGetter arg1 = (WGame.Cookie.IfNullGetter)ToLua.CheckDelegate <WGame.Cookie.IfNullGetter>(L, 2);
                object o = WGame.Cookie.Get(arg0, arg1);
                ToLua.Push(L, o);
                return(1);
            }
            else
            {
                return(LuaDLL.luaL_throw(L, "invalid arguments to method: WGame.Cookie.Get"));
            }
        }
        catch (Exception e)
        {
            return(LuaDLL.toluaL_exception(L, e));
        }
    }
    public WGame.Cookie.IfNullGetter WGame_Cookie_IfNullGetter(LuaFunction func, LuaTable self, bool flag)
    {
        if (func == null)
        {
            WGame.Cookie.IfNullGetter fn = delegate() { return(null); };
            return(fn);
        }

        if (!flag)
        {
            WGame_Cookie_IfNullGetter_Event target = new WGame_Cookie_IfNullGetter_Event(func);
            WGame.Cookie.IfNullGetter       d      = target.Call;
            target.method = d.Method;
            return(d);
        }
        else
        {
            WGame_Cookie_IfNullGetter_Event target = new WGame_Cookie_IfNullGetter_Event(func, self);
            WGame.Cookie.IfNullGetter       d      = target.CallWithSelf;
            target.method = d.Method;
            return(d);
        }
    }
 void Push_WGame_Cookie_IfNullGetter(IntPtr L, WGame.Cookie.IfNullGetter o)
 {
     ToLua.Push(L, o);
 }