typed<S, T> method

StreamSinkTransformer<S, T> typed <S, T>(StreamSinkTransformer transformer)

Creates a wrapper that coerces the type of transformer.

This soundly converts a StreamSinkTransformer to a StreamSinkTransformer<S, T>, regardless of its original generic type. This means that calls to StreamSink.add on the returned sink may throw a CastError if the argument type doesn't match the reified type of the sink.

Implementation

static StreamSinkTransformer<S, T> typed<S, T>(
        StreamSinkTransformer transformer) =>
    transformer is StreamSinkTransformer<S, T>
        ? transformer
        : new TypeSafeStreamSinkTransformer(transformer);