コード例 #1
0
    // Token: 0x0600252D RID: 9517 RVA: 0x000887B4 File Offset: 0x000869B4
    public static global::RecycleList <T> MakeValueEnumerable <TStructEnumerable>(ref TStructEnumerable enumerable) where TStructEnumerable : struct, IEnumerable <T>
    {
        global::RecycleList <T> recycleList = global::RecycleList <T> .Make();

        recycleList.AddRange(enumerable);
        return(recycleList);
    }
コード例 #2
0
    // Token: 0x0600252C RID: 9516 RVA: 0x00088794 File Offset: 0x00086994
    public static global::RecycleList <T> Make <TClassEnumerable>(TClassEnumerable enumerable) where TClassEnumerable : class, IEnumerable <T>
    {
        global::RecycleList <T> recycleList = global::RecycleList <T> .Make();

        recycleList.AddRange(enumerable);
        return(recycleList);
    }
コード例 #3
0
    // Token: 0x0600252B RID: 9515 RVA: 0x00088744 File Offset: 0x00086944
    public static global::RecycleList <T> MakeFromValuedEnumerator <TEnumerator>(ref TEnumerator enumerator) where TEnumerator : struct, IEnumerator <T>
    {
        global::RecycleList <T> recycleList = global::RecycleList <T> .Make();

        while (enumerator.MoveNext())
        {
            recycleList.Add((T)((object)enumerator.Current));
        }
        enumerator.Dispose();
        return(recycleList);
    }
コード例 #4
0
    // Token: 0x0600252A RID: 9514 RVA: 0x00088714 File Offset: 0x00086914
    public static void Bin(ref global::RecycleList <T> list)
    {
        if (list != null)
        {
            if (list.bound)
            {
                global::RecycleList <T> .bin.AddLast(list);

                list.bound = false;
            }
            list = null;
        }
    }
コード例 #5
0
    // Token: 0x0600249F RID: 9375 RVA: 0x000873C8 File Offset: 0x000855C8
    public global::RecycleList <T> ExceptList(IEnumerable <T> exceptWith)
    {
        global::RecycleList <T> result = null;

        try
        {
            global::HSet <T> .temp.UnionWith(this);

            global::HSet <T> .temp.ExceptWith(exceptWith);

            result = global::HSet <T> .temp.ToList();
        }
        finally
        {
            global::HSet <T> .temp.Clear();
        }
        return(result);
    }
コード例 #6
0
    // Token: 0x0600249E RID: 9374 RVA: 0x00087368 File Offset: 0x00085568
    public global::RecycleList <T> IntersectList(IEnumerable <T> intersectWith)
    {
        global::RecycleList <T> result = null;

        try
        {
            global::HSet <T> .temp.UnionWith(this);

            global::HSet <T> .temp.IntersectWith(intersectWith);

            result = global::HSet <T> .temp.ToList();
        }
        finally
        {
            global::HSet <T> .temp.Clear();
        }
        return(result);
    }
コード例 #7
0
    // Token: 0x06002529 RID: 9513 RVA: 0x000886C0 File Offset: 0x000868C0
    public static global::RecycleList <T> Make()
    {
        global::RecycleList <T> recycleList;

        if (global::RecycleList <T> .binCount > 0)
        {
            recycleList = global::RecycleList <T> .bin.First.Value;
            global::RecycleList <T> .bin.RemoveFirst();

            global::RecycleList <T> .binCount--;
        }
        else
        {
            recycleList = new global::RecycleList <T>();
        }
        recycleList.bound = true;
        return(recycleList);
    }
コード例 #8
0
    // Token: 0x0600252F RID: 9519 RVA: 0x000887E4 File Offset: 0x000869E4
    public void Dispose()
    {
        global::RecycleList <T> recycleList = this;

        global::RecycleList <T> .Bin(ref recycleList);
    }