Source
E get single {
// Note that this throws correctly if the queue is empty
// because reading element on the sentinel throws.
if (identical(_sentinel._nextLink, _sentinel._previousLink)) {
_DoubleLinkedQueueEntry<E> entry = _sentinel._nextLink;
return entry._element;
}
throw IterableElementError.tooMany();
}