single 属性
重写
检查这个可迭代对象是否只有一个元素,并返回该元素。
如果 this
为空或包含超过一个元素,则抛出 StateError。此操作不会迭代过第二个元素。
实现
E get single {
// Note that this throws correctly if the queue is empty
// because reading the element of the sentinel throws.
if (identical(_sentinel._nextLink, _sentinel._previousLink)) {
return _sentinel._nextLink!.element;
}
throw IterableElementError.tooMany();
}