protected override bool GoNext() { var index = _nextIndex; if (index == -1) { return(false); } _nextItem = _queue._items[index]; index = _queue.Increment(index); _nextIndex = index == _queue._putIndex ? -1 : index; return(true); }