|
@@ -0,0 +1,22 @@
|
|
|
+using System.Collections.Generic;
|
|
|
+using System.Linq;
|
|
|
+
|
|
|
+namespace InABox.Core
|
|
|
+{
|
|
|
+ public static class QueueExtensions
|
|
|
+ {
|
|
|
+ public static IEnumerable<T> Dequeue<T>(this Queue<T> queue, int chunkSize)
|
|
|
+ {
|
|
|
+ for (int i = 0; i < chunkSize && queue.Count > 0; i++)
|
|
|
+ {
|
|
|
+ yield return queue.Dequeue();
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+ public static Queue<T> ToQueue<T>(this IEnumerable<T> enumerable)
|
|
|
+ {
|
|
|
+ return new Queue<T>(enumerable.ToArray());
|
|
|
+ }
|
|
|
+
|
|
|
+ }
|
|
|
+}
|