It seems that for the implementation of the operators AmbArray and AmbIterable different strategies have been adopted depending on the reactive type.
Single uses SingleAmbArray and SingleAmbIterable
Maybe uses MaybeAmbArray and MaybeAmbIterable
Completable uses CompletableAmbArray and CompletableAmbIterable
Observable uses ObservableAmb
Flowable uses FlowableAmb
I propose to adopt the same approach for Single, Maybe and Completable, merging xAmbArray and xAmbIterable into one single class, xAmb, just like Observable and Flowable.
I think this will increase the test coverage for the internal operators.
Should I create a PR?