Small cleanup. Unneeded methods removed.
This commit is contained in:
1 parent
53bed6e187
commit
5ee8a8c03f
2 files changed
-1911
No files matched your search
-1880
File diff suppressed because it is too large.
Load diff
@@ -1,5 +1,4 @@
|
|||||||
using Recyclable.Collections.Pools;
|
using Recyclable.Collections.Pools;
|
||||||
using System.Numerics;
|
|
||||||
using System.Runtime.CompilerServices;
|
using System.Runtime.CompilerServices;
|
||||||
|
|
||||||
namespace Recyclable.Collections
|
namespace Recyclable.Collections
|
||||||
@@ -122,36 +121,6 @@ namespace Recyclable.Collections
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
public static IEnumerable<T> Enumerate(T[][] arrays, int chunkSize, long totalCount)
|
|
||||||
{
|
|
||||||
long currentCount = 0;
|
|
||||||
for (var arrayIdx = 0; arrayIdx < arrays.Length && currentCount < totalCount; arrayIdx++)
|
|
||||||
{
|
|
||||||
var array = arrays[arrayIdx];
|
|
||||||
currentCount += chunkSize;
|
|
||||||
switch (currentCount < totalCount)
|
|
||||||
{
|
|
||||||
case true:
|
|
||||||
for (var valueIdx = 0; valueIdx < chunkSize; valueIdx++)
|
|
||||||
{
|
|
||||||
yield return array[valueIdx];
|
|
||||||
}
|
|
||||||
|
|
||||||
break;
|
|
||||||
|
|
||||||
case false:
|
|
||||||
var partialCount = (int)(totalCount % chunkSize);
|
|
||||||
int maxCount = partialCount > 0 ? partialCount : chunkSize;
|
|
||||||
for (var valueIdx = 0; valueIdx < maxCount; valueIdx++)
|
|
||||||
{
|
|
||||||
yield return array[valueIdx];
|
|
||||||
}
|
|
||||||
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Creates a set of new memory buffers, if needed, to allow storing at minimum <paramref name="newCapacity"/> no. of items.
|
/// Creates a set of new memory buffers, if needed, to allow storing at minimum <paramref name="newCapacity"/> no. of items.
|
||||||
/// </summary>
|
/// </summary>
|
||||||
|
|||||||
Reference in new issue
Block a user