single property

Plugin single
override

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. This operation will not iterate past the second element.

Implementation

Plugin get single {
  int len = this.length;
  if (len == 1) {
    return JS('Plugin', '#[0]', this);
  }
  if (len == 0) throw new StateError("No elements");
  throw new StateError("More than one element");
}