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

        try
        {
            LruAssetCache lruAssetCache = (LruAssetCache)LuaObject.checkSelf(l);
            lruAssetCache.Clear();
            LuaObject.pushValue(l, true);
            result = 1;
        }
        catch (Exception e)
        {
            result = LuaObject.error(l, e);
        }
        return(result);
    }
    public static int GetMaxCount(IntPtr l)
    {
        int result;

        try
        {
            LruAssetCache lruAssetCache = (LruAssetCache)LuaObject.checkSelf(l);
            int           maxCount      = lruAssetCache.GetMaxCount();
            LuaObject.pushValue(l, true);
            LuaObject.pushValue(l, maxCount);
            result = 2;
        }
        catch (Exception e)
        {
            result = LuaObject.error(l, e);
        }
        return(result);
    }
    public static int Add(IntPtr l)
    {
        int result;

        try
        {
            LruAssetCache      lruAssetCache = (LruAssetCache)LuaObject.checkSelf(l);
            UnityEngine.Object a;
            LuaObject.checkType <UnityEngine.Object>(l, 2, out a);
            lruAssetCache.Add(a);
            LuaObject.pushValue(l, true);
            result = 1;
        }
        catch (Exception e)
        {
            result = LuaObject.error(l, e);
        }
        return(result);
    }
    public static int constructor(IntPtr l)
    {
        int result;

        try
        {
            int cacheType;
            LuaObject.checkType(l, 2, out cacheType);
            int maxCount;
            LuaObject.checkType(l, 3, out maxCount);
            LruAssetCache o = new LruAssetCache(cacheType, maxCount);
            LuaObject.pushValue(l, true);
            LuaObject.pushValue(l, o);
            result = 2;
        }
        catch (Exception e)
        {
            result = LuaObject.error(l, e);
        }
        return(result);
    }