Minor. Fix tests after CoroutineContext introduction

This commit is contained in:
Denis Zharkov
2017-01-14 13:15:18 +03:00
parent 6a1ad3a279
commit c7f76d7ec8
5 changed files with 42 additions and 6 deletions
@@ -1,13 +1,43 @@
package-fragment kotlin.coroutines
@kotlin.SinceKotlin(version = "1.1") public interface Continuation</*0*/ in T> {
public abstract val context: kotlin.coroutines.CoroutineContext
public abstract fun <get-context>(): kotlin.coroutines.CoroutineContext
public abstract fun resume(/*0*/ value: T): kotlin.Unit
public abstract fun resumeWithException(/*0*/ exception: kotlin.Throwable): kotlin.Unit
}
@kotlin.SinceKotlin(version = "1.1") public interface ContinuationDispatcher {
public open fun </*0*/ T> dispatchResume(/*0*/ value: T, /*1*/ continuation: kotlin.coroutines.Continuation<T>): kotlin.Boolean
public open fun dispatchResumeWithException(/*0*/ exception: kotlin.Throwable, /*1*/ continuation: kotlin.coroutines.Continuation<*>): kotlin.Boolean
@kotlin.SinceKotlin(version = "1.1") public interface ContinuationInterceptor : kotlin.coroutines.CoroutineContextElement {
public abstract override /*1*/ /*fake_override*/ val contextKey: kotlin.coroutines.CoroutineContextKey<*>
public abstract override /*1*/ /*fake_override*/ fun <get-contextKey>(): kotlin.coroutines.CoroutineContextKey<*>
public abstract override /*1*/ /*fake_override*/ fun </*0*/ R> fold(/*0*/ initial: R, /*1*/ operation: (R, kotlin.coroutines.CoroutineContextElement) -> R): R
public abstract override /*1*/ /*fake_override*/ fun </*0*/ E : kotlin.coroutines.CoroutineContextElement> get(/*0*/ key: kotlin.coroutines.CoroutineContextKey<E>): E?
public abstract fun </*0*/ T> interceptContinuation(/*0*/ continuation: kotlin.coroutines.Continuation<T>): kotlin.coroutines.Continuation<T>
public abstract override /*1*/ /*fake_override*/ fun minusKey(/*0*/ key: kotlin.coroutines.CoroutineContextKey<*>): kotlin.coroutines.CoroutineContext
public abstract override /*1*/ /*fake_override*/ fun plus(/*0*/ context: kotlin.coroutines.CoroutineContext): kotlin.coroutines.CoroutineContext
public companion object Companion : kotlin.coroutines.CoroutineContextKey<kotlin.coroutines.ContinuationInterceptor> {
/*primary*/ private constructor Companion()
}
}
@kotlin.SinceKotlin(version = "1.1") public interface CoroutineContext {
public abstract fun </*0*/ R> fold(/*0*/ initial: R, /*1*/ operation: (R, kotlin.coroutines.CoroutineContextElement) -> R): R
public abstract operator fun </*0*/ E : kotlin.coroutines.CoroutineContextElement> get(/*0*/ key: kotlin.coroutines.CoroutineContextKey<E>): E?
public abstract fun minusKey(/*0*/ key: kotlin.coroutines.CoroutineContextKey<*>): kotlin.coroutines.CoroutineContext
public abstract operator fun plus(/*0*/ context: kotlin.coroutines.CoroutineContext): kotlin.coroutines.CoroutineContext
}
@kotlin.SinceKotlin(version = "1.1") public interface CoroutineContextElement : kotlin.coroutines.CoroutineContext {
public abstract val contextKey: kotlin.coroutines.CoroutineContextKey<*>
public abstract fun <get-contextKey>(): kotlin.coroutines.CoroutineContextKey<*>
public abstract override /*1*/ /*fake_override*/ fun </*0*/ R> fold(/*0*/ initial: R, /*1*/ operation: (R, kotlin.coroutines.CoroutineContextElement) -> R): R
public abstract override /*1*/ /*fake_override*/ fun </*0*/ E : kotlin.coroutines.CoroutineContextElement> get(/*0*/ key: kotlin.coroutines.CoroutineContextKey<E>): E?
public abstract override /*1*/ /*fake_override*/ fun minusKey(/*0*/ key: kotlin.coroutines.CoroutineContextKey<*>): kotlin.coroutines.CoroutineContext
public abstract override /*1*/ /*fake_override*/ fun plus(/*0*/ context: kotlin.coroutines.CoroutineContext): kotlin.coroutines.CoroutineContext
}
@kotlin.SinceKotlin(version = "1.1") public interface CoroutineContextKey</*0*/ E : kotlin.coroutines.CoroutineContextElement> {
}
@kotlin.SinceKotlin(version = "1.1") @kotlin.annotation.Target(allowedTargets = {AnnotationTarget.CLASS}) @kotlin.annotation.Retention(value = AnnotationRetention.BINARY) public final annotation class RestrictsSuspension : kotlin.Annotation {
+4 -3
View File
@@ -20,6 +20,7 @@ fun box(): String {
return "OK"
}
// 2 GETSTATIC kotlin/Unit.INSTANCE : Lkotlin/Unit;
// 1 GETSTATIC EmptyContinuation.INSTANCE
// 3 GETSTATIC
// 2 GETSTATIC kotlin/Unit.INSTANCE
// 1 GETSTATIC EmptyContinuation.Companion
// 3 GETSTATIC kotlin\/coroutines\/EmptyCoroutineContext.INSTANCE
// 6 GETSTATIC
+2
View File
@@ -48,6 +48,8 @@ fun box(): String {
fun <T> async(c: suspend () -> T): CompletableFuture<T> {
val future = CompletableFuture<T>()
c.startCoroutine(object : Continuation<T> {
override val context = EmptyCoroutineContext
override fun resume(data: T) {
future.complete(data)
}
+2
View File
@@ -45,6 +45,8 @@ fun box(): String {
fun <T> async(c: suspend () -> T): CompletableFuture<T> {
val future = CompletableFuture<T>()
c.startCoroutine(object : Continuation<T> {
override val context = EmptyCoroutineContext
override fun resume(data: T) {
future.complete(data)
}
@@ -4,6 +4,7 @@ import kotlin.coroutines.intrinsics.*
fun async(x: suspend Controller.() -> Unit) {
x.startCoroutine(Controller(), object : Continuation<Unit> {
override val context: CoroutineContext = null!!
override fun resume(value: Unit) {}
override fun resumeWithException(exception: Throwable) {}