in lib/src/disconnector.dart [44:58]
StreamChannel<T> bind(StreamChannel<T> channel) {
return channel.changeSink((innerSink) {
var sink = _DisconnectorSink<T>(innerSink);
if (isDisconnected) {
// Ignore errors here, because otherwise there would be no way for the
// user to handle them gracefully.
sink._disconnect().catchError((_) {});
} else {
_sinks.add(sink);
}
return sink;
});
}