Skip to content

Commit 2dfcb49

Browse files
ilya-gdzharkov
authored andcommitted
Fix CoroutineContext tests, update public API dump
1 parent 8d6a913 commit 2dfcb49

3 files changed

Lines changed: 47 additions & 23 deletions

File tree

libraries/stdlib/test/coroutines/CoroutineContextTest.kt

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -18,6 +18,7 @@ package test.coroutines
1818

1919
import kotlin.test.*
2020
import org.junit.Test
21+
import kotlin.coroutines.*
2122

2223
class CoroutineContextTest {
2324
data class CtxA(val i: Int) : AbstractCoroutineContextElement() {
@@ -36,13 +37,13 @@ class CoroutineContextTest {
3637
}
3738

3839
object Disp1 : AbstractCoroutineContextElement(), ContinuationInterceptor {
39-
override fun <T> interceptContinuation(continuation: CoroutineContinuation<T>): CoroutineContinuation<T> = continuation
40+
override fun <T> interceptContinuation(continuation: Continuation<T>): Continuation<T> = continuation
4041
override val contextKey: CoroutineContextKey<*> = ContinuationInterceptor
4142
override fun toString(): String = "Disp1"
4243
}
4344

4445
object Disp2 : AbstractCoroutineContextElement(), ContinuationInterceptor {
45-
override fun <T> interceptContinuation(continuation: CoroutineContinuation<T>): CoroutineContinuation<T> = continuation
46+
override fun <T> interceptContinuation(continuation: Continuation<T>): Continuation<T> = continuation
4647
override val contextKey: CoroutineContextKey<*> = ContinuationInterceptor
4748
override fun toString(): String = "Disp2"
4849
}

libraries/tools/binary-compatibility-validator/reference-public-api/kotlin-runtime.txt

Lines changed: 21 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -180,18 +180,31 @@ public abstract class kotlin/collections/ShortIterator : java/util/Iterator, kot
180180
}
181181

182182
public abstract interface class kotlin/coroutines/Continuation {
183+
public abstract fun getContext ()Lkotlin/coroutines/CoroutineContext;
183184
public abstract fun resume (Ljava/lang/Object;)V
184185
public abstract fun resumeWithException (Ljava/lang/Throwable;)V
185186
}
186187

187-
public abstract interface class kotlin/coroutines/ContinuationDispatcher {
188-
public abstract fun dispatchResume (Ljava/lang/Object;Lkotlin/coroutines/Continuation;)Z
189-
public abstract fun dispatchResumeWithException (Ljava/lang/Throwable;Lkotlin/coroutines/Continuation;)Z
188+
public abstract interface class kotlin/coroutines/ContinuationInterceptor : kotlin/coroutines/CoroutineContextElement {
189+
public static final field Companion Lkotlin/coroutines/ContinuationInterceptor$Companion;
190+
public abstract fun interceptContinuation (Lkotlin/coroutines/Continuation;)Lkotlin/coroutines/Continuation;
190191
}
191192

192-
public final class kotlin/coroutines/ContinuationDispatcher$DefaultImpls {
193-
public static fun dispatchResume (Lkotlin/coroutines/ContinuationDispatcher;Ljava/lang/Object;Lkotlin/coroutines/Continuation;)Z
194-
public static fun dispatchResumeWithException (Lkotlin/coroutines/ContinuationDispatcher;Ljava/lang/Throwable;Lkotlin/coroutines/Continuation;)Z
193+
public final class kotlin/coroutines/ContinuationInterceptor$Companion : kotlin/coroutines/CoroutineContextKey {
194+
}
195+
196+
public abstract interface class kotlin/coroutines/CoroutineContext {
197+
public abstract fun fold (Ljava/lang/Object;Lkotlin/jvm/functions/Function2;)Ljava/lang/Object;
198+
public abstract fun get (Lkotlin/coroutines/CoroutineContextKey;)Lkotlin/coroutines/CoroutineContextElement;
199+
public abstract fun minusKey (Lkotlin/coroutines/CoroutineContextKey;)Lkotlin/coroutines/CoroutineContext;
200+
public abstract fun plus (Lkotlin/coroutines/CoroutineContext;)Lkotlin/coroutines/CoroutineContext;
201+
}
202+
203+
public abstract interface class kotlin/coroutines/CoroutineContextElement : kotlin/coroutines/CoroutineContext {
204+
public abstract fun getContextKey ()Lkotlin/coroutines/CoroutineContextKey;
205+
}
206+
207+
public abstract interface class kotlin/coroutines/CoroutineContextKey {
195208
}
196209

197210
public abstract interface annotation class kotlin/coroutines/RestrictsSuspension : java/lang/annotation/Annotation {
@@ -468,24 +481,19 @@ public class kotlin/jvm/internal/CollectionToArray {
468481
public static fun toArray (Ljava/util/Collection;[Ljava/lang/Object;)[Ljava/lang/Object;
469482
}
470483

471-
public abstract class kotlin/jvm/internal/CoroutineImpl : kotlin/jvm/internal/Lambda, kotlin/coroutines/Continuation, kotlin/jvm/internal/DispatchedContinuation {
484+
public abstract class kotlin/jvm/internal/CoroutineImpl : kotlin/jvm/internal/Lambda, kotlin/coroutines/Continuation {
472485
protected field completion Lkotlin/coroutines/Continuation;
473486
protected field label I
474487
public fun <init> (ILkotlin/coroutines/Continuation;)V
475488
protected abstract fun doResume (Ljava/lang/Object;Ljava/lang/Throwable;)Ljava/lang/Object;
476-
public fun getDispatcher ()Lkotlin/coroutines/ContinuationDispatcher;
489+
public fun getContext ()Lkotlin/coroutines/CoroutineContext;
477490
public final fun getFacade ()Lkotlin/coroutines/Continuation;
478491
public fun resume (Ljava/lang/Object;)V
479492
public fun resumeWithException (Ljava/lang/Throwable;)V
480493
}
481494

482495
public final class kotlin/jvm/internal/CoroutineIntrinsics {
483496
public static final fun normalizeContinuation (Lkotlin/coroutines/Continuation;)Lkotlin/coroutines/Continuation;
484-
public static final fun wrapContinuationIfNeeded (Lkotlin/coroutines/Continuation;Lkotlin/coroutines/ContinuationDispatcher;)Lkotlin/coroutines/Continuation;
485-
}
486-
487-
public abstract interface class kotlin/jvm/internal/DispatchedContinuation : kotlin/coroutines/Continuation {
488-
public abstract fun getDispatcher ()Lkotlin/coroutines/ContinuationDispatcher;
489497
}
490498

491499
public final class kotlin/jvm/internal/DoubleCompanionObject {

libraries/tools/binary-compatibility-validator/reference-public-api/kotlin-stdlib.txt

Lines changed: 23 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -1753,21 +1753,36 @@ public final class kotlin/concurrent/TimersKt {
17531753
public static final fun timer (Ljava/lang/String;Z)Ljava/util/Timer;
17541754
}
17551755

1756+
public abstract class kotlin/coroutines/AbstractCoroutineContextElement : kotlin/coroutines/CoroutineContextElement {
1757+
public fun <init> ()V
1758+
public fun fold (Ljava/lang/Object;Lkotlin/jvm/functions/Function2;)Ljava/lang/Object;
1759+
public fun get (Lkotlin/coroutines/CoroutineContextKey;)Lkotlin/coroutines/CoroutineContextElement;
1760+
public fun minusKey (Lkotlin/coroutines/CoroutineContextKey;)Lkotlin/coroutines/CoroutineContext;
1761+
public fun plus (Lkotlin/coroutines/CoroutineContext;)Lkotlin/coroutines/CoroutineContext;
1762+
}
1763+
17561764
public final class kotlin/coroutines/CoroutinesLibraryKt {
1757-
public static final fun createCoroutine (Lkotlin/jvm/functions/Function1;Lkotlin/coroutines/Continuation;Lkotlin/coroutines/ContinuationDispatcher;)Lkotlin/coroutines/Continuation;
1758-
public static final fun createCoroutine (Lkotlin/jvm/functions/Function2;Ljava/lang/Object;Lkotlin/coroutines/Continuation;Lkotlin/coroutines/ContinuationDispatcher;)Lkotlin/coroutines/Continuation;
1759-
public static synthetic fun createCoroutine$default (Lkotlin/jvm/functions/Function1;Lkotlin/coroutines/Continuation;Lkotlin/coroutines/ContinuationDispatcher;ILjava/lang/Object;)Lkotlin/coroutines/Continuation;
1760-
public static synthetic fun createCoroutine$default (Lkotlin/jvm/functions/Function2;Ljava/lang/Object;Lkotlin/coroutines/Continuation;Lkotlin/coroutines/ContinuationDispatcher;ILjava/lang/Object;)Lkotlin/coroutines/Continuation;
1761-
public static final fun startCoroutine (Lkotlin/jvm/functions/Function1;Lkotlin/coroutines/Continuation;Lkotlin/coroutines/ContinuationDispatcher;)V
1762-
public static final fun startCoroutine (Lkotlin/jvm/functions/Function2;Ljava/lang/Object;Lkotlin/coroutines/Continuation;Lkotlin/coroutines/ContinuationDispatcher;)V
1763-
public static synthetic fun startCoroutine$default (Lkotlin/jvm/functions/Function1;Lkotlin/coroutines/Continuation;Lkotlin/coroutines/ContinuationDispatcher;ILjava/lang/Object;)V
1764-
public static synthetic fun startCoroutine$default (Lkotlin/jvm/functions/Function2;Ljava/lang/Object;Lkotlin/coroutines/Continuation;Lkotlin/coroutines/ContinuationDispatcher;ILjava/lang/Object;)V
1765+
public static final fun createCoroutine (Lkotlin/jvm/functions/Function1;Lkotlin/coroutines/Continuation;)Lkotlin/coroutines/Continuation;
1766+
public static final fun createCoroutine (Lkotlin/jvm/functions/Function2;Ljava/lang/Object;Lkotlin/coroutines/Continuation;)Lkotlin/coroutines/Continuation;
1767+
public static final fun startCoroutine (Lkotlin/jvm/functions/Function1;Lkotlin/coroutines/Continuation;)V
1768+
public static final fun startCoroutine (Lkotlin/jvm/functions/Function2;Ljava/lang/Object;Lkotlin/coroutines/Continuation;)V
17651769
public static final fun suspendCoroutine (Lkotlin/jvm/functions/Function1;Lkotlin/coroutines/Continuation;)Ljava/lang/Object;
17661770
}
17671771

1772+
public final class kotlin/coroutines/EmptyCoroutineContext : kotlin/coroutines/CoroutineContext {
1773+
public static final field INSTANCE Lkotlin/coroutines/EmptyCoroutineContext;
1774+
public fun fold (Ljava/lang/Object;Lkotlin/jvm/functions/Function2;)Ljava/lang/Object;
1775+
public fun get (Lkotlin/coroutines/CoroutineContextKey;)Lkotlin/coroutines/CoroutineContextElement;
1776+
public fun hashCode ()I
1777+
public fun minusKey (Lkotlin/coroutines/CoroutineContextKey;)Lkotlin/coroutines/CoroutineContext;
1778+
public fun plus (Lkotlin/coroutines/CoroutineContext;)Lkotlin/coroutines/CoroutineContext;
1779+
public fun toString ()Ljava/lang/String;
1780+
}
1781+
17681782
public final class kotlin/coroutines/SafeContinuation : kotlin/coroutines/Continuation {
17691783
public static final field Companion Lkotlin/coroutines/SafeContinuation$Companion;
17701784
public fun <init> (Lkotlin/coroutines/Continuation;)V
1785+
public fun getContext ()Lkotlin/coroutines/CoroutineContext;
17711786
public final fun getResult ()Ljava/lang/Object;
17721787
public fun resume (Ljava/lang/Object;)V
17731788
public fun resumeWithException (Ljava/lang/Throwable;)V

0 commit comments

Comments
 (0)