diff --git a/libraries/stdlib/api/js/kotlin.experimental.kt b/libraries/stdlib/api/js/kotlin.experimental.kt index a30f01b72dc..3e73ef25b78 100644 --- a/libraries/stdlib/api/js/kotlin.experimental.kt +++ b/libraries/stdlib/api/js/kotlin.experimental.kt @@ -30,6 +30,15 @@ public inline infix fun kotlin.Byte.xor(other: kotlin.Byte): kotlin.Byte @kotlin.internal.InlineOnly public inline infix fun kotlin.Short.xor(other: kotlin.Short): kotlin.Short +@kotlin.RequiresOptIn(level = Level.ERROR) +@kotlin.annotation.Retention(value = AnnotationRetention.BINARY) +@kotlin.annotation.Target(allowedTargets = {AnnotationTarget.CLASS, AnnotationTarget.ANNOTATION_CLASS, AnnotationTarget.PROPERTY, AnnotationTarget.FIELD, AnnotationTarget.LOCAL_VARIABLE, AnnotationTarget.VALUE_PARAMETER, AnnotationTarget.CONSTRUCTOR, AnnotationTarget.FUNCTION, AnnotationTarget.PROPERTY_GETTER, AnnotationTarget.PROPERTY_SETTER, AnnotationTarget.TYPEALIAS}) +@kotlin.annotation.MustBeDocumented +@kotlin.SinceKotlin(version = "1.9") +public final annotation class ExperimentalNativeApi : kotlin.Annotation { + public constructor ExperimentalNativeApi() +} + @kotlin.RequiresOptIn @kotlin.annotation.Target(allowedTargets = {AnnotationTarget.ANNOTATION_CLASS}) @kotlin.annotation.Retention(value = AnnotationRetention.BINARY) diff --git a/kotlin-native/runtime/src/main/kotlin/kotlin/ExperimentalNativeApi.kt b/libraries/stdlib/src/kotlin/experimental/ExperimentalNativeApi.kt similarity index 100% rename from kotlin-native/runtime/src/main/kotlin/kotlin/ExperimentalNativeApi.kt rename to libraries/stdlib/src/kotlin/experimental/ExperimentalNativeApi.kt diff --git a/libraries/stdlib/wasm/src/kotlin/text/regex/ExperimentalNativeApi.kt b/libraries/stdlib/wasm/src/kotlin/text/regex/ExperimentalNativeApi.kt deleted file mode 100644 index 7f8707a149a..00000000000 --- a/libraries/stdlib/wasm/src/kotlin/text/regex/ExperimentalNativeApi.kt +++ /dev/null @@ -1,35 +0,0 @@ -/* - * Copyright 2010-2023 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 kotlin.experimental - -import kotlin.annotation.AnnotationTarget.* - -/** - * This annotation marks the Kotlin/Native-only standard library API that is considered experimental and is not subject to the - * [general compatibility guarantees](https://kotlinlang.org/docs/reference/evolution/components-stability.html) given for the standard library: - * the behavior of such API may be changed or the API may be removed completely in any further release. - * - * This is an internal copy of the public K/N annotation. - * It is used to [OptIn] experimental K/N API used in the shared native-wasm directory. - */ -@RequiresOptIn(level = RequiresOptIn.Level.ERROR) -@Retention(AnnotationRetention.BINARY) -@Target( - AnnotationTarget.CLASS, - AnnotationTarget.ANNOTATION_CLASS, - AnnotationTarget.PROPERTY, - AnnotationTarget.FIELD, - AnnotationTarget.LOCAL_VARIABLE, - AnnotationTarget.VALUE_PARAMETER, - AnnotationTarget.CONSTRUCTOR, - AnnotationTarget.FUNCTION, - AnnotationTarget.PROPERTY_GETTER, - AnnotationTarget.PROPERTY_SETTER, - AnnotationTarget.TYPEALIAS -) -@MustBeDocumented -@SinceKotlin("1.9") -internal annotation class ExperimentalNativeApi \ No newline at end of file diff --git a/libraries/tools/binary-compatibility-validator/reference-public-api/kotlin-stdlib-runtime-merged.txt b/libraries/tools/binary-compatibility-validator/reference-public-api/kotlin-stdlib-runtime-merged.txt index 29d7dfc97ac..1522647fb6b 100644 --- a/libraries/tools/binary-compatibility-validator/reference-public-api/kotlin-stdlib-runtime-merged.txt +++ b/libraries/tools/binary-compatibility-validator/reference-public-api/kotlin-stdlib-runtime-merged.txt @@ -3114,6 +3114,9 @@ public final class kotlin/enums/EnumEntriesKt { public static final fun enumEntries ([Ljava/lang/Enum;)Lkotlin/enums/EnumEntries; } +public abstract interface annotation class kotlin/experimental/ExperimentalNativeApi : java/lang/annotation/Annotation { +} + public abstract interface annotation class kotlin/experimental/ExperimentalObjCName : java/lang/annotation/Annotation { }