Метод expand< S>
-
Iterable<
S> convert( - T element
Преобразует каждый элемент этого потока в последовательность элементов.
Возвращает новый поток, где каждый элемент этого потока заменяется нулём или более событий данных. Значения событий предоставляются как Iterable в результате вызова convert с элементом в качестве аргумента, а элементы этого итерируемого объекта излучаются в порядке итерации. Если вызов convert завершается ошибкой или если итерация возвращаемых значений завершается ошибкой, ошибка излучается в возвращаемый поток, и итерация завершается для этого элемента этого потока.
События ошибок и событие завершения этого потока передаются непосредственно в возвращаемый поток.
Возвращаемый поток является потоком с широковещательной рассылкой, если таковым является этот поток. Если на поток с широковещательной рассылкой подписано более одного раза, каждое подписка индивидуально вызовет convert и расширит события.
Реализация
Stream<S> expand<S>(Iterable<S> convert(T element)) {
return new _ExpandStream<T, S>(this, convert);
}
© 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/expand.html