Skip to content

Commit e3d265d

Browse files
committed
Remove obsolete usages of @OptIn(ExperimentalSerializationApi::class)
They were connected with SerialDescriptor, which is @SubclassOptInRequired since 1.8.0
1 parent 412a00f commit e3d265d

File tree

6 files changed

+1
-11
lines changed

6 files changed

+1
-11
lines changed

core/commonMain/src/kotlinx/serialization/descriptors/ContextAware.kt

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -86,7 +86,6 @@ internal fun SerialDescriptor.withContext(context: KClass<*>): SerialDescriptor
8686
* Descriptor that captures [kClass] and allows retrieving additional runtime information,
8787
* if proper [SerializersModule] is provided.
8888
*/
89-
@OptIn(ExperimentalSerializationApi::class)
9089
private class ContextDescriptor(
9190
private val original: SerialDescriptor,
9291
@JvmField val kClass: KClass<*>

core/commonMain/src/kotlinx/serialization/descriptors/SerialDescriptors.kt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -354,7 +354,6 @@ public inline fun <reified T> ClassSerialDescriptorBuilder.element(
354354
element(elementName, descriptor, annotations, isOptional)
355355
}
356356

357-
@OptIn(ExperimentalSerializationApi::class)
358357
internal class SerialDescriptorImpl(
359358
override val serialName: String,
360359
override val kind: SerialKind,
@@ -363,6 +362,7 @@ internal class SerialDescriptorImpl(
363362
builder: ClassSerialDescriptorBuilder
364363
) : SerialDescriptor, CachedNames {
365364

365+
@OptIn(ExperimentalSerializationApi::class)
366366
override val annotations: List<Annotation> = builder.annotations
367367
override val serialNames: Set<String> = builder.elementNames.toHashSet()
368368

core/commonMain/src/kotlinx/serialization/internal/CollectionDescriptors.kt

Lines changed: 0 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,14 +1,11 @@
11
/*
22
* Copyright 2017-2020 JetBrains s.r.o. Use of this source code is governed by the Apache 2.0 license.
33
*/
4-
@file:OptIn(ExperimentalSerializationApi::class)
5-
64
package kotlinx.serialization.internal
75

86
import kotlinx.serialization.*
97
import kotlinx.serialization.descriptors.*
108

11-
@ExperimentalSerializationApi
129
internal sealed class ListLikeDescriptor(val elementDescriptor: SerialDescriptor) : SerialDescriptor {
1310
override val kind: SerialKind get() = StructureKind.LIST
1411
override val elementsCount: Int = 1
@@ -107,7 +104,6 @@ internal const val HASH_MAP_NAME = "kotlin.collections.HashMap"
107104
*
108105
* Can be obtained from corresponding serializers (e.g. [ByteArraySerializer.descriptor])
109106
*/
110-
@OptIn(ExperimentalSerializationApi::class)
111107
internal class PrimitiveArrayDescriptor internal constructor(
112108
primitive: SerialDescriptor
113109
) : ListLikeDescriptor(primitive) {

core/commonMain/src/kotlinx/serialization/internal/NullableSerializer.kt

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -43,7 +43,6 @@ internal class NullableSerializer<T : Any>(private val serializer: KSerializer<T
4343
}
4444
}
4545

46-
@OptIn(ExperimentalSerializationApi::class)
4746
internal class SerialDescriptorForNullable(
4847
internal val original: SerialDescriptor
4948
) : SerialDescriptor by original, CachedNames {

core/commonMain/src/kotlinx/serialization/internal/PluginGeneratedSerialDescriptor.kt

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,6 @@ import kotlinx.serialization.encoding.CompositeDecoder.Companion.UNKNOWN_NAME
1313
* Implementation that plugin uses to implement descriptors for auto-generated serializers.
1414
*/
1515
@PublishedApi
16-
@OptIn(ExperimentalSerializationApi::class)
1716
internal open class PluginGeneratedSerialDescriptor(
1817
override val serialName: String,
1918
private val generatedSerializer: GeneratedSerializer<*>? = null,

formats/json/commonMain/src/kotlinx/serialization/json/JsonElementSerializers.kt

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -148,7 +148,6 @@ private object JsonLiteralSerializer : KSerializer<JsonLiteral> {
148148
internal object JsonObjectSerializer : KSerializer<JsonObject> {
149149

150150
private object JsonObjectDescriptor : SerialDescriptor by MapSerializer(String.serializer(), JsonElementSerializer).descriptor {
151-
@ExperimentalSerializationApi
152151
override val serialName: String = "kotlinx.serialization.json.JsonObject"
153152
}
154153

@@ -173,7 +172,6 @@ internal object JsonObjectSerializer : KSerializer<JsonObject> {
173172
internal object JsonArraySerializer : KSerializer<JsonArray> {
174173

175174
private object JsonArrayDescriptor : SerialDescriptor by ListSerializer(JsonElementSerializer).descriptor {
176-
@ExperimentalSerializationApi
177175
override val serialName: String = "kotlinx.serialization.json.JsonArray"
178176
}
179177

@@ -215,7 +213,6 @@ internal fun Encoder.asJsonEncoder() = this as? JsonEncoder
215213
* Returns serial descriptor that delegates all the calls to descriptor returned by [deferred] block.
216214
* Used to resolve cyclic dependencies between recursive serializable structures.
217215
*/
218-
@OptIn(ExperimentalSerializationApi::class)
219216
private fun defer(deferred: () -> SerialDescriptor): SerialDescriptor = object : SerialDescriptor {
220217

221218
private val original: SerialDescriptor by lazy(deferred)

0 commit comments

Comments
 (0)