Метод bind
Преобразует предоставленный stream.
Возвращает новый поток с событиями, вычисляемыми из событий предоставленного stream.
Интерфейс StreamTransformer полностью универсален, поэтому он не может сказать, что делают подклассы. Каждый StreamTransformer должен четко документировать, как он преобразует поток (в классе или переменной, используемой для доступа к преобразователю), а также любые отличия от следующего типичного поведения:
- При подписке на возвращаемый поток, он начинает следить за входным
stream. - Подписки на возвращаемый поток передают (в разумное время) вызов StreamSubscription.pause подписке входного
stream. - Аналогично, отмена подписки на возвращаемый поток в конечном итоге (в разумное время) отменяет подписку на входной
stream.
«Разумное время» зависит от преобразователя и потока. Некоторые преобразователи, например, преобразователь «таймаут», могут сделать эти операции зависимыми от продолжительности. Другие могут вообще не задерживать их или задерживать их только на микротаске.
Преобразователи могут обрабатывать ошибки любым способом. Реализация преобразователя может выбрать распространение ошибок, преобразование их в другие события или полное игнорирование, но если ошибки игнорируются, это должно быть явно задокументировано.
Реализация
Stream<List<int>> bind(Stream<Object?> stream) {
return super.bind(stream);
}
© 2012 the Dart project authors
Licensed under the BSD 3-Clause "New" or "Revised" License.
https://api.dart.dev/stable/2.18.5/dart-convert/JsonUtf8Encoder/bind.html