- Notifications
You must be signed in to change notification settings - Fork7.6k
Operator Matrix
| Operator | ![]() | ![]() | ![]() | ![]() | ![]() |
|---|---|---|---|---|---|
all | ![]() | ![]() | (1) | (1) | (2) |
amb | ![]() | ![]() | ![]() | ![]() | ![]() |
ambArray | ![]() | ![]() | ![]() | ![]() | ![]() |
ambWith | ![]() | ![]() | ![]() | ![]() | ![]() |
andThen | (3) | (3) | (3) | (3) | ![]() |
any | ![]() | ![]() | (1) | (1) | (2) |
blockingAwait | (4) | (4) | (5) | (5) | ![]() |
blockingFirst | ![]() | ![]() | (6) | (6) | (7) |
blockingForEach | ![]() | ![]() | (8) | (8) | (8) |
blockingGet | (4) | (4) | ![]() | ![]() | (7) |
blockingIterable | ![]() | ![]() | (6) | (6) | (7) |
blockingLast | ![]() | ![]() | (6) | (6) | (7) |
blockingLatest | ![]() | ![]() | (6) | (6) | (7) |
blockingMostRecent | ![]() | ![]() | (6) | (6) | (7) |
blockingNext | ![]() | ![]() | (6) | (6) | (7) |
blockingSingle | ![]() | ![]() | (6) | (6) | (7) |
blockingStream | ![]() | ![]() | (6) | (6) | (7) |
blockingSubscribe | ![]() | ![]() | ![]() | ![]() | ![]() |
buffer | ![]() | ![]() | (9) | (10) | (11) |
cache | ![]() | ![]() | ![]() | ![]() | ![]() |
cacheWithInitialCapacity | ![]() | ![]() | (12) | (12) | (12) |
cast | ![]() | ![]() | ![]() | ![]() | (2) |
collect | ![]() | ![]() | (13) | (14) | (15) |
collectInto | ![]() | ![]() | (13) | (14) | (15) |
combineLatest | ![]() | ![]() | (16) | (16) | (17) |
combineLatestArray | ![]() | ![]() | (18) | (18) | (19) |
combineLatestArrayDelayError | ![]() | ![]() | (18) | (18) | (20) |
combineLatestDelayError | ![]() | ![]() | (16) | (16) | (21) |
complete | (22) | (22) | (22) | (23) | ![]() |
compose | ![]() | ![]() | ![]() | ![]() | ![]() |
concat | ![]() | ![]() | ![]() | ![]() | ![]() |
concatArray | ![]() | ![]() | ![]() | ![]() | ![]() |
concatArrayDelayError | ![]() | ![]() | ![]() | ![]() | ![]() |
concatArrayEager | ![]() | ![]() | ![]() | ![]() | (24) |
concatArrayEagerDelayError | ![]() | ![]() | ![]() | ![]() | (25) |
concatDelayError | ![]() | ![]() | ![]() | ![]() | ![]() |
concatEager | ![]() | ![]() | ![]() | ![]() | (26) |
concatEagerDelayError | ![]() | ![]() | ![]() | ![]() | (27) |
concatMap | ![]() | ![]() | ![]() | ![]() | (28) |
concatMapCompletable | ![]() | ![]() | ![]() | ![]() | (28) |
concatMapCompletableDelayError | ![]() | ![]() | (29) | (29) | (28) |
concatMapDelayError | ![]() | ![]() | (30) | (30) | (28) |
concatMapEager | ![]() | ![]() | (31) | (31) | (28) |
concatMapEagerDelayError | ![]() | ![]() | (31) | (31) | (28) |
concatMapIterable | ![]() | ![]() | (32) | (32) | (28) |
concatMapMaybe | ![]() | ![]() | (33) | ![]() | (28) |
concatMapMaybeDelayError | ![]() | ![]() | (34) | (34) | (28) |
concatMapSingle | ![]() | ![]() | ![]() | (35) | (28) |
concatMapSingleDelayError | ![]() | ![]() | (36) | (36) | (28) |
concatMapStream | ![]() | ![]() | (37) | (37) | (28) |
concatWith | ![]() | ![]() | ![]() | ![]() | ![]() |
contains | ![]() | ![]() | ![]() | ![]() | (2) |
count | ![]() | ![]() | ![]() | (38) | (39) |
create | ![]() | ![]() | ![]() | ![]() | ![]() |
debounce | ![]() | ![]() | (40) | (40) | (41) |
defaultIfEmpty | ![]() | ![]() | ![]() | (23) | (42) |
defer | ![]() | ![]() | ![]() | ![]() | ![]() |
delay | ![]() | ![]() | ![]() | ![]() | ![]() |
delaySubscription | ![]() | ![]() | ![]() | ![]() | ![]() |
dematerialize | ![]() | ![]() | ![]() | ![]() | (41) |
distinct | ![]() | ![]() | (43) | (43) | (41) |
distinctUntilChanged | ![]() | ![]() | (43) | (43) | (41) |
doAfterNext | ![]() | ![]() | (44) | (44) | (2) |
doAfterSuccess | (45) | (45) | ![]() | ![]() | (41) |
doAfterTerminate | ![]() | ![]() | ![]() | ![]() | ![]() |
doFinally | ![]() | ![]() | ![]() | ![]() | ![]() |
doOnCancel | ![]() | (46) | (46) | (46) | (46) |
doOnComplete | ![]() | ![]() | ![]() | (47) | ![]() |
doOnDispose | (48) | ![]() | ![]() | ![]() | ![]() |
doOnEach | ![]() | ![]() | (49) | (49) | (41) |
doOnError | ![]() | ![]() | ![]() | ![]() | ![]() |
doOnEvent | (50) | (50) | ![]() | ![]() | ![]() |
doOnLifecycle | ![]() | ![]() | ![]() | ![]() | ![]() |
doOnNext | ![]() | ![]() | (51) | (51) | (41) |
doOnRequest | ![]() | (52) | (52) | (52) | (52) |
doOnSubscribe | ![]() | ![]() | ![]() | ![]() | ![]() |
doOnSuccess | (53) | (53) | ![]() | ![]() | (41) |
doOnTerminate | ![]() | ![]() | ![]() | ![]() | ![]() |
elementAt | ![]() | ![]() | (54) | (55) | (41) |
elementAtOrError | ![]() | ![]() | (56) | (55) | (41) |
empty | ![]() | ![]() | ![]() | (23) | (57) |
error | ![]() | ![]() | ![]() | ![]() | ![]() |
filter | ![]() | ![]() | ![]() | ![]() | (41) |
first | ![]() | ![]() | (58) | (59) | (42) |
firstElement | ![]() | ![]() | (60) | (61) | (2) |
firstOrError | ![]() | ![]() | (60) | (61) | (62) |
firstOrErrorStage | ![]() | ![]() | (63) | (63) | (64) |
firstStage | ![]() | ![]() | (63) | (63) | (63) |
flatMap | ![]() | ![]() | ![]() | ![]() | (28) |
flatMapCompletable | ![]() | ![]() | ![]() | ![]() | (28) |
flatMapIterable | ![]() | ![]() | (32) | (32) | (28) |
flatMapMaybe | ![]() | ![]() | (65) | ![]() | (28) |
flatMapObservable | (66) | (67) | ![]() | ![]() | (28) |
flatMapPublisher | (67) | (68) | ![]() | ![]() | (28) |
flatMapSingle | ![]() | ![]() | ![]() | (65) | (28) |
flatMapStream | ![]() | ![]() | (37) | (37) | (28) |
flattenAsFlowable | (69) | (69) | ![]() | ![]() | (28) |
flattenAsObservable | (69) | (69) | ![]() | ![]() | (28) |
flattenStreamAsFlowable | (70) | (70) | ![]() | ![]() | (28) |
flattenStreamAsObservable | (70) | (70) | ![]() | ![]() | (28) |
forEach | ![]() | ![]() | (71) | (71) | (71) |
forEachWhile | ![]() | ![]() | (71) | (71) | (71) |
fromAction | ![]() | ![]() | ![]() | (23) | ![]() |
fromArray | ![]() | ![]() | (72) | (73) | (74) |
fromCallable | ![]() | ![]() | ![]() | ![]() | ![]() |
fromCompletable | ![]() | ![]() | ![]() | (75) | (76) |
fromCompletionStage | ![]() | ![]() | ![]() | ![]() | ![]() |
fromFuture | ![]() | ![]() | ![]() | ![]() | ![]() |
fromIterable | ![]() | ![]() | (72) | (73) | (74) |
fromMaybe | ![]() | ![]() | (76) | ![]() | ![]() |
fromObservable | ![]() | (76) | ![]() | ![]() | ![]() |
fromOptional | ![]() | ![]() | ![]() | (73) | (74) |
fromPublisher | ![]() | ![]() | ![]() | ![]() | ![]() |
fromRunnable | ![]() | ![]() | ![]() | (23) | ![]() |
fromSingle | ![]() | ![]() | ![]() | (76) | ![]() |
fromStream | ![]() | ![]() | (72) | (73) | (74) |
fromSupplier | ![]() | ![]() | ![]() | ![]() | ![]() |
generate | ![]() | ![]() | (77) | (77) | (77) |
groupBy | ![]() | ![]() | (78) | (78) | (79) |
groupJoin | ![]() | ![]() | (78) | (78) | (80) |
hide | ![]() | ![]() | ![]() | ![]() | ![]() |
ignoreElement | (81) | (81) | ![]() | ![]() | (2) |
ignoreElements | ![]() | ![]() | (82) | (82) | (2) |
interval | ![]() | ![]() | (83) | (83) | (83) |
intervalRange | ![]() | ![]() | (83) | (83) | (83) |
isEmpty | ![]() | ![]() | ![]() | (59) | (2) |
join | ![]() | ![]() | (84) | (84) | (80) |
just | ![]() | ![]() | ![]() | ![]() | (2) |
last | ![]() | ![]() | (58) | (59) | (42) |
lastElement | ![]() | ![]() | (60) | (61) | (2) |
lastOrError | ![]() | ![]() | (60) | (61) | (62) |
lastOrErrorStage | ![]() | ![]() | (63) | (63) | (64) |
lastStage | ![]() | ![]() | (63) | (63) | (63) |
lift | ![]() | ![]() | ![]() | ![]() | ![]() |
map | ![]() | ![]() | ![]() | ![]() | (28) |
mapOptional | ![]() | ![]() | ![]() | ![]() | (28) |
materialize | ![]() | ![]() | ![]() | ![]() | ![]() |
merge | ![]() | ![]() | ![]() | ![]() | ![]() |
mergeArray | ![]() | ![]() | ![]() | ![]() | ![]() |
mergeArrayDelayError | ![]() | ![]() | ![]() | ![]() | ![]() |
mergeDelayError | ![]() | ![]() | ![]() | ![]() | ![]() |
mergeWith | ![]() | ![]() | ![]() | ![]() | ![]() |
never | ![]() | ![]() | ![]() | ![]() | ![]() |
observeOn | ![]() | ![]() | ![]() | ![]() | ![]() |
ofType | ![]() | ![]() | ![]() | ![]() | (85) |
onBackpressureBuffer | ![]() | (52) | (52) | (52) | (52) |
onBackpressureDrop | ![]() | (52) | (52) | (52) | (52) |
onBackpressureLatest | ![]() | (52) | (52) | (52) | (52) |
onErrorComplete | ![]() | ![]() | ![]() | ![]() | ![]() |
onErrorResumeNext | ![]() | ![]() | ![]() | ![]() | ![]() |
onErrorResumeWith | ![]() | ![]() | ![]() | ![]() | ![]() |
onErrorReturn | ![]() | ![]() | ![]() | ![]() | ![]() |
onErrorReturnItem | ![]() | ![]() | ![]() | ![]() | ![]() |
onTerminateDetach | ![]() | ![]() | ![]() | ![]() | ![]() |
parallel | ![]() | (86) | (86) | (86) | (86) |
publish | ![]() | ![]() | (87) | (88) | (89) |
range | ![]() | ![]() | (90) | (90) | (74) |
rangeLong | ![]() | ![]() | (90) | (90) | (74) |
rebatchRequests | ![]() | (52) | (52) | (52) | (52) |
reduce | ![]() | ![]() | (91) | (91) | (92) |
reduceWith | ![]() | ![]() | (91) | (91) | (92) |
repeat | ![]() | ![]() | ![]() | ![]() | ![]() |
repeatUntil | ![]() | ![]() | ![]() | ![]() | ![]() |
repeatWhen | ![]() | ![]() | ![]() | ![]() | ![]() |
replay | ![]() | ![]() | (87) | (88) | (89) |
retry | ![]() | ![]() | ![]() | ![]() | ![]() |
retryUntil | ![]() | ![]() | ![]() | ![]() | ![]() |
retryWhen | ![]() | ![]() | ![]() | ![]() | ![]() |
safeSubscribe | ![]() | ![]() | ![]() | ![]() | ![]() |
sample | ![]() | ![]() | (60) | (60) | (41) |
scan | ![]() | ![]() | (91) | (91) | (92) |
scanWith | ![]() | ![]() | (91) | (91) | (92) |
sequenceEqual | ![]() | ![]() | ![]() | ![]() | ![]() |
serialize | ![]() | ![]() | (93) | (93) | (93) |
share | ![]() | ![]() | (87) | (88) | (89) |
single | ![]() | ![]() | (58) | (59) | (42) |
singleElement | ![]() | ![]() | (60) | (61) | (2) |
singleOrError | ![]() | ![]() | (60) | (61) | (62) |
singleOrErrorStage | ![]() | ![]() | (63) | (63) | (64) |
singleStage | ![]() | ![]() | (63) | (63) | (63) |
skip | ![]() | ![]() | (60) | (60) | (60) |
skipLast | ![]() | ![]() | (60) | (60) | (60) |
skipUntil | ![]() | ![]() | (94) | (94) | (94) |
skipWhile | ![]() | ![]() | (95) | (95) | (2) |
sorted | ![]() | ![]() | (78) | (78) | (78) |
startWith | ![]() | ![]() | ![]() | ![]() | ![]() |
startWithArray | ![]() | ![]() | (96) | (96) | (96) |
startWithItem | ![]() | ![]() | (97) | (97) | (97) |
startWithIterable | ![]() | ![]() | (98) | (98) | (98) |
subscribe | ![]() | ![]() | ![]() | ![]() | ![]() |
subscribeOn | ![]() | ![]() | ![]() | ![]() | ![]() |
subscribeWith | ![]() | ![]() | ![]() | ![]() | ![]() |
switchIfEmpty | ![]() | ![]() | ![]() | (23) | (99) |
switchMap | ![]() | ![]() | (100) | (100) | (28) |
switchMapCompletable | ![]() | ![]() | (100) | (100) | (28) |
switchMapCompletableDelayError | ![]() | ![]() | (100) | (100) | (28) |
switchMapDelayError | ![]() | ![]() | (100) | (100) | (28) |
switchMapMaybe | ![]() | ![]() | (100) | (100) | (28) |
switchMapMaybeDelayError | ![]() | ![]() | (100) | (100) | (28) |
switchMapSingle | ![]() | ![]() | (100) | (100) | (28) |
switchMapSingleDelayError | ![]() | ![]() | (100) | (100) | (28) |
switchOnNext | ![]() | ![]() | ![]() | ![]() | ![]() |
switchOnNextDelayError | ![]() | ![]() | ![]() | ![]() | ![]() |
take | ![]() | ![]() | (60) | (60) | (60) |
takeLast | ![]() | ![]() | (60) | (60) | (60) |
takeUntil | ![]() | ![]() | ![]() | ![]() | ![]() |
takeWhile | ![]() | ![]() | (95) | (95) | (2) |
test | ![]() | ![]() | ![]() | ![]() | ![]() |
throttleFirst | ![]() | ![]() | (40) | (40) | (41) |
throttleLast | ![]() | ![]() | (40) | (40) | (41) |
throttleLatest | ![]() | ![]() | (40) | (40) | (41) |
throttleWithTimeout | ![]() | ![]() | (40) | (40) | (41) |
timeInterval | ![]() | ![]() | ![]() | ![]() | (41) |
timeout | ![]() | ![]() | ![]() | ![]() | ![]() |
timer | ![]() | ![]() | ![]() | ![]() | ![]() |
timestamp | ![]() | ![]() | ![]() | ![]() | (41) |
to | ![]() | ![]() | ![]() | ![]() | ![]() |
toCompletionStage | (101) | (101) | ![]() | ![]() | ![]() |
toFlowable | (102) | ![]() | ![]() | ![]() | ![]() |
toFuture | ![]() | ![]() | ![]() | ![]() | ![]() |
toList | ![]() | ![]() | (13) | (14) | (15) |
toMap | ![]() | ![]() | (13) | (14) | (15) |
toMaybe | (103) | (103) | (102) | ![]() | ![]() |
toMultimap | ![]() | ![]() | (13) | (14) | (15) |
toObservable | ![]() | (102) | ![]() | ![]() | ![]() |
toSingle | (104) | (104) | ![]() | (102) | ![]() |
toSingleDefault | (105) | (105) | (106) | (102) | ![]() |
toSortedList | ![]() | ![]() | (13) | (14) | (15) |
unsafeCreate | ![]() | ![]() | ![]() | ![]() | ![]() |
unsubscribeOn | ![]() | ![]() | ![]() | ![]() | ![]() |
using | ![]() | ![]() | ![]() | ![]() | ![]() |
window | ![]() | ![]() | (107) | (108) | (109) |
withLatestFrom | ![]() | ![]() | (16) | (16) | (17) |
wrap | (110) | ![]() | ![]() | ![]() | ![]() |
zip | ![]() | ![]() | ![]() | ![]() | (111) |
zipArray | ![]() | ![]() | ![]() | ![]() | (112) |
zipWith | ![]() | ![]() | ![]() | ![]() | (113) |
| 237 operators | 216 | 210 | 118 | 108 | 84 |
1 Usecontains().
2 Always empty.
3 UseconcatWith.
4 UseblockingFirst(),blockingSingle() orblockingLast().
5 UseblockingGet().
6 At most one element to get. UseblockingGet().
7 No elements to get. UseblockingAwait().
8 UseblockingSubscribe()
9 Usemap() andswitchIfEmpty() to transform into a list/collection.
10 Usemap() to transform into a list/collection.
11 Always empty. UseandThen() to bring in a list/collection.
12 At most one element to store. Usecache().
13 At most one element to collect. Usemap() andswitchIfEmpty() to transform into a list/collection.
14 One element to collect. Usemap() to transform into a list/collection.
15 Always empty. UseandThen() to bring in a collection.
16 At most one element per source. Usezip().
17 Always empty. Usemerge().
18 At most one element per source. UsezipArray().
19 Always empty. UsemergeArray().
20 Always empty. UsemergeArrayDelayError().
21 Always empty. UsemergeDelayError().
22 Useempty().
23 Never empty.
24 No items to keep ordered. UsemergeArray().
25 No items to keep ordered. UsemergeArrayDelayError().
26 No items to keep ordered. Usemerge().
27 No items to keep ordered. UsemergeDelayError().
28 Always empty thus no items to map.
29 Either the upstream fails (thus no inner) or the mapped-in source, but never both. UseconcatMapCompletable.
30 Either the upstream fails (thus no inner) or the mapped-in source, but never both. UseconcatMap.
31 At most one item to map. UseconcatMap().
32 At most one item. UseflattenAsFlowable orflattenAsObservable.
33 UseconcatMap.
34 Either the upstream fails (thus no inner) or the mapped-in source, but never both. UseconcatMapMaybe.
35 UseconcatMap().
36 Either the upstream fails (thus no inner) or the mapped-in source, but never both. UseconcatMapSingle.
37 At most one item. UseflattenStreamAsFlowable orflattenStreamAsObservable.
38 Never empty thus always 1.
39 Always empty thus always 0.
40 At most one item signaled so no subsequent items to work with.
41 Always empty thus no items to work with.
42 Always empty. UseandThen() to chose the follow-up sequence.
43 At most one item, always distinct.
44 Different terminology. UsedoAfterSuccess().
45 Different terminology. UsedoAfterNext().
46 Different terminology. UsedoOnDispose().
47 Always succeeds or fails, there is noonComplete signal.
48 Different terminology. UsedoOnCancel().
49 At most one item. UsedoOnEvent().
50 UsedoOnEach().
51 Different terminology. UsedoOnSuccess().
52 Backpressure related and not supported outsideFlowable.
53 Different terminology. UsedoOnNext().
54 At most one item with index 0. UsedefaultIfEmpty.
55 Always one item with index 0.
56 At most one item with index 0. UsetoSingle.
57 Usecomplete().
58 At most one item. UsedefaultIfEmpty.
59 Always one item.
60 At most one item, would be no-op.
61 Always one item, would be no-op.
62 Always empty. UseandThen() anderror().
63 At most one item. UsetoCompletionStage().
64 Always empty. UseandThen(),error() andtoCompletionStage().
65 UseflatMap().
66 Not supported. UseflatMap andtoFlowable().
67 UseflatMap.
68 Not supported. UseflatMap andtoObservable().
69 UseflatMapIterable().
70 UseflatMapStream().
71 Usesubscribe().
72 At most one item. Usejust() orempty().
73 Always one item. Usejust().
74 Always empty. Usecomplete().
75 Always error.
76 Usewrap().
77 UsefromSupplier().
78 At most one item.
79 Always empty thus no items to group.
80 Always empty thus no items to join.
81 UseignoreElements().
82 UseignoreElement().
83 At most one item. Usetimer().
84 At most one item. Usezip()
85 Always empty thus no items to filter.
86 Needs backpressure thus not supported outsideFlowable.
87 Connectable sources not supported outsideFlowable andObservable. Use aMaybeSubject.
88 Connectable sources not supported outsideFlowable andObservable. Use aSingleSubject.
89 Connectable sources not supported outsideFlowable andObservable. Use aConnectableSubject.
90 At most one item. Usejust().
91 At most one item. Usemap().
92 Always empty thus no items to reduce.
93 At most one signal type.
94 At most one item. UsetakeUntil().
95 At most one item. Usefilter().
96 UsestartWith() andfromArray() ofFlowable orObservable.
97 UsestartWith() andjust() of another reactive type.
98 UsestartWith() andfromIterable() ofFlowable orObservable.
99 Always empty. UsedefaultIfEmpty().
100 At most one item. UseflatMap().
101 UsefirstStage,lastStage orsingleStage.
102 Would be no-op.
103 UsefirstElement,lastElement orsingleElement.
104 UsefirstOrError,lastOrError orsingleOrError.
105 Usefirst,last orsingle.
106 UsedefaultIfEmpty().
107 Usemap() andswitchIfEmpty() to transform into a nested source.
108 Usemap() to transform into a nested source.
109 Always empty. UseandThen() to bring in a nested source.
110 UsefromPublisher().
111 Usemerge().
112 UsemergeArray().
113 UsemergeWith().
Currently, all intended operators are implemented.
Copyright (c) 2016-present, RxJava Contributors.
Twitter @RxJava |Gitter @RxJava






(