Skip to content

Commit 3c3aed7

Browse files
committed
Renamed all toXXX converted in reactive streams libraries to asXXX
1 parent 37bf00e commit 3c3aed7

File tree

9 files changed

+98
-50
lines changed

9 files changed

+98
-50
lines changed

reactive/kotlinx-coroutines-reactive/README.md

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,7 @@ Conversion functions:
2222

2323
| **Name** | **Description**
2424
| -------- | ---------------
25-
| [ReceiveChannel.toPublisher][kotlinx.coroutines.experimental.channels.ReceiveChannel.toPublisher] | Converts streaming channel to hot publisher
25+
| [ReceiveChannel.asPublisher][kotlinx.coroutines.experimental.channels.ReceiveChannel.asPublisher] | Converts streaming channel to hot publisher
2626

2727
<!--- SITE_ROOT https://kotlin.github.io/kotlinx.coroutines/kotlinx-coroutines-core -->
2828
<!--- DOCS_ROOT kotlinx-coroutines-core/target/dokka/kotlinx-coroutines-core -->
@@ -32,14 +32,14 @@ Conversion functions:
3232
[ReceiveChannel]: https://kotlin.github.io/kotlinx.coroutines/kotlinx-coroutines-core/kotlinx.coroutines.experimental.channels/-receive-channel/index.html
3333
[ChannelIterator]: https://kotlin.github.io/kotlinx.coroutines/kotlinx-coroutines-core/kotlinx.coroutines.experimental.channels/-channel-iterator/index.html
3434
<!--- SITE_ROOT https://kotlin.github.io/kotlinx.coroutines/kotlinx-coroutines-reactive -->
35-
<!--- DOCS_ROOT kotlinx-coroutines-reactive/target/dokka/kotlinx-coroutines-reactive -->
35+
<!--- DOCS_ROOT reactive/kotlinx-coroutines-reactive/target/dokka/kotlinx-coroutines-reactive -->
3636
<!--- INDEX kotlinx.coroutines.experimental.reactive -->
3737
[publish]: https://kotlin.github.io/kotlinx.coroutines/kotlinx-coroutines-reactive/kotlinx.coroutines.experimental.reactive/publish.html
3838
[org.reactivestreams.Publisher.awaitFirst]: https://kotlin.github.io/kotlinx.coroutines/kotlinx-coroutines-reactive/kotlinx.coroutines.experimental.reactive/org.reactivestreams.-publisher/await-first.html
3939
[org.reactivestreams.Publisher.awaitSingle]: https://kotlin.github.io/kotlinx.coroutines/kotlinx-coroutines-reactive/kotlinx.coroutines.experimental.reactive/org.reactivestreams.-publisher/await-single.html
4040
[org.reactivestreams.Publisher.open]: https://kotlin.github.io/kotlinx.coroutines/kotlinx-coroutines-reactive/kotlinx.coroutines.experimental.reactive/org.reactivestreams.-publisher/open.html
4141
[org.reactivestreams.Publisher.iterator]: https://kotlin.github.io/kotlinx.coroutines/kotlinx-coroutines-reactive/kotlinx.coroutines.experimental.reactive/org.reactivestreams.-publisher/iterator.html
42-
[kotlinx.coroutines.experimental.channels.ReceiveChannel.toPublisher]: https://kotlin.github.io/kotlinx.coroutines/kotlinx-coroutines-reactive/kotlinx.coroutines.experimental.reactive/kotlinx.coroutines.experimental.channels.-receive-channel/to-publisher.html
42+
[kotlinx.coroutines.experimental.channels.ReceiveChannel.asPublisher]: https://kotlin.github.io/kotlinx.coroutines/kotlinx-coroutines-reactive/kotlinx.coroutines.experimental.reactive/kotlinx.coroutines.experimental.channels.-receive-channel/as-publisher.html
4343
<!--- END -->
4444

4545
# Package kotlinx.coroutines.experimental.reactive

reactive/kotlinx-coroutines-reactive/src/main/kotlin/kotlinx/coroutines/experimental/reactive/Convert.kt

Lines changed: 9 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -28,7 +28,14 @@ import kotlin.coroutines.experimental.CoroutineContext
2828
*
2929
* @param context -- the coroutine context from which the resulting observable is going to be signalled
3030
*/
31-
public fun <T> ReceiveChannel<T>.toPublisher(context: CoroutineContext): Publisher<T> = publish(context) {
32-
for (t in this@toPublisher)
31+
public fun <T> ReceiveChannel<T>.asPublisher(context: CoroutineContext): Publisher<T> = publish(context) {
32+
for (t in this@asPublisher)
3333
send(t)
3434
}
35+
36+
/**
37+
* @suppress **Deprecated**: Renamed to [asPublisher]
38+
*/
39+
@Deprecated(message = "Renamed to `asPublisher`",
40+
replaceWith = ReplaceWith("asPublisher(context)"))
41+
public fun <T> ReceiveChannel<T>.toPublisher(context: CoroutineContext): Publisher<T> = asPublisher(context)

reactive/kotlinx-coroutines-reactive/src/test/kotlin/kotlinx/coroutines/experimental/reactive/IntegrationTest.kt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -87,7 +87,7 @@ class IntegrationTest(
8787
}
8888
checkNumbers(n, pub)
8989
val channel = pub.open()
90-
checkNumbers(n, channel.toPublisher(ctx(context)))
90+
checkNumbers(n, channel.asPublisher(ctx(context)))
9191
channel.close()
9292
}
9393

reactive/kotlinx-coroutines-rx1/README.md

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -25,9 +25,9 @@ Conversion functions:
2525

2626
| **Name** | **Description**
2727
| -------- | ---------------
28-
| [Job.toCompletable][kotlinx.coroutines.experimental.Job.toCompletable] | Converts job to hot completable
29-
| [Deferred.toSingle][kotlinx.coroutines.experimental.Deferred.toSingle] | Converts deferred value to hot single
30-
| [ReceiveChannel.toObservable][kotlinx.coroutines.experimental.channels.ReceiveChannel.toObservable] | Converts streaming channel to hot observable
28+
| [Job.asCompletable][kotlinx.coroutines.experimental.Job.asCompletable] | Converts job to hot completable
29+
| [Deferred.asSingle][kotlinx.coroutines.experimental.Deferred.asSingle] | Converts deferred value to hot single
30+
| [ReceiveChannel.asObservable][kotlinx.coroutines.experimental.channels.ReceiveChannel.asObservable] | Converts streaming channel to hot observable
3131

3232
<!--- SITE_ROOT https://kotlin.github.io/kotlinx.coroutines/kotlinx-coroutines-core -->
3333
<!--- DOCS_ROOT kotlinx-coroutines-core/target/dokka/kotlinx-coroutines-core -->
@@ -38,7 +38,7 @@ Conversion functions:
3838
[ReceiveChannel]: https://kotlin.github.io/kotlinx.coroutines/kotlinx-coroutines-core/kotlinx.coroutines.experimental.channels/-receive-channel/index.html
3939
[ChannelIterator]: https://kotlin.github.io/kotlinx.coroutines/kotlinx-coroutines-core/kotlinx.coroutines.experimental.channels/-channel-iterator/index.html
4040
<!--- SITE_ROOT https://kotlin.github.io/kotlinx.coroutines/kotlinx-coroutines-rx1 -->
41-
<!--- DOCS_ROOT kotlinx-coroutines-rx1/target/dokka/kotlinx-coroutines-rx1 -->
41+
<!--- DOCS_ROOT reactive/kotlinx-coroutines-rx1/target/dokka/kotlinx-coroutines-rx1 -->
4242
<!--- INDEX kotlinx.coroutines.experimental.rx1 -->
4343
[rxCompletable]: https://kotlin.github.io/kotlinx.coroutines/kotlinx-coroutines-rx1/kotlinx.coroutines.experimental.rx1/rx-completable.html
4444
[rxSingle]: https://kotlin.github.io/kotlinx.coroutines/kotlinx-coroutines-rx1/kotlinx.coroutines.experimental.rx1/rx-single.html
@@ -48,9 +48,9 @@ Conversion functions:
4848
[rx.Observable.awaitSingle]: https://kotlin.github.io/kotlinx.coroutines/kotlinx-coroutines-rx1/kotlinx.coroutines.experimental.rx1/rx.-observable/await-single.html
4949
[rx.Observable.open]: https://kotlin.github.io/kotlinx.coroutines/kotlinx-coroutines-rx1/kotlinx.coroutines.experimental.rx1/rx.-observable/open.html
5050
[rx.Observable.iterator]: https://kotlin.github.io/kotlinx.coroutines/kotlinx-coroutines-rx1/kotlinx.coroutines.experimental.rx1/rx.-observable/iterator.html
51-
[kotlinx.coroutines.experimental.Job.toCompletable]: https://kotlin.github.io/kotlinx.coroutines/kotlinx-coroutines-rx1/kotlinx.coroutines.experimental.rx1/kotlinx.coroutines.experimental.-job/to-completable.html
52-
[kotlinx.coroutines.experimental.Deferred.toSingle]: https://kotlin.github.io/kotlinx.coroutines/kotlinx-coroutines-rx1/kotlinx.coroutines.experimental.rx1/kotlinx.coroutines.experimental.-deferred/to-single.html
53-
[kotlinx.coroutines.experimental.channels.ReceiveChannel.toObservable]: https://kotlin.github.io/kotlinx.coroutines/kotlinx-coroutines-rx1/kotlinx.coroutines.experimental.rx1/kotlinx.coroutines.experimental.channels.-receive-channel/to-observable.html
51+
[kotlinx.coroutines.experimental.Job.asCompletable]: https://kotlin.github.io/kotlinx.coroutines/kotlinx-coroutines-rx1/kotlinx.coroutines.experimental.rx1/kotlinx.coroutines.experimental.-job/as-completable.html
52+
[kotlinx.coroutines.experimental.Deferred.asSingle]: https://kotlin.github.io/kotlinx.coroutines/kotlinx-coroutines-rx1/kotlinx.coroutines.experimental.rx1/kotlinx.coroutines.experimental.-deferred/as-single.html
53+
[kotlinx.coroutines.experimental.channels.ReceiveChannel.asObservable]: https://kotlin.github.io/kotlinx.coroutines/kotlinx-coroutines-rx1/kotlinx.coroutines.experimental.rx1/kotlinx.coroutines.experimental.channels.-receive-channel/as-observable.html
5454
<!--- END -->
5555

5656
# Package kotlinx.coroutines.experimental.rx1

reactive/kotlinx-coroutines-rx1/src/main/kotlin/kotlinx/coroutines/experimental/rx1/RxConvert.kt

Lines changed: 27 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -31,8 +31,8 @@ import kotlin.coroutines.experimental.CoroutineContext
3131
*
3232
* @param context -- the coroutine context from which the resulting completable is going to be signalled
3333
*/
34-
public fun Job.toCompletable(context: CoroutineContext): Completable = rxCompletable(context) {
35-
this@toCompletable.join()
34+
public fun Job.asCompletable(context: CoroutineContext): Completable = rxCompletable(context) {
35+
this@asCompletable.join()
3636
}
3737

3838
/**
@@ -44,8 +44,8 @@ public fun Job.toCompletable(context: CoroutineContext): Completable = rxComplet
4444
*
4545
* @param context -- the coroutine context from which the resulting single is going to be signalled
4646
*/
47-
public fun <T> Deferred<T>.toSingle(context: CoroutineContext): Single<T> = rxSingle<T>(context) {
48-
this@toSingle.await()
47+
public fun <T> Deferred<T>.asSingle(context: CoroutineContext): Single<T> = rxSingle<T>(context) {
48+
this@asSingle.await()
4949
}
5050

5151
/**
@@ -56,7 +56,28 @@ public fun <T> Deferred<T>.toSingle(context: CoroutineContext): Single<T> = rxSi
5656
*
5757
* @param context -- the coroutine context from which the resulting observable is going to be signalled
5858
*/
59-
public fun <T> ReceiveChannel<T>.toObservable(context: CoroutineContext): Observable<T> = rxObservable(context) {
60-
for (t in this@toObservable)
59+
public fun <T> ReceiveChannel<T>.asObservable(context: CoroutineContext): Observable<T> = rxObservable(context) {
60+
for (t in this@asObservable)
6161
send(t)
6262
}
63+
64+
/**
65+
* @suppress **Deprecated**: Renamed to [asCompletable]
66+
*/
67+
@Deprecated(message = "Renamed to `asCompletable`",
68+
replaceWith = ReplaceWith("asCompletable(context)"))
69+
public fun Job.toCompletable(context: CoroutineContext): Completable = asCompletable(context)
70+
71+
/**
72+
* @suppress **Deprecated**: Renamed to [asSingle]
73+
*/
74+
@Deprecated(message = "Renamed to `asSingle`",
75+
replaceWith = ReplaceWith("asSingle(context)"))
76+
public fun <T> Deferred<T>.toSingle(context: CoroutineContext): Single<T> = asSingle(context)
77+
78+
/**
79+
* @suppress **Deprecated**: Renamed to [asObservable]
80+
*/
81+
@Deprecated(message = "Renamed to `asObservable`",
82+
replaceWith = ReplaceWith("asObservable(context)"))
83+
public fun <T> ReceiveChannel<T>.toObservable(context: CoroutineContext): Observable<T> = asObservable(context)

reactive/kotlinx-coroutines-rx1/src/test/kotlin/kotlinx/coroutines/experimental/rx1/ConvertTest.kt

Lines changed: 9 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -20,9 +20,8 @@ import kotlinx.coroutines.experimental.*
2020
import kotlinx.coroutines.experimental.channels.produce
2121
import org.hamcrest.core.IsEqual
2222
import org.hamcrest.core.IsInstanceOf
23-
import org.junit.Assert.*
23+
import org.junit.Assert.assertThat
2424
import org.junit.Test
25-
import java.io.IOException
2625

2726
class ConvertTest : TestBase() {
2827
class TestException(s: String): RuntimeException(s)
@@ -33,7 +32,7 @@ class ConvertTest : TestBase() {
3332
val job = launch(context) {
3433
expect(3)
3534
}
36-
val completable = job.toCompletable(context)
35+
val completable = job.asCompletable(context)
3736
completable.subscribe {
3837
expect(4)
3938
}
@@ -49,7 +48,7 @@ class ConvertTest : TestBase() {
4948
expect(3)
5049
throw RuntimeException("OK")
5150
}
52-
val completable = job.toCompletable(context)
51+
val completable = job.asCompletable(context)
5352
completable.subscribe {
5453
expect(4)
5554
}
@@ -64,11 +63,11 @@ class ConvertTest : TestBase() {
6463
delay(50)
6564
"OK"
6665
}
67-
val single1 = d.toSingle(Unconfined)
66+
val single1 = d.asSingle(Unconfined)
6867
checkSingleValue(single1) {
6968
assertThat(it, IsEqual("OK"))
7069
}
71-
val single2 = d.toSingle(Unconfined)
70+
val single2 = d.asSingle(Unconfined)
7271
checkSingleValue(single2) {
7372
assertThat(it, IsEqual("OK"))
7473
}
@@ -80,12 +79,12 @@ class ConvertTest : TestBase() {
8079
delay(50)
8180
throw TestException("OK")
8281
}
83-
val single1 = d.toSingle(Unconfined)
82+
val single1 = d.asSingle(Unconfined)
8483
checkErroneous(single1) {
8584
assertThat(it, IsInstanceOf(TestException::class.java))
8685
assertThat(it.message, IsEqual("OK"))
8786
}
88-
val single2 = d.toSingle(Unconfined)
87+
val single2 = d.asSingle(Unconfined)
8988
checkErroneous(single2) {
9089
assertThat(it, IsInstanceOf(TestException::class.java))
9190
assertThat(it.message, IsEqual("OK"))
@@ -100,7 +99,7 @@ class ConvertTest : TestBase() {
10099
delay(50)
101100
send("K")
102101
}
103-
val observable = c.toObservable(Unconfined)
102+
val observable = c.asObservable(Unconfined)
104103
checkSingleValue(observable.reduce { t1, t2 -> t1 + t2 }) {
105104
assertThat(it, IsEqual("OK"))
106105
}
@@ -114,7 +113,7 @@ class ConvertTest : TestBase() {
114113
delay(50)
115114
throw TestException("K")
116115
}
117-
val observable = c.toObservable(Unconfined)
116+
val observable = c.asObservable(Unconfined)
118117
val single = rxSingle(Unconfined) {
119118
var result = ""
120119
try {

reactive/kotlinx-coroutines-rx2/README.md

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -30,9 +30,9 @@ Conversion functions:
3030

3131
| **Name** | **Description**
3232
| -------- | ---------------
33-
| [Job.toCompletable][kotlinx.coroutines.experimental.Job.toCompletable] | Converts job to hot completable
34-
| [Deferred.toSingle][kotlinx.coroutines.experimental.Deferred.toSingle] | Converts deferred value to hot single
35-
| [ReceiveChannel.toObservable][kotlinx.coroutines.experimental.channels.ReceiveChannel.toObservable] | Converts streaming channel to hot observable
33+
| [Job.asCompletable][kotlinx.coroutines.experimental.Job.asCompletable] | Converts job to hot completable
34+
| [Deferred.asSingle][kotlinx.coroutines.experimental.Deferred.asSingle] | Converts deferred value to hot single
35+
| [ReceiveChannel.asObservable][kotlinx.coroutines.experimental.channels.ReceiveChannel.asObservable] | Converts streaming channel to hot observable
3636

3737
<!--- SITE_ROOT https://kotlin.github.io/kotlinx.coroutines/kotlinx-coroutines-core -->
3838
<!--- DOCS_ROOT kotlinx-coroutines-core/target/dokka/kotlinx-coroutines-core -->
@@ -43,7 +43,7 @@ Conversion functions:
4343
[ReceiveChannel]: https://kotlin.github.io/kotlinx.coroutines/kotlinx-coroutines-core/kotlinx.coroutines.experimental.channels/-receive-channel/index.html
4444
[ChannelIterator]: https://kotlin.github.io/kotlinx.coroutines/kotlinx-coroutines-core/kotlinx.coroutines.experimental.channels/-channel-iterator/index.html
4545
<!--- SITE_ROOT https://kotlin.github.io/kotlinx.coroutines/kotlinx-coroutines-rx2 -->
46-
<!--- DOCS_ROOT kotlinx-coroutines-rx2/target/dokka/kotlinx-coroutines-rx2 -->
46+
<!--- DOCS_ROOT reactive/kotlinx-coroutines-rx2/target/dokka/kotlinx-coroutines-rx2 -->
4747
<!--- INDEX kotlinx.coroutines.experimental.rx2 -->
4848
[rxCompletable]: https://kotlin.github.io/kotlinx.coroutines/kotlinx-coroutines-rx2/kotlinx.coroutines.experimental.rx2/rx-completable.html
4949
[rxSingle]: https://kotlin.github.io/kotlinx.coroutines/kotlinx-coroutines-rx2/kotlinx.coroutines.experimental.rx2/rx-single.html
@@ -54,9 +54,9 @@ Conversion functions:
5454
[io.reactivex.ObservableSource.awaitSingle]: https://kotlin.github.io/kotlinx.coroutines/kotlinx-coroutines-rx2/kotlinx.coroutines.experimental.rx2/io.reactivex.-observable-source/await-single.html
5555
[io.reactivex.ObservableSource.open]: https://kotlin.github.io/kotlinx.coroutines/kotlinx-coroutines-rx2/kotlinx.coroutines.experimental.rx2/io.reactivex.-observable-source/open.html
5656
[io.reactivex.ObservableSource.iterator]: https://kotlin.github.io/kotlinx.coroutines/kotlinx-coroutines-rx2/kotlinx.coroutines.experimental.rx2/io.reactivex.-observable-source/iterator.html
57-
[kotlinx.coroutines.experimental.Job.toCompletable]: https://kotlin.github.io/kotlinx.coroutines/kotlinx-coroutines-rx2/kotlinx.coroutines.experimental.rx2/kotlinx.coroutines.experimental.-job/to-completable.html
58-
[kotlinx.coroutines.experimental.Deferred.toSingle]: https://kotlin.github.io/kotlinx.coroutines/kotlinx-coroutines-rx2/kotlinx.coroutines.experimental.rx2/kotlinx.coroutines.experimental.-deferred/to-single.html
59-
[kotlinx.coroutines.experimental.channels.ReceiveChannel.toObservable]: https://kotlin.github.io/kotlinx.coroutines/kotlinx-coroutines-rx2/kotlinx.coroutines.experimental.rx2/kotlinx.coroutines.experimental.channels.-receive-channel/to-observable.html
57+
[kotlinx.coroutines.experimental.Job.asCompletable]: https://kotlin.github.io/kotlinx.coroutines/kotlinx-coroutines-rx2/kotlinx.coroutines.experimental.rx2/kotlinx.coroutines.experimental.-job/as-completable.html
58+
[kotlinx.coroutines.experimental.Deferred.asSingle]: https://kotlin.github.io/kotlinx.coroutines/kotlinx-coroutines-rx2/kotlinx.coroutines.experimental.rx2/kotlinx.coroutines.experimental.-deferred/as-single.html
59+
[kotlinx.coroutines.experimental.channels.ReceiveChannel.asObservable]: https://kotlin.github.io/kotlinx.coroutines/kotlinx-coroutines-rx2/kotlinx.coroutines.experimental.rx2/kotlinx.coroutines.experimental.channels.-receive-channel/as-observable.html
6060
<!--- END -->
6161

6262
# Package kotlinx.coroutines.experimental.rx2

reactive/kotlinx-coroutines-rx2/src/main/kotlin/kotlinx/coroutines/experimental/rx2/RxConvert.kt

Lines changed: 27 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -36,8 +36,8 @@ import kotlin.coroutines.experimental.CoroutineContext
3636
*
3737
* @param context -- the coroutine context from which the resulting completable is going to be signalled
3838
*/
39-
public fun Job.toCompletable(context: CoroutineContext): Completable = rxCompletable(context) {
40-
this@toCompletable.join()
39+
public fun Job.asCompletable(context: CoroutineContext): Completable = rxCompletable(context) {
40+
this@asCompletable.join()
4141
}
4242

4343
/**
@@ -49,8 +49,8 @@ public fun Job.toCompletable(context: CoroutineContext): Completable = rxComplet
4949
*
5050
* @param context -- the coroutine context from which the resulting single is going to be signalled
5151
*/
52-
public fun <T> Deferred<T>.toSingle(context: CoroutineContext): Single<T> = rxSingle<T>(context) {
53-
this@toSingle.await()
52+
public fun <T> Deferred<T>.asSingle(context: CoroutineContext): Single<T> = rxSingle<T>(context) {
53+
this@asSingle.await()
5454
}
5555

5656
/**
@@ -61,7 +61,28 @@ public fun <T> Deferred<T>.toSingle(context: CoroutineContext): Single<T> = rxSi
6161
*
6262
* @param context -- the coroutine context from which the resulting observable is going to be signalled
6363
*/
64-
public fun <T> ReceiveChannel<T>.toObservable(context: CoroutineContext): Observable<T> = rxObservable(context) {
65-
for (t in this@toObservable)
64+
public fun <T> ReceiveChannel<T>.asObservable(context: CoroutineContext): Observable<T> = rxObservable(context) {
65+
for (t in this@asObservable)
6666
send(t)
6767
}
68+
69+
/**
70+
* @suppress **Deprecated**: Renamed to [asCompletable]
71+
*/
72+
@Deprecated(message = "Renamed to `asCompletable`",
73+
replaceWith = ReplaceWith("asCompletable(context)"))
74+
public fun Job.toCompletable(context: CoroutineContext): Completable = asCompletable(context)
75+
76+
/**
77+
* @suppress **Deprecated**: Renamed to [asSingle]
78+
*/
79+
@Deprecated(message = "Renamed to `asSingle`",
80+
replaceWith = ReplaceWith("asSingle(context)"))
81+
public fun <T> Deferred<T>.toSingle(context: CoroutineContext): Single<T> = asSingle(context)
82+
83+
/**
84+
* @suppress **Deprecated**: Renamed to [asObservable]
85+
*/
86+
@Deprecated(message = "Renamed to `asObservable`",
87+
replaceWith = ReplaceWith("asObservable(context)"))
88+
public fun <T> ReceiveChannel<T>.toObservable(context: CoroutineContext): Observable<T> = asObservable(context)

0 commit comments

Comments
 (0)