Spec-Zone.ru › Dart 2

dart:async

свойство length

Future<int> length

Количество элементов в этом потоке.

Ожидает получения всех элементов этого потока. Когда поток завершается, возвращённый future завершается с количеством элементов.

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

Эта операция прослушивает поток, и непотоковый поток нельзя использовать повторно после определения его длины.

Реализация

Future<int> get length {
  _Future<int> future = new _Future<int>();
  int count = 0;
  this.listen(
      (_) {
        count++;
      },
      onError: future._completeError,
      onDone: () {
        future._complete(count);
      },
      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.19.6/dart-async/Stream/length.html

Spec-Zone.ru

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