/Dart 2

single property

E single

Checks that this iterable has only one element, and returns that element.

Throws a StateError if this is empty or has more than one element.


E get single {
  Iterator<E> it = iterator;
  if (!it.moveNext()) throw IterableElementError.noElement();
  E result = it.current;
  if (it.moveNext()) throw IterableElementError.tooMany();
  return result;

© 2012 the Dart project authors
Licensed under the Creative Commons Attribution-ShareAlike License v4.0.