Класс StreamTransformer< S, T>
Преобразует поток.
Когда метод Stream.transform потока вызывается с StreamTransformer, поток вызывает метод bind на предоставленном преобразователе. Результирующий поток затем возвращается из метода Stream.transform.
Понятийно, преобразователь — это просто функция от Stream к Stream, инкапсулированная в класс.
Рекомендуется писать преобразователи, которые можно использовать несколько раз.
Все остальные методы преобразования в Stream, такие как Stream.map, Stream.where или Stream.expand, могут быть реализованы с помощью Stream.transform. Таким образом, StreamTransformer очень мощный, но часто и немного сложнее в использовании.
- Реализуют
Конструкторы
-
StreamTransformer(StreamSubscription<
T> onListen(Stream< S> stream, bool cancelOnError)) constfactory - Создает StreamTransformer на основе предоставленного
onListenобратного вызова. -
StreamTransformer.fromBind(Stream<
T> bind(Stream< S>)) factory - Создает StreamTransformer на основе
bindобратного вызова. -
StreamTransformer.fromHandlers({void handleData(S data, EventSink<
T> sink)?, void handleError(Object error, StackTrace stackTrace, EventSink< T> sink)?, void handleDone(EventSink< T> sink)?}) factory - Создает StreamTransformer, который делегирует события указанным функциям.
Свойства
-
hashCode → int
только для чтения, унаследованное
- Хэш-код этого объекта.
-
runtimeType → Type
только для чтения, унаследованное
- Представление текущего типа объекта.
Методы
-
bind(
Stream< S> stream) → Stream< T> - Преобразует предоставленный
stream. -
cast<
RS, RT>( ) → StreamTransformer< RS, RT> - Предоставляет
StreamTransformer<RS, RT>представление этого преобразователя потока. -
noSuchMethod(
Invocation invocation) → dynamic унаследованное - Вызывается при обращении к несуществующему методу или свойству.
-
toString(
) → String унаследованное - Строковое представление этого объекта.
Операторы
-
operator ==(
Object other) → bool унаследованное - Оператор равенства.
Статические методы
-
castFrom<
SS, ST, TS, TT>( StreamTransformer< SS, ST> source) → StreamTransformer< TS, TT> - Адаптирует
sourceкStreamTransformer<TS, TT>.
© 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/StreamTransformer-class.html