Extract kotlin.coroutines.experimental API into compat artifact

Add public API dump for kotlin-coroutines-experimental-compat

#KT-36083
This commit is contained in:
Ilya Gorbunov
2020-01-18 04:54:46 +03:00
parent 075eea5a96
commit b5a0daabc3
15 changed files with 268 additions and 149 deletions
+2 -1
View File
@@ -273,7 +273,8 @@ val coreLibProjects = listOfNotNull(
":kotlin-test:kotlin-test-junit5",
":kotlin-test:kotlin-test-testng",
":kotlin-test:kotlin-test-js".takeIf { !kotlinBuildProperties.isInJpsBuildIdeaSync },
":kotlin-reflect"
":kotlin-reflect",
":kotlin-coroutines-experimental-compat"
)
val gradlePluginProjects = listOf(
+1 -1
View File
@@ -28,7 +28,7 @@ sourceSets {
}
coroutinesExperimental {
kotlin {
srcDir '../coroutines-experimental/src'
// srcDir '../coroutines-experimental/src'
}
}
}
@@ -0,0 +1,94 @@
import org.jetbrains.kotlin.gradle.tasks.KotlinCompile
plugins {
kotlin("jvm")
id("jps-compatible")
}
publish()
description = "Kotlin pre 1.3 experimental coroutines compatibility library"
jvmTarget = "1.6"
javaHome = rootProject.extra["JDK_16"] as String
sourceSets {
"main" {
java.srcDirs("src", "jvm/src")
}
"test" {
java.srcDirs("jvm/test")
}
"migrationTest" {
if(!kotlinBuildProperties.isInIdeaSync)
java.srcDirs("jvm/test")
}
}
val migrationTestSourceSet = sourceSets["migrationTest"]
configurations {
"migrationTestImplementation" {
extendsFrom(testImplementation.get())
}
}
dependencies {
api(kotlinStdlib())
testImplementation(project(":kotlin-test:kotlin-test-junit"))
"migrationTestImplementation"(sourceSets.main.get().output)
}
tasks {
val compileKotlin by existing(KotlinCompile::class) {
kotlinOptions {
languageVersion = "1.3"
apiVersion = "1.3"
freeCompilerArgs = listOf(
"-Xmulti-platform",
"-Xallow-kotlin-package",
"-Xmultifile-parts-inherit",
"-Xuse-experimental=kotlin.contracts.ExperimentalContracts",
"-Xuse-experimental=kotlin.Experimental",
"-Xcoroutines=enable",
"-XXLanguage:-ReleaseCoroutines",
"-Xno-use-ir",
"-module-name", "kotlin-coroutines-experimental-compat"
)
}
}
val compileTestKotlin by existing(KotlinCompile::class) {
kotlinOptions {
languageVersion = "1.2"
apiVersion = "1.2"
freeCompilerArgs = listOf("-Xcoroutines=enable")
}
}
val compileMigrationTestKotlin by existing(KotlinCompile::class) {
kotlinOptions {
languageVersion = "1.3"
apiVersion = "1.3"
freeCompilerArgs = listOf()
}
}
val migrationTestClasses by existing
val migrationTest by creating(Test::class) {
dependsOn(migrationTestClasses)
group = "verification"
testClassesDirs = migrationTestSourceSet.output.classesDirs
classpath = migrationTestSourceSet.runtimeClasspath
}
val check by existing {
dependsOn(migrationTest)
}
val jar by existing(Jar::class) {
callGroovy("manifestAttributes", manifest, project, "Main")
}
}
sourcesJar()
javadocJar()
@@ -0,0 +1,15 @@
/*
* Copyright 2010-2020 JetBrains s.r.o. and Kotlin Programming Language contributors.
* Use of this source code is governed by the Apache 2.0 license that can be found in the license/LICENSE.txt file.
*/
package test
import kotlin.test.*
inline fun <reified T> assertStaticAndRuntimeTypeIs(value: T) {
@Suppress("USELESS_CAST")
if ((value as Any?) !is T) {
fail("Expected value $value to have ${T::class} type")
}
}
+1
View File
@@ -46,6 +46,7 @@ configurations {
dependencies {
compile project(':kotlin-stdlib')
testCompile project(':kotlin-test:kotlin-test-junit')
testCompile project(':kotlin-coroutines-experimental-compat')
}
jar {
+1
View File
@@ -16,6 +16,7 @@ dependencies {
compile project(':kotlin-stdlib')
compile project(':kotlin-stdlib-jdk7')
testCompile project(':kotlin-test:kotlin-test-junit')
testCompile project(':kotlin-coroutines-experimental-compat')
}
sourceSets {
+5 -5
View File
@@ -70,7 +70,7 @@ sourceSets {
coroutinesExperimental {
kotlin {
srcDir coroutinesExpJsSrcDir
// srcDir coroutinesExpJsSrcDir
}
}
}
@@ -206,8 +206,8 @@ task compileJs(type: NoDebugJavaExec) {
doFirst {
args = [jsOutputFile, rootDir, "$jsSrcDir/wrapper.js"] + inputFiles.collect { it.path }.sort() +
(compileBuiltinsKotlin2Js.outputs.files.collect { it.path }.sort() +
compileKotlin2Js.outputs.files.collect { it.path }.sort() +
compileCoroutinesExperimentalKotlin2Js.outputs.files.collect { it.path }.sort()).findAll {
compileKotlin2Js.outputs.files.collect { it.path }.sort() /*+
compileCoroutinesExperimentalKotlin2Js.outputs.files.collect { it.path }.sort()*/).findAll {
it.endsWith(".js") && !it.endsWith(".meta.js")
}
}
@@ -253,8 +253,8 @@ task compileJs(type: NoDebugJavaExec) {
sourceMapFile.text = groovy.json.JsonOutput.toJson(sourceMap)
file(jsOutputMetaFile).text = file(compileKotlin2Js.outputFile.path.replaceAll('\\.js$', '.meta.js')).text +
file(compileCoroutinesExperimentalKotlin2Js.outputFile.path.replaceAll('\\.js$', '.meta.js')).text
file(jsOutputMetaFile).text = file(compileKotlin2Js.outputFile.path.replaceAll('\\.js$', '.meta.js')).text /*+
file(compileCoroutinesExperimentalKotlin2Js.outputFile.path.replaceAll('\\.js$', '.meta.js')).text*/
}
}
+4 -3
View File
@@ -26,18 +26,18 @@ sourceSets {
}
coroutinesExperimental {
kotlin {
srcDir '../coroutines-experimental/jvm/src'
// srcDir '../coroutines-experimental/jvm/src'
}
}
coroutinesExperimentalTest {
kotlin {
srcDir '../coroutines-experimental/jvm/test'
// srcDir '../coroutines-experimental/jvm/test'
}
}
coroutinesExperimentalMigrationTest {
kotlin {
if(!BuildPropertiesKt.getKotlinBuildProperties(project).inIdeaSync) {
srcDir '../coroutines-experimental/jvm/test'
// srcDir '../coroutines-experimental/jvm/test'
}
}
}
@@ -77,6 +77,7 @@ dependencies {
testCompile project(':kotlin-test:kotlin-test-junit')
testCompile sourceSets.coroutinesExperimental.output
testCompile project(':kotlin-coroutines-experimental-compat')
coroutinesExperimentalCompile sourceSets.main.output
coroutinesExperimentalTestCompile sourceSets.test.output
@@ -1,15 +1,12 @@
/*
* Copyright 2010-2018 JetBrains s.r.o. and Kotlin Programming Language contributors.
* Copyright 2010-2020 JetBrains s.r.o. and Kotlin Programming Language contributors.
* Use of this source code is governed by the Apache 2.0 license that can be found in the license/LICENSE.txt file.
*/
@file:Suppress("ObsoleteExperimentalCoroutines")
package test.coroutines
import java.util.concurrent.Semaphore
import kotlin.coroutines.*
import kotlin.coroutines.experimental.startCoroutine
import kotlin.test.*
/**
@@ -20,6 +20,7 @@ dependencies {
testArtifacts project(':kotlin-stdlib-jdk7')
testArtifacts project(':kotlin-stdlib-jdk8')
testArtifacts project(':kotlin-reflect')
testArtifacts project(':kotlin-coroutines-experimental-compat')
}
pill {
@@ -0,0 +1,135 @@
public abstract class kotlin/coroutines/experimental/AbstractCoroutineContextElement : kotlin/coroutines/experimental/CoroutineContext$Element {
public fun <init> (Lkotlin/coroutines/experimental/CoroutineContext$Key;)V
public fun fold (Ljava/lang/Object;Lkotlin/jvm/functions/Function2;)Ljava/lang/Object;
public fun get (Lkotlin/coroutines/experimental/CoroutineContext$Key;)Lkotlin/coroutines/experimental/CoroutineContext$Element;
public fun getKey ()Lkotlin/coroutines/experimental/CoroutineContext$Key;
public fun minusKey (Lkotlin/coroutines/experimental/CoroutineContext$Key;)Lkotlin/coroutines/experimental/CoroutineContext;
public fun plus (Lkotlin/coroutines/experimental/CoroutineContext;)Lkotlin/coroutines/experimental/CoroutineContext;
}
public abstract interface class kotlin/coroutines/experimental/Continuation {
public abstract fun getContext ()Lkotlin/coroutines/experimental/CoroutineContext;
public abstract fun resume (Ljava/lang/Object;)V
public abstract fun resumeWithException (Ljava/lang/Throwable;)V
}
public abstract interface class kotlin/coroutines/experimental/ContinuationInterceptor : kotlin/coroutines/experimental/CoroutineContext$Element {
public static final field Key Lkotlin/coroutines/experimental/ContinuationInterceptor$Key;
public abstract fun interceptContinuation (Lkotlin/coroutines/experimental/Continuation;)Lkotlin/coroutines/experimental/Continuation;
}
public final class kotlin/coroutines/experimental/ContinuationInterceptor$DefaultImpls {
public static fun fold (Lkotlin/coroutines/experimental/ContinuationInterceptor;Ljava/lang/Object;Lkotlin/jvm/functions/Function2;)Ljava/lang/Object;
public static fun get (Lkotlin/coroutines/experimental/ContinuationInterceptor;Lkotlin/coroutines/experimental/CoroutineContext$Key;)Lkotlin/coroutines/experimental/CoroutineContext$Element;
public static fun minusKey (Lkotlin/coroutines/experimental/ContinuationInterceptor;Lkotlin/coroutines/experimental/CoroutineContext$Key;)Lkotlin/coroutines/experimental/CoroutineContext;
public static fun plus (Lkotlin/coroutines/experimental/ContinuationInterceptor;Lkotlin/coroutines/experimental/CoroutineContext;)Lkotlin/coroutines/experimental/CoroutineContext;
}
public final class kotlin/coroutines/experimental/ContinuationInterceptor$Key : kotlin/coroutines/experimental/CoroutineContext$Key {
}
public abstract interface class kotlin/coroutines/experimental/CoroutineContext {
public abstract fun fold (Ljava/lang/Object;Lkotlin/jvm/functions/Function2;)Ljava/lang/Object;
public abstract fun get (Lkotlin/coroutines/experimental/CoroutineContext$Key;)Lkotlin/coroutines/experimental/CoroutineContext$Element;
public abstract fun minusKey (Lkotlin/coroutines/experimental/CoroutineContext$Key;)Lkotlin/coroutines/experimental/CoroutineContext;
public abstract fun plus (Lkotlin/coroutines/experimental/CoroutineContext;)Lkotlin/coroutines/experimental/CoroutineContext;
}
public final class kotlin/coroutines/experimental/CoroutineContext$DefaultImpls {
public static fun plus (Lkotlin/coroutines/experimental/CoroutineContext;Lkotlin/coroutines/experimental/CoroutineContext;)Lkotlin/coroutines/experimental/CoroutineContext;
}
public abstract interface class kotlin/coroutines/experimental/CoroutineContext$Element : kotlin/coroutines/experimental/CoroutineContext {
public abstract fun fold (Ljava/lang/Object;Lkotlin/jvm/functions/Function2;)Ljava/lang/Object;
public abstract fun get (Lkotlin/coroutines/experimental/CoroutineContext$Key;)Lkotlin/coroutines/experimental/CoroutineContext$Element;
public abstract fun getKey ()Lkotlin/coroutines/experimental/CoroutineContext$Key;
public abstract fun minusKey (Lkotlin/coroutines/experimental/CoroutineContext$Key;)Lkotlin/coroutines/experimental/CoroutineContext;
}
public final class kotlin/coroutines/experimental/CoroutineContext$Element$DefaultImpls {
public static fun fold (Lkotlin/coroutines/experimental/CoroutineContext$Element;Ljava/lang/Object;Lkotlin/jvm/functions/Function2;)Ljava/lang/Object;
public static fun get (Lkotlin/coroutines/experimental/CoroutineContext$Element;Lkotlin/coroutines/experimental/CoroutineContext$Key;)Lkotlin/coroutines/experimental/CoroutineContext$Element;
public static fun minusKey (Lkotlin/coroutines/experimental/CoroutineContext$Element;Lkotlin/coroutines/experimental/CoroutineContext$Key;)Lkotlin/coroutines/experimental/CoroutineContext;
public static fun plus (Lkotlin/coroutines/experimental/CoroutineContext$Element;Lkotlin/coroutines/experimental/CoroutineContext;)Lkotlin/coroutines/experimental/CoroutineContext;
}
public abstract interface class kotlin/coroutines/experimental/CoroutineContext$Key {
}
public final class kotlin/coroutines/experimental/CoroutinesKt {
public static final fun createCoroutine (Lkotlin/jvm/functions/Function1;Lkotlin/coroutines/experimental/Continuation;)Lkotlin/coroutines/experimental/Continuation;
public static final fun createCoroutine (Lkotlin/jvm/functions/Function2;Ljava/lang/Object;Lkotlin/coroutines/experimental/Continuation;)Lkotlin/coroutines/experimental/Continuation;
public static final fun startCoroutine (Lkotlin/jvm/functions/Function1;Lkotlin/coroutines/experimental/Continuation;)V
public static final fun startCoroutine (Lkotlin/jvm/functions/Function2;Ljava/lang/Object;Lkotlin/coroutines/experimental/Continuation;)V
public static final fun suspendCoroutine (Lkotlin/jvm/functions/Function1;Lkotlin/coroutines/experimental/Continuation;)Ljava/lang/Object;
}
public final class kotlin/coroutines/experimental/EmptyCoroutineContext : kotlin/coroutines/experimental/CoroutineContext {
public static final field INSTANCE Lkotlin/coroutines/experimental/EmptyCoroutineContext;
public fun fold (Ljava/lang/Object;Lkotlin/jvm/functions/Function2;)Ljava/lang/Object;
public fun get (Lkotlin/coroutines/experimental/CoroutineContext$Key;)Lkotlin/coroutines/experimental/CoroutineContext$Element;
public fun hashCode ()I
public fun minusKey (Lkotlin/coroutines/experimental/CoroutineContext$Key;)Lkotlin/coroutines/experimental/CoroutineContext;
public fun plus (Lkotlin/coroutines/experimental/CoroutineContext;)Lkotlin/coroutines/experimental/CoroutineContext;
public fun toString ()Ljava/lang/String;
}
public abstract interface annotation class kotlin/coroutines/experimental/RestrictsSuspension : java/lang/annotation/Annotation {
}
public final class kotlin/coroutines/experimental/SafeContinuation : kotlin/coroutines/experimental/Continuation {
public static final field Companion Lkotlin/coroutines/experimental/SafeContinuation$Companion;
public fun <init> (Lkotlin/coroutines/experimental/Continuation;)V
public fun getContext ()Lkotlin/coroutines/experimental/CoroutineContext;
public final fun getResult ()Ljava/lang/Object;
public fun resume (Ljava/lang/Object;)V
public fun resumeWithException (Ljava/lang/Throwable;)V
}
public final class kotlin/coroutines/experimental/SafeContinuation$Companion {
}
public abstract class kotlin/coroutines/experimental/SequenceBuilder {
public abstract fun yield (Ljava/lang/Object;Lkotlin/coroutines/experimental/Continuation;)Ljava/lang/Object;
public final fun yieldAll (Ljava/lang/Iterable;Lkotlin/coroutines/experimental/Continuation;)Ljava/lang/Object;
public abstract fun yieldAll (Ljava/util/Iterator;Lkotlin/coroutines/experimental/Continuation;)Ljava/lang/Object;
public final fun yieldAll (Lkotlin/sequences/Sequence;Lkotlin/coroutines/experimental/Continuation;)Ljava/lang/Object;
}
public final class kotlin/coroutines/experimental/SequenceBuilderKt {
public static final fun buildIterator (Lkotlin/jvm/functions/Function2;)Ljava/util/Iterator;
public static final fun buildSequence (Lkotlin/jvm/functions/Function2;)Lkotlin/sequences/Sequence;
}
public final class kotlin/coroutines/experimental/intrinsics/IntrinsicsKt {
public static final fun createCoroutineUnchecked (Lkotlin/jvm/functions/Function1;Lkotlin/coroutines/experimental/Continuation;)Lkotlin/coroutines/experimental/Continuation;
public static final fun createCoroutineUnchecked (Lkotlin/jvm/functions/Function2;Ljava/lang/Object;Lkotlin/coroutines/experimental/Continuation;)Lkotlin/coroutines/experimental/Continuation;
public static final fun getCOROUTINE_SUSPENDED ()Ljava/lang/Object;
}
public abstract class kotlin/coroutines/experimental/jvm/internal/CoroutineImpl : kotlin/jvm/internal/Lambda, kotlin/coroutines/experimental/Continuation {
protected field completion Lkotlin/coroutines/experimental/Continuation;
protected field label I
public fun <init> (ILkotlin/coroutines/experimental/Continuation;)V
public fun create (Ljava/lang/Object;Lkotlin/coroutines/experimental/Continuation;)Lkotlin/coroutines/experimental/Continuation;
public fun create (Lkotlin/coroutines/experimental/Continuation;)Lkotlin/coroutines/experimental/Continuation;
protected abstract fun doResume (Ljava/lang/Object;Ljava/lang/Throwable;)Ljava/lang/Object;
public fun getContext ()Lkotlin/coroutines/experimental/CoroutineContext;
public final fun getFacade ()Lkotlin/coroutines/experimental/Continuation;
public fun resume (Ljava/lang/Object;)V
public fun resumeWithException (Ljava/lang/Throwable;)V
}
public final class kotlin/coroutines/experimental/jvm/internal/CoroutineIntrinsics {
public static final fun normalizeContinuation (Lkotlin/coroutines/experimental/Continuation;)Lkotlin/coroutines/experimental/Continuation;
}
public final class kotlin/coroutines/experimental/migration/CoroutinesMigrationKt {
public static final fun toContinuation (Lkotlin/coroutines/experimental/Continuation;)Lkotlin/coroutines/Continuation;
public static final fun toContinuationInterceptor (Lkotlin/coroutines/experimental/ContinuationInterceptor;)Lkotlin/coroutines/ContinuationInterceptor;
public static final fun toCoroutineContext (Lkotlin/coroutines/experimental/CoroutineContext;)Lkotlin/coroutines/CoroutineContext;
public static final fun toExperimentalContinuation (Lkotlin/coroutines/Continuation;)Lkotlin/coroutines/experimental/Continuation;
public static final fun toExperimentalContinuationInterceptor (Lkotlin/coroutines/ContinuationInterceptor;)Lkotlin/coroutines/experimental/ContinuationInterceptor;
public static final fun toExperimentalCoroutineContext (Lkotlin/coroutines/CoroutineContext;)Lkotlin/coroutines/experimental/CoroutineContext;
}
@@ -2774,141 +2774,6 @@ public final class kotlin/coroutines/SafeContinuation : kotlin/coroutines/Contin
public fun toString ()Ljava/lang/String;
}
public abstract class kotlin/coroutines/experimental/AbstractCoroutineContextElement : kotlin/coroutines/experimental/CoroutineContext$Element {
public fun <init> (Lkotlin/coroutines/experimental/CoroutineContext$Key;)V
public fun fold (Ljava/lang/Object;Lkotlin/jvm/functions/Function2;)Ljava/lang/Object;
public fun get (Lkotlin/coroutines/experimental/CoroutineContext$Key;)Lkotlin/coroutines/experimental/CoroutineContext$Element;
public fun getKey ()Lkotlin/coroutines/experimental/CoroutineContext$Key;
public fun minusKey (Lkotlin/coroutines/experimental/CoroutineContext$Key;)Lkotlin/coroutines/experimental/CoroutineContext;
public fun plus (Lkotlin/coroutines/experimental/CoroutineContext;)Lkotlin/coroutines/experimental/CoroutineContext;
}
public abstract interface class kotlin/coroutines/experimental/Continuation {
public abstract fun getContext ()Lkotlin/coroutines/experimental/CoroutineContext;
public abstract fun resume (Ljava/lang/Object;)V
public abstract fun resumeWithException (Ljava/lang/Throwable;)V
}
public abstract interface class kotlin/coroutines/experimental/ContinuationInterceptor : kotlin/coroutines/experimental/CoroutineContext$Element {
public static final field Key Lkotlin/coroutines/experimental/ContinuationInterceptor$Key;
public abstract fun interceptContinuation (Lkotlin/coroutines/experimental/Continuation;)Lkotlin/coroutines/experimental/Continuation;
}
public final class kotlin/coroutines/experimental/ContinuationInterceptor$DefaultImpls {
public static fun fold (Lkotlin/coroutines/experimental/ContinuationInterceptor;Ljava/lang/Object;Lkotlin/jvm/functions/Function2;)Ljava/lang/Object;
public static fun get (Lkotlin/coroutines/experimental/ContinuationInterceptor;Lkotlin/coroutines/experimental/CoroutineContext$Key;)Lkotlin/coroutines/experimental/CoroutineContext$Element;
public static fun minusKey (Lkotlin/coroutines/experimental/ContinuationInterceptor;Lkotlin/coroutines/experimental/CoroutineContext$Key;)Lkotlin/coroutines/experimental/CoroutineContext;
public static fun plus (Lkotlin/coroutines/experimental/ContinuationInterceptor;Lkotlin/coroutines/experimental/CoroutineContext;)Lkotlin/coroutines/experimental/CoroutineContext;
}
public final class kotlin/coroutines/experimental/ContinuationInterceptor$Key : kotlin/coroutines/experimental/CoroutineContext$Key {
}
public abstract interface class kotlin/coroutines/experimental/CoroutineContext {
public abstract fun fold (Ljava/lang/Object;Lkotlin/jvm/functions/Function2;)Ljava/lang/Object;
public abstract fun get (Lkotlin/coroutines/experimental/CoroutineContext$Key;)Lkotlin/coroutines/experimental/CoroutineContext$Element;
public abstract fun minusKey (Lkotlin/coroutines/experimental/CoroutineContext$Key;)Lkotlin/coroutines/experimental/CoroutineContext;
public abstract fun plus (Lkotlin/coroutines/experimental/CoroutineContext;)Lkotlin/coroutines/experimental/CoroutineContext;
}
public final class kotlin/coroutines/experimental/CoroutineContext$DefaultImpls {
public static fun plus (Lkotlin/coroutines/experimental/CoroutineContext;Lkotlin/coroutines/experimental/CoroutineContext;)Lkotlin/coroutines/experimental/CoroutineContext;
}
public abstract interface class kotlin/coroutines/experimental/CoroutineContext$Element : kotlin/coroutines/experimental/CoroutineContext {
public abstract fun fold (Ljava/lang/Object;Lkotlin/jvm/functions/Function2;)Ljava/lang/Object;
public abstract fun get (Lkotlin/coroutines/experimental/CoroutineContext$Key;)Lkotlin/coroutines/experimental/CoroutineContext$Element;
public abstract fun getKey ()Lkotlin/coroutines/experimental/CoroutineContext$Key;
public abstract fun minusKey (Lkotlin/coroutines/experimental/CoroutineContext$Key;)Lkotlin/coroutines/experimental/CoroutineContext;
}
public final class kotlin/coroutines/experimental/CoroutineContext$Element$DefaultImpls {
public static fun fold (Lkotlin/coroutines/experimental/CoroutineContext$Element;Ljava/lang/Object;Lkotlin/jvm/functions/Function2;)Ljava/lang/Object;
public static fun get (Lkotlin/coroutines/experimental/CoroutineContext$Element;Lkotlin/coroutines/experimental/CoroutineContext$Key;)Lkotlin/coroutines/experimental/CoroutineContext$Element;
public static fun minusKey (Lkotlin/coroutines/experimental/CoroutineContext$Element;Lkotlin/coroutines/experimental/CoroutineContext$Key;)Lkotlin/coroutines/experimental/CoroutineContext;
public static fun plus (Lkotlin/coroutines/experimental/CoroutineContext$Element;Lkotlin/coroutines/experimental/CoroutineContext;)Lkotlin/coroutines/experimental/CoroutineContext;
}
public abstract interface class kotlin/coroutines/experimental/CoroutineContext$Key {
}
public final class kotlin/coroutines/experimental/CoroutinesKt {
public static final fun createCoroutine (Lkotlin/jvm/functions/Function1;Lkotlin/coroutines/experimental/Continuation;)Lkotlin/coroutines/experimental/Continuation;
public static final fun createCoroutine (Lkotlin/jvm/functions/Function2;Ljava/lang/Object;Lkotlin/coroutines/experimental/Continuation;)Lkotlin/coroutines/experimental/Continuation;
public static final fun startCoroutine (Lkotlin/jvm/functions/Function1;Lkotlin/coroutines/experimental/Continuation;)V
public static final fun startCoroutine (Lkotlin/jvm/functions/Function2;Ljava/lang/Object;Lkotlin/coroutines/experimental/Continuation;)V
public static final fun suspendCoroutine (Lkotlin/jvm/functions/Function1;Lkotlin/coroutines/experimental/Continuation;)Ljava/lang/Object;
}
public final class kotlin/coroutines/experimental/EmptyCoroutineContext : kotlin/coroutines/experimental/CoroutineContext {
public static final field INSTANCE Lkotlin/coroutines/experimental/EmptyCoroutineContext;
public fun fold (Ljava/lang/Object;Lkotlin/jvm/functions/Function2;)Ljava/lang/Object;
public fun get (Lkotlin/coroutines/experimental/CoroutineContext$Key;)Lkotlin/coroutines/experimental/CoroutineContext$Element;
public fun hashCode ()I
public fun minusKey (Lkotlin/coroutines/experimental/CoroutineContext$Key;)Lkotlin/coroutines/experimental/CoroutineContext;
public fun plus (Lkotlin/coroutines/experimental/CoroutineContext;)Lkotlin/coroutines/experimental/CoroutineContext;
public fun toString ()Ljava/lang/String;
}
public abstract interface annotation class kotlin/coroutines/experimental/RestrictsSuspension : java/lang/annotation/Annotation {
}
public final class kotlin/coroutines/experimental/SafeContinuation : kotlin/coroutines/experimental/Continuation {
public static final field Companion Lkotlin/coroutines/experimental/SafeContinuation$Companion;
public fun <init> (Lkotlin/coroutines/experimental/Continuation;)V
public fun getContext ()Lkotlin/coroutines/experimental/CoroutineContext;
public final fun getResult ()Ljava/lang/Object;
public fun resume (Ljava/lang/Object;)V
public fun resumeWithException (Ljava/lang/Throwable;)V
}
public final class kotlin/coroutines/experimental/SafeContinuation$Companion {
}
public abstract class kotlin/coroutines/experimental/SequenceBuilder {
public abstract fun yield (Ljava/lang/Object;Lkotlin/coroutines/experimental/Continuation;)Ljava/lang/Object;
public final fun yieldAll (Ljava/lang/Iterable;Lkotlin/coroutines/experimental/Continuation;)Ljava/lang/Object;
public abstract fun yieldAll (Ljava/util/Iterator;Lkotlin/coroutines/experimental/Continuation;)Ljava/lang/Object;
public final fun yieldAll (Lkotlin/sequences/Sequence;Lkotlin/coroutines/experimental/Continuation;)Ljava/lang/Object;
}
public final class kotlin/coroutines/experimental/SequenceBuilderKt {
public static final fun buildIterator (Lkotlin/jvm/functions/Function2;)Ljava/util/Iterator;
public static final fun buildSequence (Lkotlin/jvm/functions/Function2;)Lkotlin/sequences/Sequence;
}
public final class kotlin/coroutines/experimental/intrinsics/IntrinsicsKt {
public static final fun createCoroutineUnchecked (Lkotlin/jvm/functions/Function1;Lkotlin/coroutines/experimental/Continuation;)Lkotlin/coroutines/experimental/Continuation;
public static final fun createCoroutineUnchecked (Lkotlin/jvm/functions/Function2;Ljava/lang/Object;Lkotlin/coroutines/experimental/Continuation;)Lkotlin/coroutines/experimental/Continuation;
public static final fun getCOROUTINE_SUSPENDED ()Ljava/lang/Object;
}
public abstract class kotlin/coroutines/experimental/jvm/internal/CoroutineImpl : kotlin/jvm/internal/Lambda, kotlin/coroutines/experimental/Continuation {
protected field completion Lkotlin/coroutines/experimental/Continuation;
protected field label I
public fun <init> (ILkotlin/coroutines/experimental/Continuation;)V
public fun create (Ljava/lang/Object;Lkotlin/coroutines/experimental/Continuation;)Lkotlin/coroutines/experimental/Continuation;
public fun create (Lkotlin/coroutines/experimental/Continuation;)Lkotlin/coroutines/experimental/Continuation;
protected abstract fun doResume (Ljava/lang/Object;Ljava/lang/Throwable;)Ljava/lang/Object;
public fun getContext ()Lkotlin/coroutines/experimental/CoroutineContext;
public final fun getFacade ()Lkotlin/coroutines/experimental/Continuation;
public fun resume (Ljava/lang/Object;)V
public fun resumeWithException (Ljava/lang/Throwable;)V
}
public final class kotlin/coroutines/experimental/jvm/internal/CoroutineIntrinsics {
public static final fun normalizeContinuation (Lkotlin/coroutines/experimental/Continuation;)Lkotlin/coroutines/experimental/Continuation;
}
public final class kotlin/coroutines/experimental/migration/CoroutinesMigrationKt {
public static final fun toContinuation (Lkotlin/coroutines/experimental/Continuation;)Lkotlin/coroutines/Continuation;
public static final fun toContinuationInterceptor (Lkotlin/coroutines/experimental/ContinuationInterceptor;)Lkotlin/coroutines/ContinuationInterceptor;
public static final fun toCoroutineContext (Lkotlin/coroutines/experimental/CoroutineContext;)Lkotlin/coroutines/CoroutineContext;
public static final fun toExperimentalContinuation (Lkotlin/coroutines/Continuation;)Lkotlin/coroutines/experimental/Continuation;
public static final fun toExperimentalContinuationInterceptor (Lkotlin/coroutines/ContinuationInterceptor;)Lkotlin/coroutines/experimental/ContinuationInterceptor;
public static final fun toExperimentalCoroutineContext (Lkotlin/coroutines/CoroutineContext;)Lkotlin/coroutines/experimental/CoroutineContext;
}
public final class kotlin/coroutines/intrinsics/CoroutineSingletons : java/lang/Enum {
public static final field COROUTINE_SUSPENDED Lkotlin/coroutines/intrinsics/CoroutineSingletons;
public static final field RESUMED Lkotlin/coroutines/intrinsics/CoroutineSingletons;
@@ -33,6 +33,10 @@ class RuntimePublicAPITest {
snapshotAPIAndCompare("../../reflect/api/build/libs", "kotlin-reflect-api(?!-[-a-z]+)", nonPublicPackages = listOf("kotlin.reflect.jvm.internal"))
}
@Test fun kotlinCoroutinesExperimentalCompat() {
snapshotAPIAndCompare("../../stdlib/coroutines-experimental/build/libs", "kotlin-coroutines-experimental-compat")
}
private fun snapshotAPIAndCompare(
basePath: String,
+2
View File
@@ -73,6 +73,7 @@ val distLibraryProjects = listOfNotNull(
":kotlin-annotations-android",
":kotlin-annotations-jvm",
":kotlin-ant",
":kotlin-coroutines-experimental-compat",
":kotlin-daemon",
":kotlin-daemon-client",
":kotlin-daemon-client-new",
@@ -108,6 +109,7 @@ val distCompilerPluginProjects = listOf(
val distSourcesProjects = listOfNotNull(
":kotlin-annotations-jvm",
":kotlin-coroutines-experimental-compat",
":kotlin-script-runtime",
":kotlin-test:kotlin-test-js".takeIf { !kotlinBuildProperties.isInJpsBuildIdeaSync },
":kotlin-test:kotlin-test-junit",
+2
View File
@@ -188,6 +188,7 @@ include ":kotlin-build-common",
":plugins:uast-kotlin-idea",
":plugins:annotation-based-compiler-plugins-ide-support",
":kotlin-script-runtime",
":kotlin-coroutines-experimental-compat",
":kotlin-test",
":kotlin-test:kotlin-test-common",
":kotlin-test:kotlin-test-annotations-common",
@@ -359,6 +360,7 @@ if (buildProperties.inJpsBuildIdeaSync) {
rootProject.name = "kotlin"
project(':kotlin-script-runtime').projectDir = "$rootDir/libraries/tools/script-runtime" as File
project(":kotlin-coroutines-experimental-compat").projectDir = "$rootDir/libraries/stdlib/coroutines-experimental" as File
project(':kotlin-test').projectDir = "$rootDir/libraries/kotlin.test" as File
project(':kotlin-test:kotlin-test-common').projectDir = "$rootDir/libraries/kotlin.test/common" as File
project(':kotlin-test:kotlin-test-annotations-common').projectDir = "$rootDir/libraries/kotlin.test/annotations-common" as File