changeSink method
override
    Returns a copy of this with sink replaced by change's return
value.
Implementation
StreamChannel<T> changeSink(StreamSink<T> change(StreamSink<T> sink)) =>
    new StreamChannel.withCloseGuarantee(stream, change(sink));