public static int get_m_assetCacheList(IntPtr l)
    {
        int result;

        try
        {
            PrefabResourceContainerBase prefabResourceContainerBase = (PrefabResourceContainerBase)LuaObject.checkSelf(l);
            LuaObject.pushValue(l, true);
            LuaObject.pushValue(l, prefabResourceContainerBase.m_assetCacheList);
            result = 2;
        }
        catch (Exception e)
        {
            result = LuaObject.error(l, e);
        }
        return(result);
    }
    public static int RecacheAllAssetsFromResourceManager(IntPtr l)
    {
        int result;

        try
        {
            PrefabResourceContainerBase prefabResourceContainerBase = (PrefabResourceContainerBase)LuaObject.checkSelf(l);
            IEnumerator o = prefabResourceContainerBase.RecacheAllAssetsFromResourceManager();
            LuaObject.pushValue(l, true);
            LuaObject.pushValue(l, o);
            result = 2;
        }
        catch (Exception e)
        {
            result = LuaObject.error(l, e);
        }
        return(result);
    }
    public static int set_m_assetCacheList(IntPtr l)
    {
        int result;

        try
        {
            PrefabResourceContainerBase prefabResourceContainerBase = (PrefabResourceContainerBase)LuaObject.checkSelf(l);
            List <PrefabResourceContainerBase.AssetCacheItem> assetCacheList;
            LuaObject.checkType <List <PrefabResourceContainerBase.AssetCacheItem> >(l, 2, out assetCacheList);
            prefabResourceContainerBase.m_assetCacheList = assetCacheList;
            LuaObject.pushValue(l, true);
            result = 1;
        }
        catch (Exception e)
        {
            result = LuaObject.error(l, e);
        }
        return(result);
    }
    public static int StartLazyLoadBackground(IntPtr l)
    {
        int result;

        try
        {
            int num = LuaDLL.lua_gettop(l);
            if (num == 2)
            {
                PrefabResourceContainerBase prefabResourceContainerBase = (PrefabResourceContainerBase)LuaObject.checkSelf(l);
                bool isLoadAssetAsync;
                LuaObject.checkType(l, 2, out isLoadAssetAsync);
                IEnumerable o = prefabResourceContainerBase.StartLazyLoadBackground(isLoadAssetAsync);
                LuaObject.pushValue(l, true);
                LuaObject.pushValue(l, o);
                result = 2;
            }
            else if (num == 3)
            {
                PrefabResourceContainerBase prefabResourceContainerBase2 = (PrefabResourceContainerBase)LuaObject.checkSelf(l);
                List <string> assetNames;
                LuaObject.checkType <List <string> >(l, 2, out assetNames);
                bool isLoadAssetAsync2;
                LuaObject.checkType(l, 3, out isLoadAssetAsync2);
                IEnumerable o2 = prefabResourceContainerBase2.StartLazyLoadBackground(assetNames, isLoadAssetAsync2);
                LuaObject.pushValue(l, true);
                LuaObject.pushValue(l, o2);
                result = 2;
            }
            else
            {
                LuaObject.pushValue(l, false);
                LuaDLL.lua_pushstring(l, "No matched override function StartLazyLoadBackground to call");
                result = 2;
            }
        }
        catch (Exception e)
        {
            result = LuaObject.error(l, e);
        }
        return(result);
    }
    public static int GetAsset(IntPtr l)
    {
        int result;

        try
        {
            int total = LuaDLL.lua_gettop(l);
            if (LuaObject.matchType(l, total, 2, typeof(string)))
            {
                PrefabResourceContainerBase prefabResourceContainerBase = (PrefabResourceContainerBase)LuaObject.checkSelf(l);
                string assetName;
                LuaObject.checkType(l, 2, out assetName);
                UnityEngine.Object asset = prefabResourceContainerBase.GetAsset(assetName);
                LuaObject.pushValue(l, true);
                LuaObject.pushValue(l, asset);
                result = 2;
            }
            else if (LuaObject.matchType(l, total, 2, typeof(string)))
            {
                PrefabResourceContainerBase prefabResourceContainerBase2 = (PrefabResourceContainerBase)LuaObject.checkSelf(l);
                string assetName2;
                LuaObject.checkType(l, 2, out assetName2);
                UnityEngine.Object asset2 = prefabResourceContainerBase2.GetAsset <UnityEngine.Object>(assetName2);
                LuaObject.pushValue(l, true);
                LuaObject.pushValue(l, asset2);
                result = 2;
            }
            else
            {
                LuaObject.pushValue(l, false);
                LuaDLL.lua_pushstring(l, "No matched override function GetAsset to call");
                result = 2;
            }
        }
        catch (Exception e)
        {
            result = LuaObject.error(l, e);
        }
        return(result);
    }
    public static int TryGetAsset(IntPtr l)
    {
        int result;

        try
        {
            PrefabResourceContainerBase prefabResourceContainerBase = (PrefabResourceContainerBase)LuaObject.checkSelf(l);
            string assetName;
            LuaObject.checkType(l, 2, out assetName);
            UnityEngine.Object o;
            bool b = prefabResourceContainerBase.TryGetAsset(assetName, out o);
            LuaObject.pushValue(l, true);
            LuaObject.pushValue(l, b);
            LuaObject.pushValue(l, o);
            result = 3;
        }
        catch (Exception e)
        {
            result = LuaObject.error(l, e);
        }
        return(result);
    }
    public static int GetAssetAsync(IntPtr l)
    {
        int result;

        try
        {
            PrefabResourceContainerBase prefabResourceContainerBase = (PrefabResourceContainerBase)LuaObject.checkSelf(l);
            string assetName;
            LuaObject.checkType(l, 2, out assetName);
            Action <UnityEngine.Object> onEnd;
            LuaObject.checkDelegate <Action <UnityEngine.Object> >(l, 3, out onEnd);
            bool isLoadAssetAsync;
            LuaObject.checkType(l, 4, out isLoadAssetAsync);
            IEnumerable assetAsync = prefabResourceContainerBase.GetAssetAsync(assetName, onEnd, isLoadAssetAsync);
            LuaObject.pushValue(l, true);
            LuaObject.pushValue(l, assetAsync);
            result = 2;
        }
        catch (Exception e)
        {
            result = LuaObject.error(l, e);
        }
        return(result);
    }