StreamTransformer<S, T>抽象 接口

转换 Stream。

当流调用带有 Stream.transform 的方法,并且传递了 StreamTransformer 时,流将调用提供转换器的 bind 方法。然后从 Stream.transform 方法返回结果流。

从概念上讲,转换器就是一个将 Stream 转换为 Stream 的函数,被封装成一个类中。

编写可多次使用的转换器是一种良好的做法。

Stream 上的其他转换方法,如 Stream.mapStream.whereStream.expand,可以使用 Stream.transform 实现。因此,StreamTransformer 非常强大,但使用起来通常也更复杂一些。

StreamTransformer.fromHandlers 构造函数允许传入单独的回调来响应用事件、错误和流的结束。StreamTransformer.fromBind 构造函数通过调用构造函数传递的函数来创建一个 StreamTransformer,其 bind 方法将被实现。

实现者

构造函数

StreamTransformer(StreamSubscription<T> onListen(Stream<S> stream, bool cancelOnError))
根据给定的 onListen 回调创建一个 StreamTransformer
const
factory
StreamTransformer.fromBind(Stream<T> bind(Stream<S>))
根据 bind 回调创建一个 StreamTransformer
factory
StreamTransformer.fromHandlers({void handleData(S data, EventSink<T>)?, void handleError(Object error, StackTrace stackTrace, EventSink<T>)?, void handleDone(EventSink<T>)?})
创建一个将事件委托给指定函数的 StreamTransformer
factory

属性

hashCode int
此对象的哈希码。
无设置器继承
runtimeType Type
表示此对象运行时类型的表示。
无设置器继承

方法

bind(Stream<S>) Stream<T>
转换提供的 stream
cast<RS, RT>() StreamTransformer<RS, RT>
提供此流转换器的 StreamTransformer<RS, RT> 视图。
noSuchMethod(Invocation) → dynamic
当一个不存在的方法或属性被访问时,将会调用。
继承
toString() String
此对象的字符串表示形式。
继承

运算符

operator ==(Object) bool
等于运算符。
继承

静态方法

castFrom<SS, ST, TS, TT>(StreamTransformer<SS, ST>) StreamTransformer<TS, TT>
source 转换为 StreamTransformer