Given a write function that accepts a source Publisher<T> to write
with and returns Publisher<Void> for the result, this operator helps
to defer the invocation of the write function, until we know if the source
publisher will begin publishing without an error. If the first emission is
an error, the write function is bypassed, and the error is sent directly
through the result publisher. Otherwise the write function is invoked.