bind 方法

Stream<String> bind(
  1. Stream<Object?> stream
)
override

转换提供的 stream

返回一个新流,其事件是从提供的 stream 的事件计算得到的。

StreamTransformer 接口是完全通用的,因此无法说明子类做了什么。每个 StreamTransformer 应当清楚说明如何转换流(在用于访问转换器的类或变量中),以及与以下典型行为的任何差异

  • 当监听返回的流时,它开始监听输入 stream
  • 返回流的订阅将(在合理的时间内)将 StreamSubscription.pause 调用转发到输入 stream 的订阅。
  • 同样,取消返回流的订阅最终(在合理的时间内)将取消输入 stream 的订阅。

"合理的时间"取决于转换器和流。一些转换器,如 "timeout" 转换器,可能使这些操作依赖于一个持续时间。其他转换器可能根本不会延迟这些操作,或者只微观任务级别的延迟。

转换器可以自由地以任何方式处理错误。转换器实现可以选择传播错误,或转换为其他事件,或完全忽略它们,但如果忽略错误,则应该明确记录。

实现

Stream<String> bind(Stream<Object?> stream) => super.bind(stream);