Spec-Zone.ru › Dart 2

dart:async

Метод toSet

Future<Set<T>> toSet()

Собирает данные этого потока в Set.

Создает Set<T> и добавляет все элементы этого потока в множество. в порядке их поступления. Когда этот поток завершается, возвращаемое будущее завершается этим множеством.

Возвращаемое множество имеет тот же тип, что и создаваемое <T>{}. Если требуется множество другого типа, используйте forEach для добавления каждого элемента в множество или используйте toList().then((list) => new SomeOtherSet.from(list)) для создания множества.

Если этот поток генерирует ошибку, возвращаемое будущее завершается этой ошибкой, и обработка останавливается.

Реализация

Future<Set<T>> toSet() {
  Set<T> result = new Set<T>();
  _Future<Set<T>> future = new _Future<Set<T>>();
  this.listen(
      (T data) {
        result.add(data);
      },
      onError: future._completeError,
      onDone: () {
        future._complete(result);
      },
      cancelOnError: true);
  return future;
}

© 2012 the Dart project authors
Licensed under the BSD 3-Clause "New" or "Revised" License.
https://api.dart.dev/stable/2.18.5/dart-async/Stream/toSet.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API