Метод bind
Преобразует предоставленный stream.
Возвращает новый поток с событиями, вычисляемыми из событий предоставленного stream.
Интерфейс StreamTransformer полностью универсален, поэтому он не может сказать, что делают подклассы. Каждый StreamTransformer должен четко документировать, как он преобразует поток (в классе или переменной, используемой для доступа к преобразователю), а также любые отличия от следующего типичного поведения:
- При подписке на возвращаемый поток он начинает подписку на входной
stream. - Подписки на возвращаемый поток передают (в разумное время) вызов StreamSubscription.pause подписке входного
stream. - Аналогично, отмена подписки на возвращаемый поток в конечном итоге (в разумное время) отменяет подписку входного
stream.
«Разумное время» зависит от преобразователя и потока. Некоторые преобразователи, такие как преобразователь «таймаут», могут сделать эти операции зависящими от продолжительности. Другие могут вообще не задерживать их или только на микрозадачу.
Преобразователи свободно обрабатывают ошибки любым способом. Реализация преобразователя может выбрать распространение ошибок, преобразование их в другие события или полное игнорирование, но если ошибки игнорируются, это должно быть явно задокументировано.
Реализация
Stream<Object?> bind(Stream<String> stream) => 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/JsonDecoder/bind.html