Spec-Zone.ru › Dart 1

dart:async

Метод forEach

Future forEach(void action(T element))

Выполняет action для каждого события данных потока.

Завершает возвращаемое Future, когда все события потока обработаны. Завершает Future с ошибкой, если в потоке есть событие ошибки или если action вызывает ошибку.

Исходный код

Future forEach(void action(T element)) {
  _Future future = new _Future();
  StreamSubscription subscription;
  subscription = this.listen(
      (T element) {
        // TODO(floitsch): the type should be 'void' and inferred.
        _runUserCode<dynamic>(() => action(element), (_) {},
            _cancelAndErrorClosure(subscription, future));
      },
      onError: future._completeError,
      onDone: () {
        future._complete(null);
      },
      cancelOnError: true);
  return future;
}

© 2012 the Dart project authors
Licensed under the Creative Commons Attribution-ShareAlike License v4.0.
https://api.dartlang.org/stable/1.24.3/dart-async/Stream/forEach.html

Spec-Zone.ru

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