src/main/java/io/reactivex/Maybe.java
@SuppressWarnings({ "unchecked", "rawtypes" })
    @BackpressureSupport(BackpressureKind.FULL)
    @CheckReturnValue
    @SchedulerSupport(SchedulerSupport.NONE)
    public static <T> Flowable<T> mergeDelayError(Iterable<? extends MaybeSource<? extends T>> sources) {
        return Flowable.fromIterable(sources).flatMap((Function)MaybeToPublisher.instance(), true);
    }
@SuppressWarnings({ "unchecked", "rawtypes" })
    @BackpressureSupport(BackpressureKind.FULL)
    @CheckReturnValue
    @SchedulerSupport(SchedulerSupport.NONE)
    public static <T> Flowable<T> mergeDelayError(Iterable<? extends MaybeSource<? extends T>> sources) {
        return Flowable.fromIterable(sources).flatMap((Function)MaybeToPublisher.instance(), true);
    }
@ SuppressWarnings ( { "unchecked" , "rawtypes" } ) @ BackpressureSupport ( BackpressureKind . FULL ) @ CheckReturnValue @ SchedulerSupport ( SchedulerSupport . NONE ) public static < T > Flowable < T > mergeDelayError ( Iterable < ? extends MaybeSource < ? extends T > > sources ) { return Flowable . fromIterable ( sources ) . flatMap ( ( Function ) MaybeToPublisher . instance ( ) , true ) ; }
Flattens an Iterable of MaybeSources into one Flowable, in a way that allows a Subscriber to receive all
successfully emitted items from each of the source MaybeSources without being interrupted by an error
notification from one of them.
<p>
This behaves like {@link #merge(Publisher)} except that if any of the merged MaybeSources notify of an
error via {@link Subscriber#onError onError}, {@code mergeDelayError} will refrain from propagating that
error notification until all of the merged MaybeSources have finished emitting items.
<p>
<img width="640" height="380" src="https://raw.github.com/wiki/ReactiveX/RxJava/images/rx-operators/mergeDelayError.png" alt="">
<p>
Even if multiple merged MaybeSources send {@code onError} notifications, {@code mergeDelayError} will only
invoke the {@code onError} method of its Subscribers once.
<dl>
<dt><b>Backpressure:</b></dt>
<dd>The operator honors backpressure from downstream.</dd>
<dt><b>Scheduler:</b></dt>
<dd>{@code mergeDelayError} does not operate by default on a particular {@link Scheduler}.</dd>
</dl>

@param <T> the common element base type
@param sources
the Iterable of MaybeSources
@return a Flowable that emits items that are the result of flattening the items emitted by the
MaybeSources in the Iterable
@see <a href="http://reactivex.io/documentation/operators/merge.html">ReactiveX operators documentation: Merge</a>
Flattens an Iterable of MaybeSources into one Flowable in a way that allows a Subscriber to receive all successfully emitted items from each of the source MaybeSources without being interrupted by an error notification from one of them . <p > This behaves like { @link #merge ( Publisher ) } except that if any of the merged MaybeSources notify of an error via { @link Subscriber#onError onError } { @code mergeDelayError } will refrain from propagating that error notification until all of the merged MaybeSources have finished emitting items . <p > <img width = 640 height = 380 src = https : // raw . github . com / wiki / ReactiveX / RxJava / images / rx - operators / mergeDelayError . png alt = > <p > Even if multiple merged MaybeSources send { @code onError } notifications { @code mergeDelayError } will only invoke the { @code onError } method of its Subscribers once . <dl > <dt > <b > Backpressure : < / b > < / dt > <dd > The operator honors backpressure from downstream . < / dd > <dt > <b > Scheduler : < / b > < / dt > <dd > { @code mergeDelayError } does not operate by default on a particular { @link Scheduler } . < / dd > < / dl >