public virtual void Clear() { _queue.Clear(); _lastDequeued = null; }
public int Compare(QueueEntry <T, Q> x, QueueEntry <T, Q> y) { return(x.CompareTo(y)); }
public virtual T Dequeue() { _lastDequeued = _queue[0]; _queue.RemoveAt(0); return(_lastDequeued.Entry); }