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

            if (count == 2 && TypeChecker.CheckTypes(L, 1, typeof(ToLua_DG_Tweening_Tween), typeof(DG.Tweening.TweenParams)))
            {
                ToLua_DG_Tweening_Tween obj  = (ToLua_DG_Tweening_Tween)ToLua.ToObject(L, 1);
                DG.Tweening.TweenParams arg0 = (DG.Tweening.TweenParams)ToLua.ToObject(L, 2);
                DG.Tweening.Tween       o    = obj.SetAs(arg0);
                ToLua.PushObject(L, o);
                return(1);
            }
            else if (count == 2 && TypeChecker.CheckTypes(L, 1, typeof(ToLua_DG_Tweening_Tween), typeof(DG.Tweening.Tween)))
            {
                ToLua_DG_Tweening_Tween obj  = (ToLua_DG_Tweening_Tween)ToLua.ToObject(L, 1);
                DG.Tweening.Tween       arg0 = (DG.Tweening.Tween)ToLua.ToObject(L, 2);
                DG.Tweening.Tween       o    = obj.SetAs(arg0);
                ToLua.PushObject(L, o);
                return(1);
            }
            else
            {
                return(LuaDLL.luaL_throw(L, "invalid arguments to method: ToLua_DG_Tweening_Tween.SetAs"));
            }
        }
        catch (Exception e)
        {
            return(LuaDLL.toluaL_exception(L, e));
        }
    }