using System;
using System.Collections.Generic;
namespace ICD.Common.Utils.Extensions
{
public static class QueueExtensions
{
///
/// Enqueues each item in the sequence.
///
///
///
///
public static void EnqueueRange(this Queue extends, IEnumerable items)
{
if (extends == null)
throw new ArgumentNullException("extends");
if (items == null)
throw new ArgumentNullException("items");
foreach (T item in items)
extends.Enqueue(item);
}
///
/// Dequeues the next item in the queue. Returns false if the queue is empty.
///
///
///
///
///
public static bool Dequeue(this Queue extends, out T item)
{
if (extends == null)
throw new ArgumentNullException("extends");
item = default(T);
if (extends.Count == 0)
return false;
item = extends.Dequeue();
return true;
}
}
}