Deprecation and binary compatibility (#861)
* Deprecation cycle
* Remove declarations that were deprecated and don't have any real use or migration
* Level.WARNING -> Level.ERROR level where possible
* Introduce binary compatibility validator to keep track of the API
diff --git a/build.gradle b/build.gradle
index 6c7dce5..ed4b197 100644
--- a/build.gradle
+++ b/build.gradle
@@ -71,6 +71,7 @@
classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version"
classpath "org.jetbrains.kotlin:kotlin-serialization:$kotlin_version"
classpath "org.jetbrains.dokka:dokka-gradle-plugin:$dokka_version"
+ classpath "org.jetbrains.kotlinx:binary-compatibility-validator:$validator_version"
classpath 'com.google.protobuf:protobuf-gradle-plugin:0.8.8'
@@ -83,7 +84,11 @@
// To make it visible for compilerVersion.gradle
ext.compilerVersion = org.jetbrains.kotlin.config.KotlinCompilerVersion.VERSION
+apply plugin: 'binary-compatibility-validator'
+apiValidation {
+ ignoredProjects += ["benchmark", "kotlinx-serialization"]
+}
allprojects {
group 'org.jetbrains.kotlinx'
diff --git a/formats/cbor/api/kotlinx-serialization-cbor.api b/formats/cbor/api/kotlinx-serialization-cbor.api
new file mode 100644
index 0000000..c086ba5
--- /dev/null
+++ b/formats/cbor/api/kotlinx-serialization-cbor.api
@@ -0,0 +1,21 @@
+public final class kotlinx/serialization/cbor/Cbor : kotlinx/serialization/BinaryFormat {
+ public static final field Default Lkotlinx/serialization/cbor/Cbor$Default;
+ public fun <init> ()V
+ public fun <init> (ZLkotlinx/serialization/modules/SerialModule;)V
+ public synthetic fun <init> (ZLkotlinx/serialization/modules/SerialModule;ILkotlin/jvm/internal/DefaultConstructorMarker;)V
+ public fun dump (Lkotlinx/serialization/SerializationStrategy;Ljava/lang/Object;)[B
+ public fun getContext ()Lkotlinx/serialization/modules/SerialModule;
+ public final fun getEncodeDefaults ()Z
+ public fun load (Lkotlinx/serialization/DeserializationStrategy;[B)Ljava/lang/Object;
+}
+
+public final class kotlinx/serialization/cbor/Cbor$Default : kotlinx/serialization/BinaryFormat {
+ public fun dump (Lkotlinx/serialization/SerializationStrategy;Ljava/lang/Object;)[B
+ public fun getContext ()Lkotlinx/serialization/modules/SerialModule;
+ public fun load (Lkotlinx/serialization/DeserializationStrategy;[B)Ljava/lang/Object;
+}
+
+public final class kotlinx/serialization/cbor/CborDecodingException : kotlinx/serialization/SerializationException {
+ public fun <init> (Ljava/lang/String;I)V
+}
+
diff --git a/formats/config/api/kotlinx-serialization-runtime-configparser.api b/formats/config/api/kotlinx-serialization-runtime-configparser.api
new file mode 100644
index 0000000..16a1f9c
--- /dev/null
+++ b/formats/config/api/kotlinx-serialization-runtime-configparser.api
@@ -0,0 +1,26 @@
+public final class kotlinx/serialization/config/ConfigParser : kotlinx/serialization/SerialFormat {
+ public static final field Companion Lkotlinx/serialization/config/ConfigParser$Companion;
+ public fun <init> ()V
+ public fun <init> (Lkotlinx/serialization/config/ConfigParserConfiguration;Lkotlinx/serialization/modules/SerialModule;)V
+ public synthetic fun <init> (Lkotlinx/serialization/config/ConfigParserConfiguration;Lkotlinx/serialization/modules/SerialModule;ILkotlin/jvm/internal/DefaultConstructorMarker;)V
+ public fun getContext ()Lkotlinx/serialization/modules/SerialModule;
+ public final fun parse (Lcom/typesafe/config/Config;Lkotlinx/serialization/DeserializationStrategy;)Ljava/lang/Object;
+}
+
+public final class kotlinx/serialization/config/ConfigParser$Companion {
+ public final fun parse (Lcom/typesafe/config/Config;Lkotlinx/serialization/DeserializationStrategy;)Ljava/lang/Object;
+}
+
+public final class kotlinx/serialization/config/ConfigParserConfiguration {
+ public fun <init> ()V
+ public fun <init> (Z)V
+ public synthetic fun <init> (ZILkotlin/jvm/internal/DefaultConstructorMarker;)V
+ public final fun component1 ()Z
+ public final fun copy (Z)Lkotlinx/serialization/config/ConfigParserConfiguration;
+ public static synthetic fun copy$default (Lkotlinx/serialization/config/ConfigParserConfiguration;ZILjava/lang/Object;)Lkotlinx/serialization/config/ConfigParserConfiguration;
+ public fun equals (Ljava/lang/Object;)Z
+ public final fun getUseConfigNamingConvention ()Z
+ public fun hashCode ()I
+ public fun toString ()Ljava/lang/String;
+}
+
diff --git a/formats/config/src/main/kotlin/org/jetbrains/kotlinx/serialization/config/Migrations.kt b/formats/config/src/main/kotlin/org/jetbrains/kotlinx/serialization/config/Migrations.kt
index 6c003a2..01ebf4e 100644
--- a/formats/config/src/main/kotlin/org/jetbrains/kotlinx/serialization/config/Migrations.kt
+++ b/formats/config/src/main/kotlin/org/jetbrains/kotlinx/serialization/config/Migrations.kt
@@ -8,8 +8,8 @@
private const val pkg = "kotlinx.serialization.config"
private const val message = "Moved to $pkg package"
-@Deprecated(message, ReplaceWith("ConfigParserConfiguration", pkg), level = DeprecationLevel.WARNING)
+@Deprecated(message, ReplaceWith("ConfigParserConfiguration", pkg), level = DeprecationLevel.ERROR)
typealias ConfigParserConfiguration = kotlinx.serialization.config.ConfigParserConfiguration
-@Deprecated(message, ReplaceWith("ConfigParser", pkg), level = DeprecationLevel.WARNING)
+@Deprecated(message, ReplaceWith("ConfigParser", pkg), level = DeprecationLevel.ERROR)
typealias ConfigParser = kotlinx.serialization.config.ConfigParser
diff --git a/formats/properties/api/kotlinx-serialization-properties.api b/formats/properties/api/kotlinx-serialization-properties.api
new file mode 100644
index 0000000..f96ca87
--- /dev/null
+++ b/formats/properties/api/kotlinx-serialization-properties.api
@@ -0,0 +1,20 @@
+public final class kotlinx/serialization/Properties : kotlinx/serialization/SerialFormat {
+ public static final field Default Lkotlinx/serialization/Properties$Default;
+ public fun <init> ()V
+ public fun <init> (Lkotlinx/serialization/modules/SerialModule;)V
+ public synthetic fun <init> (Lkotlinx/serialization/modules/SerialModule;ILkotlin/jvm/internal/DefaultConstructorMarker;)V
+ public fun getContext ()Lkotlinx/serialization/modules/SerialModule;
+ public final fun load (Lkotlinx/serialization/DeserializationStrategy;Ljava/util/Map;)Ljava/lang/Object;
+ public final fun loadNullable (Lkotlinx/serialization/DeserializationStrategy;Ljava/util/Map;)Ljava/lang/Object;
+ public final fun store (Lkotlinx/serialization/SerializationStrategy;Ljava/lang/Object;)Ljava/util/Map;
+ public final fun storeNullable (Lkotlinx/serialization/SerializationStrategy;Ljava/lang/Object;)Ljava/util/Map;
+}
+
+public final class kotlinx/serialization/Properties$Default : kotlinx/serialization/SerialFormat {
+ public fun getContext ()Lkotlinx/serialization/modules/SerialModule;
+ public final fun load (Lkotlinx/serialization/DeserializationStrategy;Ljava/util/Map;)Ljava/lang/Object;
+ public final fun loadNullable (Lkotlinx/serialization/DeserializationStrategy;Ljava/util/Map;)Ljava/lang/Object;
+ public final fun store (Lkotlinx/serialization/SerializationStrategy;Ljava/lang/Object;)Ljava/util/Map;
+ public final fun storeNullable (Lkotlinx/serialization/SerializationStrategy;Ljava/lang/Object;)Ljava/util/Map;
+}
+
diff --git a/formats/protobuf/api/kotlinx-serialization-protobuf.api b/formats/protobuf/api/kotlinx-serialization-protobuf.api
new file mode 100644
index 0000000..9b72dc9
--- /dev/null
+++ b/formats/protobuf/api/kotlinx-serialization-protobuf.api
@@ -0,0 +1,47 @@
+public final class kotlinx/serialization/protobuf/ProtoBuf : kotlinx/serialization/BinaryFormat {
+ public static final field Default Lkotlinx/serialization/protobuf/ProtoBuf$Default;
+ public fun <init> ()V
+ public fun <init> (ZLkotlinx/serialization/modules/SerialModule;)V
+ public synthetic fun <init> (ZLkotlinx/serialization/modules/SerialModule;ILkotlin/jvm/internal/DefaultConstructorMarker;)V
+ public fun dump (Lkotlinx/serialization/SerializationStrategy;Ljava/lang/Object;)[B
+ public fun getContext ()Lkotlinx/serialization/modules/SerialModule;
+ public final fun getEncodeDefaults ()Z
+ public fun load (Lkotlinx/serialization/DeserializationStrategy;[B)Ljava/lang/Object;
+}
+
+public final class kotlinx/serialization/protobuf/ProtoBuf$Default : kotlinx/serialization/BinaryFormat {
+ public fun dump (Lkotlinx/serialization/SerializationStrategy;Ljava/lang/Object;)[B
+ public fun getContext ()Lkotlinx/serialization/modules/SerialModule;
+ public fun load (Lkotlinx/serialization/DeserializationStrategy;[B)Ljava/lang/Object;
+}
+
+public abstract interface annotation class kotlinx/serialization/protobuf/ProtoId : java/lang/annotation/Annotation {
+ public abstract fun id ()I
+}
+
+public final class kotlinx/serialization/protobuf/ProtoId$Impl : kotlinx/serialization/protobuf/ProtoId {
+ public fun <init> (I)V
+ public final fun id ()I
+}
+
+public final class kotlinx/serialization/protobuf/ProtoNumberType : java/lang/Enum {
+ public static final field DEFAULT Lkotlinx/serialization/protobuf/ProtoNumberType;
+ public static final field FIXED Lkotlinx/serialization/protobuf/ProtoNumberType;
+ public static final field SIGNED Lkotlinx/serialization/protobuf/ProtoNumberType;
+ public static fun valueOf (Ljava/lang/String;)Lkotlinx/serialization/protobuf/ProtoNumberType;
+ public static fun values ()[Lkotlinx/serialization/protobuf/ProtoNumberType;
+}
+
+public abstract interface annotation class kotlinx/serialization/protobuf/ProtoType : java/lang/annotation/Annotation {
+ public abstract fun type ()Lkotlinx/serialization/protobuf/ProtoNumberType;
+}
+
+public final class kotlinx/serialization/protobuf/ProtoType$Impl : kotlinx/serialization/protobuf/ProtoType {
+ public fun <init> (Lkotlinx/serialization/protobuf/ProtoNumberType;)V
+ public final fun type ()Lkotlinx/serialization/protobuf/ProtoNumberType;
+}
+
+public final class kotlinx/serialization/protobuf/ProtobufDecodingException : kotlinx/serialization/SerializationException {
+ public fun <init> (Ljava/lang/String;)V
+}
+
diff --git a/gradle.properties b/gradle.properties
index 8622d8b..cd844e8 100644
--- a/gradle.properties
+++ b/gradle.properties
@@ -16,6 +16,7 @@
jackson_version=2.10.0.pr1
dokka_version=0.10.1
native.deploy=false
+validator_version=0.2.3
kotlin.mpp.enableGranularSourceSetsMetadata=true
kotlin.mpp.enableCompatibilityMetadataVariant=true
diff --git a/integration-test/src/commonTest/kotlin/sample/JsonTest.kt b/integration-test/src/commonTest/kotlin/sample/JsonTest.kt
index f71a31e..10d67de 100644
--- a/integration-test/src/commonTest/kotlin/sample/JsonTest.kt
+++ b/integration-test/src/commonTest/kotlin/sample/JsonTest.kt
@@ -15,7 +15,15 @@
private val originalData = Data("Hello")
private val originalString = """{"s":"Hello","box":{"boxed":42},"boxes":{"desc":"boxes","boxes":[{"boxed":"foo"},{"boxed":"bar"}]},"m":{}}"""
-
+ private val nonstrict: Json = Json(
+ JsonConfiguration(
+ isLenient = true,
+ ignoreUnknownKeys = true,
+ serializeSpecialFloatingPointValues = true,
+ useArrayPolymorphism = true
+ )
+ )
+
@Test
fun testStringForm() {
val str = Json.stringify(Data.serializer(), originalData)
@@ -211,20 +219,20 @@
@Test
fun geoTest() {
- val deser = Json.nonstrict.parse(GeoCoordinate.serializer(), """{"latitude":1.0,"longitude":1.0}""")
+ val deser = nonstrict.parse(GeoCoordinate.serializer(), """{"latitude":1.0,"longitude":1.0}""")
assertEquals(GeoCoordinate(1.0, 1.0), deser)
}
@Test
fun geoTest2() {
- val deser = Json.nonstrict.parse(GeoCoordinate.serializer(), """{}""")
+ val deser = nonstrict.parse(GeoCoordinate.serializer(), """{}""")
assertEquals(GeoCoordinate(0.0, 0.0), deser)
}
@Test
fun geoTestValidation() {
assertFailsWith<IllegalArgumentException> {
- Json.nonstrict.parse(GeoCoordinate.serializer(), """{"latitude":-1.0,"longitude":1.0}""")
+ nonstrict.parse(GeoCoordinate.serializer(), """{"latitude":-1.0,"longitude":1.0}""")
}
}
}
@@ -233,7 +241,7 @@
expected: String,
original: T,
serializer: KSerializer<T>,
- format: StringFormat = Json.plain,
+ format: StringFormat = Json,
printResult: Boolean = false
) {
val string = format.stringify(serializer, original)
diff --git a/runtime/api/kotlinx-serialization-runtime.api b/runtime/api/kotlinx-serialization-runtime.api
new file mode 100644
index 0000000..8a5fc00
--- /dev/null
+++ b/runtime/api/kotlinx-serialization-runtime.api
@@ -0,0 +1,1888 @@
+public final class kotlinx/io/ByteArrayInput : kotlinx/io/Input {
+ public fun <init> ([B)V
+ public fun getAvailableBytes ()I
+ public fun read ()I
+ public fun read ([BII)I
+ public fun readString (I)Ljava/lang/String;
+ public fun readVarint32 ()I
+ public fun readVarint64 (Z)J
+}
+
+public final class kotlinx/io/ByteArrayOutput : kotlinx/io/Output {
+ public fun <init> ()V
+ public fun encodeVarint32 (I)V
+ public fun encodeVarint64 (J)V
+ public final fun size ()I
+ public final fun toByteArray ()[B
+ public fun write (I)V
+ public fun write ([BII)V
+ public fun writeInt (I)V
+ public fun writeLong (J)V
+}
+
+public abstract class kotlinx/io/Input {
+ public fun <init> ()V
+ public abstract fun getAvailableBytes ()I
+ public abstract fun read ()I
+ public abstract fun read ([BII)I
+ public abstract fun readString (I)Ljava/lang/String;
+ public abstract fun readVarint32 ()I
+ public abstract fun readVarint64 (Z)J
+}
+
+public abstract class kotlinx/io/Output {
+ public fun <init> ()V
+ public abstract fun encodeVarint32 (I)V
+ public abstract fun encodeVarint64 (J)V
+ public abstract fun write (I)V
+ public final fun write ([B)V
+ public abstract fun write ([BII)V
+ public abstract fun writeInt (I)V
+ public abstract fun writeLong (J)V
+}
+
+public abstract class kotlinx/serialization/AbstractSerialFormat : kotlinx/serialization/SerialFormat {
+ public fun <init> (Lkotlinx/serialization/modules/SerialModule;)V
+ public fun getContext ()Lkotlinx/serialization/modules/SerialModule;
+}
+
+public abstract interface class kotlinx/serialization/BinaryFormat : kotlinx/serialization/SerialFormat {
+ public abstract fun dump (Lkotlinx/serialization/SerializationStrategy;Ljava/lang/Object;)[B
+ public abstract fun load (Lkotlinx/serialization/DeserializationStrategy;[B)Ljava/lang/Object;
+}
+
+public abstract interface class kotlinx/serialization/CompositeDecoder {
+ public static final field Companion Lkotlinx/serialization/CompositeDecoder$Companion;
+ public static final field READ_ALL I
+ public static final field READ_DONE I
+ public static final field UNKNOWN_NAME I
+ public abstract fun decodeBooleanElement (Lkotlinx/serialization/SerialDescriptor;I)Z
+ public abstract fun decodeByteElement (Lkotlinx/serialization/SerialDescriptor;I)B
+ public abstract fun decodeCharElement (Lkotlinx/serialization/SerialDescriptor;I)C
+ public abstract fun decodeCollectionSize (Lkotlinx/serialization/SerialDescriptor;)I
+ public abstract fun decodeDoubleElement (Lkotlinx/serialization/SerialDescriptor;I)D
+ public abstract fun decodeElementIndex (Lkotlinx/serialization/SerialDescriptor;)I
+ public abstract fun decodeFloatElement (Lkotlinx/serialization/SerialDescriptor;I)F
+ public abstract fun decodeIntElement (Lkotlinx/serialization/SerialDescriptor;I)I
+ public abstract fun decodeLongElement (Lkotlinx/serialization/SerialDescriptor;I)J
+ public abstract fun decodeNullableSerializableElement (Lkotlinx/serialization/SerialDescriptor;ILkotlinx/serialization/DeserializationStrategy;)Ljava/lang/Object;
+ public abstract fun decodeNullableSerializableElement (Lkotlinx/serialization/SerialDescriptor;ILkotlinx/serialization/DeserializationStrategy;Ljava/lang/Object;)Ljava/lang/Object;
+ public abstract fun decodeSequentially ()Z
+ public abstract fun decodeSerializableElement (Lkotlinx/serialization/SerialDescriptor;ILkotlinx/serialization/DeserializationStrategy;)Ljava/lang/Object;
+ public abstract fun decodeSerializableElement (Lkotlinx/serialization/SerialDescriptor;ILkotlinx/serialization/DeserializationStrategy;Ljava/lang/Object;)Ljava/lang/Object;
+ public abstract fun decodeShortElement (Lkotlinx/serialization/SerialDescriptor;I)S
+ public abstract fun decodeStringElement (Lkotlinx/serialization/SerialDescriptor;I)Ljava/lang/String;
+ public abstract fun decodeUnitElement (Lkotlinx/serialization/SerialDescriptor;I)V
+ public abstract fun endStructure (Lkotlinx/serialization/SerialDescriptor;)V
+ public abstract fun getContext ()Lkotlinx/serialization/modules/SerialModule;
+ public abstract fun getUpdateMode ()Lkotlinx/serialization/UpdateMode;
+ public abstract fun updateNullableSerializableElement (Lkotlinx/serialization/SerialDescriptor;ILkotlinx/serialization/DeserializationStrategy;Ljava/lang/Object;)Ljava/lang/Object;
+ public abstract fun updateSerializableElement (Lkotlinx/serialization/SerialDescriptor;ILkotlinx/serialization/DeserializationStrategy;Ljava/lang/Object;)Ljava/lang/Object;
+}
+
+public final class kotlinx/serialization/CompositeDecoder$Companion {
+ public static final field READ_ALL I
+ public static final field READ_DONE I
+ public static final field UNKNOWN_NAME I
+}
+
+public final class kotlinx/serialization/CompositeDecoder$DefaultImpls {
+ public static fun decodeCollectionSize (Lkotlinx/serialization/CompositeDecoder;Lkotlinx/serialization/SerialDescriptor;)I
+ public static fun decodeNullableSerializableElement (Lkotlinx/serialization/CompositeDecoder;Lkotlinx/serialization/SerialDescriptor;ILkotlinx/serialization/DeserializationStrategy;)Ljava/lang/Object;
+ public static fun decodeNullableSerializableElement (Lkotlinx/serialization/CompositeDecoder;Lkotlinx/serialization/SerialDescriptor;ILkotlinx/serialization/DeserializationStrategy;Ljava/lang/Object;)Ljava/lang/Object;
+ public static synthetic fun decodeNullableSerializableElement$default (Lkotlinx/serialization/CompositeDecoder;Lkotlinx/serialization/SerialDescriptor;ILkotlinx/serialization/DeserializationStrategy;Ljava/lang/Object;ILjava/lang/Object;)Ljava/lang/Object;
+ public static fun decodeSequentially (Lkotlinx/serialization/CompositeDecoder;)Z
+ public static fun decodeSerializableElement (Lkotlinx/serialization/CompositeDecoder;Lkotlinx/serialization/SerialDescriptor;ILkotlinx/serialization/DeserializationStrategy;)Ljava/lang/Object;
+ public static fun decodeSerializableElement (Lkotlinx/serialization/CompositeDecoder;Lkotlinx/serialization/SerialDescriptor;ILkotlinx/serialization/DeserializationStrategy;Ljava/lang/Object;)Ljava/lang/Object;
+ public static synthetic fun decodeSerializableElement$default (Lkotlinx/serialization/CompositeDecoder;Lkotlinx/serialization/SerialDescriptor;ILkotlinx/serialization/DeserializationStrategy;Ljava/lang/Object;ILjava/lang/Object;)Ljava/lang/Object;
+ public static fun getUpdateMode (Lkotlinx/serialization/CompositeDecoder;)Lkotlinx/serialization/UpdateMode;
+ public static fun updateNullableSerializableElement (Lkotlinx/serialization/CompositeDecoder;Lkotlinx/serialization/SerialDescriptor;ILkotlinx/serialization/DeserializationStrategy;Ljava/lang/Object;)Ljava/lang/Object;
+ public static fun updateSerializableElement (Lkotlinx/serialization/CompositeDecoder;Lkotlinx/serialization/SerialDescriptor;ILkotlinx/serialization/DeserializationStrategy;Ljava/lang/Object;)Ljava/lang/Object;
+}
+
+public abstract interface class kotlinx/serialization/CompositeEncoder {
+ public abstract fun encodeBooleanElement (Lkotlinx/serialization/SerialDescriptor;IZ)V
+ public abstract fun encodeByteElement (Lkotlinx/serialization/SerialDescriptor;IB)V
+ public abstract fun encodeCharElement (Lkotlinx/serialization/SerialDescriptor;IC)V
+ public abstract fun encodeDoubleElement (Lkotlinx/serialization/SerialDescriptor;ID)V
+ public abstract fun encodeFloatElement (Lkotlinx/serialization/SerialDescriptor;IF)V
+ public abstract fun encodeIntElement (Lkotlinx/serialization/SerialDescriptor;II)V
+ public abstract fun encodeLongElement (Lkotlinx/serialization/SerialDescriptor;IJ)V
+ public abstract fun encodeNonSerializableElement (Lkotlinx/serialization/SerialDescriptor;ILjava/lang/Object;)V
+ public abstract fun encodeNullableSerializableElement (Lkotlinx/serialization/SerialDescriptor;ILkotlinx/serialization/SerializationStrategy;Ljava/lang/Object;)V
+ public abstract fun encodeSerializableElement (Lkotlinx/serialization/SerialDescriptor;ILkotlinx/serialization/SerializationStrategy;Ljava/lang/Object;)V
+ public abstract fun encodeShortElement (Lkotlinx/serialization/SerialDescriptor;IS)V
+ public abstract fun encodeStringElement (Lkotlinx/serialization/SerialDescriptor;ILjava/lang/String;)V
+ public abstract fun encodeUnitElement (Lkotlinx/serialization/SerialDescriptor;I)V
+ public abstract fun endStructure (Lkotlinx/serialization/SerialDescriptor;)V
+ public abstract fun getContext ()Lkotlinx/serialization/modules/SerialModule;
+ public abstract fun shouldEncodeElementDefault (Lkotlinx/serialization/SerialDescriptor;I)Z
+}
+
+public final class kotlinx/serialization/CompositeEncoder$DefaultImpls {
+ public static fun encodeNonSerializableElement (Lkotlinx/serialization/CompositeEncoder;Lkotlinx/serialization/SerialDescriptor;ILjava/lang/Object;)V
+ public static fun shouldEncodeElementDefault (Lkotlinx/serialization/CompositeEncoder;Lkotlinx/serialization/SerialDescriptor;I)Z
+}
+
+public final class kotlinx/serialization/ContextAwareKt {
+ public static final fun getCapturedKClass (Lkotlinx/serialization/SerialDescriptor;)Lkotlin/reflect/KClass;
+}
+
+public final class kotlinx/serialization/ContextSerializer : kotlinx/serialization/KSerializer {
+ public fun <init> (Lkotlin/reflect/KClass;)V
+ public fun deserialize (Lkotlinx/serialization/Decoder;)Ljava/lang/Object;
+ public fun getDescriptor ()Lkotlinx/serialization/SerialDescriptor;
+ public fun patch (Lkotlinx/serialization/Decoder;Ljava/lang/Object;)Ljava/lang/Object;
+ public fun serialize (Lkotlinx/serialization/Encoder;Ljava/lang/Object;)V
+}
+
+public abstract interface annotation class kotlinx/serialization/ContextualSerialization : java/lang/annotation/Annotation {
+ public abstract fun forClasses ()[Ljava/lang/Class;
+}
+
+public abstract interface class kotlinx/serialization/Decoder {
+ public abstract fun beginStructure (Lkotlinx/serialization/SerialDescriptor;)Lkotlinx/serialization/CompositeDecoder;
+ public abstract fun beginStructure (Lkotlinx/serialization/SerialDescriptor;[Lkotlinx/serialization/KSerializer;)Lkotlinx/serialization/CompositeDecoder;
+ public abstract fun decodeBoolean ()Z
+ public abstract fun decodeByte ()B
+ public abstract fun decodeChar ()C
+ public abstract fun decodeDouble ()D
+ public abstract fun decodeEnum (Lkotlinx/serialization/SerialDescriptor;)I
+ public abstract fun decodeFloat ()F
+ public abstract fun decodeInt ()I
+ public abstract fun decodeLong ()J
+ public abstract fun decodeNotNullMark ()Z
+ public abstract fun decodeNull ()Ljava/lang/Void;
+ public abstract fun decodeNullableSerializableValue (Lkotlinx/serialization/DeserializationStrategy;)Ljava/lang/Object;
+ public abstract fun decodeSerializableValue (Lkotlinx/serialization/DeserializationStrategy;)Ljava/lang/Object;
+ public abstract fun decodeShort ()S
+ public abstract fun decodeString ()Ljava/lang/String;
+ public abstract fun decodeUnit ()V
+ public abstract fun getContext ()Lkotlinx/serialization/modules/SerialModule;
+ public abstract fun getUpdateMode ()Lkotlinx/serialization/UpdateMode;
+ public abstract fun updateNullableSerializableValue (Lkotlinx/serialization/DeserializationStrategy;Ljava/lang/Object;)Ljava/lang/Object;
+ public abstract fun updateSerializableValue (Lkotlinx/serialization/DeserializationStrategy;Ljava/lang/Object;)Ljava/lang/Object;
+}
+
+public final class kotlinx/serialization/Decoder$DefaultImpls {
+ public static fun beginStructure (Lkotlinx/serialization/Decoder;Lkotlinx/serialization/SerialDescriptor;)Lkotlinx/serialization/CompositeDecoder;
+ public static fun beginStructure (Lkotlinx/serialization/Decoder;Lkotlinx/serialization/SerialDescriptor;[Lkotlinx/serialization/KSerializer;)Lkotlinx/serialization/CompositeDecoder;
+ public static fun decodeNullableSerializableValue (Lkotlinx/serialization/Decoder;Lkotlinx/serialization/DeserializationStrategy;)Ljava/lang/Object;
+ public static fun decodeSerializableValue (Lkotlinx/serialization/Decoder;Lkotlinx/serialization/DeserializationStrategy;)Ljava/lang/Object;
+ public static fun getUpdateMode (Lkotlinx/serialization/Decoder;)Lkotlinx/serialization/UpdateMode;
+ public static fun updateNullableSerializableValue (Lkotlinx/serialization/Decoder;Lkotlinx/serialization/DeserializationStrategy;Ljava/lang/Object;)Ljava/lang/Object;
+ public static fun updateSerializableValue (Lkotlinx/serialization/Decoder;Lkotlinx/serialization/DeserializationStrategy;Ljava/lang/Object;)Ljava/lang/Object;
+}
+
+public final class kotlinx/serialization/DecodingKt {
+ public static final fun decode (Lkotlinx/serialization/Decoder;Lkotlinx/serialization/DeserializationStrategy;)Ljava/lang/Object;
+ public static final fun decodeStructure (Lkotlinx/serialization/Decoder;Lkotlinx/serialization/SerialDescriptor;Lkotlin/jvm/functions/Function1;)Ljava/lang/Object;
+}
+
+public abstract interface class kotlinx/serialization/DeserializationStrategy {
+ public abstract fun deserialize (Lkotlinx/serialization/Decoder;)Ljava/lang/Object;
+ public abstract fun getDescriptor ()Lkotlinx/serialization/SerialDescriptor;
+ public abstract fun patch (Lkotlinx/serialization/Decoder;Ljava/lang/Object;)Ljava/lang/Object;
+}
+
+public abstract interface class kotlinx/serialization/Encoder {
+ public abstract fun beginCollection (Lkotlinx/serialization/SerialDescriptor;I)Lkotlinx/serialization/CompositeEncoder;
+ public abstract fun beginCollection (Lkotlinx/serialization/SerialDescriptor;I[Lkotlinx/serialization/KSerializer;)Lkotlinx/serialization/CompositeEncoder;
+ public abstract fun beginStructure (Lkotlinx/serialization/SerialDescriptor;)Lkotlinx/serialization/CompositeEncoder;
+ public abstract fun beginStructure (Lkotlinx/serialization/SerialDescriptor;[Lkotlinx/serialization/KSerializer;)Lkotlinx/serialization/CompositeEncoder;
+ public abstract fun encodeBoolean (Z)V
+ public abstract fun encodeByte (B)V
+ public abstract fun encodeChar (C)V
+ public abstract fun encodeDouble (D)V
+ public abstract fun encodeEnum (Lkotlinx/serialization/SerialDescriptor;I)V
+ public abstract fun encodeFloat (F)V
+ public abstract fun encodeInt (I)V
+ public abstract fun encodeLong (J)V
+ public abstract fun encodeNotNullMark ()V
+ public abstract fun encodeNull ()V
+ public abstract fun encodeNullableSerializableValue (Lkotlinx/serialization/SerializationStrategy;Ljava/lang/Object;)V
+ public abstract fun encodeSerializableValue (Lkotlinx/serialization/SerializationStrategy;Ljava/lang/Object;)V
+ public abstract fun encodeShort (S)V
+ public abstract fun encodeString (Ljava/lang/String;)V
+ public abstract fun encodeUnit ()V
+ public abstract fun getContext ()Lkotlinx/serialization/modules/SerialModule;
+}
+
+public final class kotlinx/serialization/Encoder$DefaultImpls {
+ public static fun beginCollection (Lkotlinx/serialization/Encoder;Lkotlinx/serialization/SerialDescriptor;I)Lkotlinx/serialization/CompositeEncoder;
+ public static fun beginCollection (Lkotlinx/serialization/Encoder;Lkotlinx/serialization/SerialDescriptor;I[Lkotlinx/serialization/KSerializer;)Lkotlinx/serialization/CompositeEncoder;
+ public static fun beginStructure (Lkotlinx/serialization/Encoder;Lkotlinx/serialization/SerialDescriptor;)Lkotlinx/serialization/CompositeEncoder;
+ public static fun beginStructure (Lkotlinx/serialization/Encoder;Lkotlinx/serialization/SerialDescriptor;[Lkotlinx/serialization/KSerializer;)Lkotlinx/serialization/CompositeEncoder;
+ public static fun encodeNotNullMark (Lkotlinx/serialization/Encoder;)V
+ public static fun encodeNullableSerializableValue (Lkotlinx/serialization/Encoder;Lkotlinx/serialization/SerializationStrategy;Ljava/lang/Object;)V
+ public static fun encodeSerializableValue (Lkotlinx/serialization/Encoder;Lkotlinx/serialization/SerializationStrategy;Ljava/lang/Object;)V
+}
+
+public final class kotlinx/serialization/EncodingKt {
+ public static final fun encode (Lkotlinx/serialization/Encoder;Lkotlinx/serialization/SerializationStrategy;Ljava/lang/Object;)V
+ public static final fun encodeStructure (Lkotlinx/serialization/Encoder;Lkotlinx/serialization/SerialDescriptor;Lkotlin/jvm/functions/Function1;)V
+}
+
+public abstract interface annotation class kotlinx/serialization/ImplicitReflectionSerializer : java/lang/annotation/Annotation {
+}
+
+public abstract interface annotation class kotlinx/serialization/InternalSerializationApi : java/lang/annotation/Annotation {
+}
+
+public final class kotlinx/serialization/JvmResolvingKt {
+ public static final fun serializerByTypeToken (Ljava/lang/reflect/Type;)Lkotlinx/serialization/KSerializer;
+}
+
+public abstract interface class kotlinx/serialization/KSerializer : kotlinx/serialization/DeserializationStrategy, kotlinx/serialization/SerializationStrategy {
+ public abstract fun getDescriptor ()Lkotlinx/serialization/SerialDescriptor;
+ public abstract fun patch (Lkotlinx/serialization/Decoder;Ljava/lang/Object;)Ljava/lang/Object;
+}
+
+public final class kotlinx/serialization/KSerializer$DefaultImpls {
+ public static fun patch (Lkotlinx/serialization/KSerializer;Lkotlinx/serialization/Decoder;Ljava/lang/Object;)Ljava/lang/Object;
+}
+
+public final class kotlinx/serialization/Mapper {
+ public fun <init> ()V
+}
+
+public final class kotlinx/serialization/MigrationsKt {
+ public static final fun compiledSerializer (Lkotlin/reflect/KClass;)Lkotlinx/serialization/KSerializer;
+ public static final fun getContextualOrDefault (Lkotlinx/serialization/modules/SerialModule;Ljava/lang/Object;)Lkotlinx/serialization/KSerializer;
+ public static final fun getContextualOrDefault (Lkotlinx/serialization/modules/SerialModule;Lkotlin/reflect/KClass;)Lkotlinx/serialization/KSerializer;
+ public static final fun getList (Lkotlinx/serialization/KSerializer;)Lkotlinx/serialization/KSerializer;
+ public static final fun getMap (Lkotlin/Pair;)Lkotlinx/serialization/KSerializer;
+ public static final fun getNullable (Lkotlinx/serialization/KSerializer;)Lkotlinx/serialization/KSerializer;
+ public static final fun getPolymorphicClassDescriptor ()Lkotlinx/serialization/SerialDescriptor;
+ public static final fun getSet (Lkotlinx/serialization/KSerializer;)Lkotlinx/serialization/KSerializer;
+ public static final fun withName (Lkotlinx/serialization/SerialDescriptor;Ljava/lang/String;)Lkotlinx/serialization/SerialDescriptor;
+}
+
+public final class kotlinx/serialization/MissingFieldException : kotlinx/serialization/SerializationException {
+ public fun <init> (Ljava/lang/String;)V
+}
+
+public final class kotlinx/serialization/PlatformUtilsKt {
+ public static final fun serializer (Lkotlin/reflect/KClass;)Lkotlinx/serialization/KSerializer;
+ public static final fun serializerOrNull (Lkotlin/reflect/KClass;)Lkotlinx/serialization/KSerializer;
+}
+
+public abstract interface annotation class kotlinx/serialization/Polymorphic : java/lang/annotation/Annotation {
+}
+
+public abstract class kotlinx/serialization/PolymorphicKind : kotlinx/serialization/SerialKind {
+}
+
+public final class kotlinx/serialization/PolymorphicKind$OPEN : kotlinx/serialization/PolymorphicKind {
+ public static final field INSTANCE Lkotlinx/serialization/PolymorphicKind$OPEN;
+}
+
+public final class kotlinx/serialization/PolymorphicKind$SEALED : kotlinx/serialization/PolymorphicKind {
+ public static final field INSTANCE Lkotlinx/serialization/PolymorphicKind$SEALED;
+}
+
+public final class kotlinx/serialization/PolymorphicSerializer : kotlinx/serialization/internal/AbstractPolymorphicSerializer {
+ public fun <init> (Lkotlin/reflect/KClass;)V
+ public fun getBaseClass ()Lkotlin/reflect/KClass;
+ public fun getDescriptor ()Lkotlinx/serialization/SerialDescriptor;
+}
+
+public final class kotlinx/serialization/PrimitiveDescriptorWithName : kotlinx/serialization/SerialDescriptor {
+ public fun <init> (Ljava/lang/String;Lkotlinx/serialization/SerialDescriptor;)V
+ public fun getAnnotations ()Ljava/util/List;
+ public fun getElementAnnotations (I)Ljava/util/List;
+ public fun getElementDescriptor (I)Lkotlinx/serialization/SerialDescriptor;
+ public fun getElementIndex (Ljava/lang/String;)I
+ public fun getElementName (I)Ljava/lang/String;
+ public fun getElementsCount ()I
+ public fun getKind ()Lkotlinx/serialization/SerialKind;
+ public fun getSerialName ()Ljava/lang/String;
+ public fun isElementOptional (I)Z
+ public fun isNullable ()Z
+}
+
+public abstract class kotlinx/serialization/PrimitiveKind : kotlinx/serialization/SerialKind {
+}
+
+public final class kotlinx/serialization/PrimitiveKind$BOOLEAN : kotlinx/serialization/PrimitiveKind {
+ public static final field INSTANCE Lkotlinx/serialization/PrimitiveKind$BOOLEAN;
+}
+
+public final class kotlinx/serialization/PrimitiveKind$BYTE : kotlinx/serialization/PrimitiveKind {
+ public static final field INSTANCE Lkotlinx/serialization/PrimitiveKind$BYTE;
+}
+
+public final class kotlinx/serialization/PrimitiveKind$CHAR : kotlinx/serialization/PrimitiveKind {
+ public static final field INSTANCE Lkotlinx/serialization/PrimitiveKind$CHAR;
+}
+
+public final class kotlinx/serialization/PrimitiveKind$DOUBLE : kotlinx/serialization/PrimitiveKind {
+ public static final field INSTANCE Lkotlinx/serialization/PrimitiveKind$DOUBLE;
+}
+
+public final class kotlinx/serialization/PrimitiveKind$FLOAT : kotlinx/serialization/PrimitiveKind {
+ public static final field INSTANCE Lkotlinx/serialization/PrimitiveKind$FLOAT;
+}
+
+public final class kotlinx/serialization/PrimitiveKind$INT : kotlinx/serialization/PrimitiveKind {
+ public static final field INSTANCE Lkotlinx/serialization/PrimitiveKind$INT;
+}
+
+public final class kotlinx/serialization/PrimitiveKind$LONG : kotlinx/serialization/PrimitiveKind {
+ public static final field INSTANCE Lkotlinx/serialization/PrimitiveKind$LONG;
+}
+
+public final class kotlinx/serialization/PrimitiveKind$SHORT : kotlinx/serialization/PrimitiveKind {
+ public static final field INSTANCE Lkotlinx/serialization/PrimitiveKind$SHORT;
+}
+
+public final class kotlinx/serialization/PrimitiveKind$STRING : kotlinx/serialization/PrimitiveKind {
+ public static final field INSTANCE Lkotlinx/serialization/PrimitiveKind$STRING;
+}
+
+public abstract interface annotation class kotlinx/serialization/Required : java/lang/annotation/Annotation {
+}
+
+public final class kotlinx/serialization/SealedClassSerializer : kotlinx/serialization/internal/AbstractPolymorphicSerializer {
+ public fun <init> (Ljava/lang/String;Lkotlin/reflect/KClass;[Lkotlin/reflect/KClass;[Lkotlinx/serialization/KSerializer;)V
+ public fun findPolymorphicSerializer (Lkotlinx/serialization/CompositeDecoder;Ljava/lang/String;)Lkotlinx/serialization/DeserializationStrategy;
+ public fun findPolymorphicSerializer (Lkotlinx/serialization/Encoder;Ljava/lang/Object;)Lkotlinx/serialization/SerializationStrategy;
+ public fun getBaseClass ()Lkotlin/reflect/KClass;
+ public fun getDescriptor ()Lkotlinx/serialization/SerialDescriptor;
+}
+
+public abstract interface class kotlinx/serialization/SerialDescriptor {
+ public abstract fun getAnnotations ()Ljava/util/List;
+ public abstract fun getElementAnnotations (I)Ljava/util/List;
+ public abstract fun getElementDescriptor (I)Lkotlinx/serialization/SerialDescriptor;
+ public abstract fun getElementIndex (Ljava/lang/String;)I
+ public abstract fun getElementName (I)Ljava/lang/String;
+ public abstract fun getElementsCount ()I
+ public abstract fun getKind ()Lkotlinx/serialization/SerialKind;
+ public abstract fun getSerialName ()Ljava/lang/String;
+ public abstract fun isElementOptional (I)Z
+ public abstract fun isNullable ()Z
+}
+
+public final class kotlinx/serialization/SerialDescriptor$DefaultImpls {
+ public static fun getAnnotations (Lkotlinx/serialization/SerialDescriptor;)Ljava/util/List;
+ public static fun isNullable (Lkotlinx/serialization/SerialDescriptor;)Z
+}
+
+public final class kotlinx/serialization/SerialDescriptorBuilder {
+ public final fun element (Ljava/lang/String;Lkotlinx/serialization/SerialDescriptor;Ljava/util/List;Z)V
+ public static synthetic fun element$default (Lkotlinx/serialization/SerialDescriptorBuilder;Ljava/lang/String;Lkotlinx/serialization/SerialDescriptor;Ljava/util/List;ZILjava/lang/Object;)V
+ public final fun getAnnotations ()Ljava/util/List;
+ public final fun getSerialName ()Ljava/lang/String;
+ public final fun isNullable ()Z
+ public final fun listDescriptor (Lkotlinx/serialization/SerialDescriptor;)Lkotlinx/serialization/SerialDescriptor;
+ public final fun mapDescriptor (Lkotlinx/serialization/SerialDescriptor;Lkotlinx/serialization/SerialDescriptor;)Lkotlinx/serialization/SerialDescriptor;
+ public final fun setAnnotations (Ljava/util/List;)V
+ public final fun setDescriptor (Lkotlinx/serialization/SerialDescriptor;)Lkotlinx/serialization/SerialDescriptor;
+ public final fun setNullable (Z)V
+}
+
+public final class kotlinx/serialization/SerialDescriptorBuilderKt {
+ public static final fun PrimitiveDescriptor (Ljava/lang/String;Lkotlinx/serialization/PrimitiveKind;)Lkotlinx/serialization/SerialDescriptor;
+ public static final fun SerialDescriptor (Ljava/lang/String;Lkotlinx/serialization/SerialKind;[Lkotlinx/serialization/SerialDescriptor;Lkotlin/jvm/functions/Function1;)Lkotlinx/serialization/SerialDescriptor;
+ public static synthetic fun SerialDescriptor$default (Ljava/lang/String;Lkotlinx/serialization/SerialKind;[Lkotlinx/serialization/SerialDescriptor;Lkotlin/jvm/functions/Function1;ILjava/lang/Object;)Lkotlinx/serialization/SerialDescriptor;
+ public static final fun getNullable (Lkotlinx/serialization/SerialDescriptor;)Lkotlinx/serialization/SerialDescriptor;
+}
+
+public final class kotlinx/serialization/SerialDescriptorKt {
+ public static final fun elementDescriptors (Lkotlinx/serialization/SerialDescriptor;)Ljava/util/List;
+ public static final fun elementNames (Lkotlinx/serialization/SerialDescriptor;)Ljava/util/List;
+ public static final fun getElementIndexOrThrow (Lkotlinx/serialization/SerialDescriptor;Ljava/lang/String;)I
+}
+
+public abstract interface class kotlinx/serialization/SerialFormat {
+ public abstract fun getContext ()Lkotlinx/serialization/modules/SerialModule;
+}
+
+public final class kotlinx/serialization/SerialFormatKt {
+ public static final fun dumps (Lkotlinx/serialization/BinaryFormat;Lkotlinx/serialization/SerializationStrategy;Ljava/lang/Object;)Ljava/lang/String;
+ public static final fun loads (Lkotlinx/serialization/BinaryFormat;Lkotlinx/serialization/DeserializationStrategy;Ljava/lang/String;)Ljava/lang/Object;
+}
+
+public abstract interface annotation class kotlinx/serialization/SerialId : java/lang/annotation/Annotation {
+ public abstract fun id ()I
+}
+
+public final class kotlinx/serialization/SerialId$Impl : kotlinx/serialization/SerialId {
+ public fun <init> (I)V
+ public final fun id ()I
+}
+
+public abstract interface annotation class kotlinx/serialization/SerialInfo : java/lang/annotation/Annotation {
+}
+
+public abstract class kotlinx/serialization/SerialKind {
+ public fun toString ()Ljava/lang/String;
+}
+
+public abstract interface annotation class kotlinx/serialization/SerialName : java/lang/annotation/Annotation {
+ public abstract fun value ()Ljava/lang/String;
+}
+
+public abstract interface annotation class kotlinx/serialization/Serializable : java/lang/annotation/Annotation {
+ public abstract fun with ()Ljava/lang/Class;
+}
+
+public final class kotlinx/serialization/SerializationConstructorMarker {
+}
+
+public class kotlinx/serialization/SerializationException : java/lang/RuntimeException {
+ public fun <init> (Ljava/lang/String;Ljava/lang/Throwable;)V
+ public synthetic fun <init> (Ljava/lang/String;Ljava/lang/Throwable;ILkotlin/jvm/internal/DefaultConstructorMarker;)V
+}
+
+public abstract interface class kotlinx/serialization/SerializationStrategy {
+ public abstract fun getDescriptor ()Lkotlinx/serialization/SerialDescriptor;
+ public abstract fun serialize (Lkotlinx/serialization/Encoder;Ljava/lang/Object;)V
+}
+
+public abstract interface annotation class kotlinx/serialization/Serializer : java/lang/annotation/Annotation {
+ public abstract fun forClass ()Ljava/lang/Class;
+}
+
+public final class kotlinx/serialization/SerializerResolvingKt {
+ public static final fun serializer (Lkotlin/reflect/KType;)Lkotlinx/serialization/KSerializer;
+}
+
+public abstract interface class kotlinx/serialization/StringFormat : kotlinx/serialization/SerialFormat {
+ public abstract fun parse (Lkotlinx/serialization/DeserializationStrategy;Ljava/lang/String;)Ljava/lang/Object;
+ public abstract fun stringify (Lkotlinx/serialization/SerializationStrategy;Ljava/lang/Object;)Ljava/lang/String;
+}
+
+public abstract class kotlinx/serialization/StructureKind : kotlinx/serialization/SerialKind {
+}
+
+public final class kotlinx/serialization/StructureKind$CLASS : kotlinx/serialization/StructureKind {
+ public static final field INSTANCE Lkotlinx/serialization/StructureKind$CLASS;
+}
+
+public final class kotlinx/serialization/StructureKind$LIST : kotlinx/serialization/StructureKind {
+ public static final field INSTANCE Lkotlinx/serialization/StructureKind$LIST;
+}
+
+public final class kotlinx/serialization/StructureKind$MAP : kotlinx/serialization/StructureKind {
+ public static final field INSTANCE Lkotlinx/serialization/StructureKind$MAP;
+}
+
+public final class kotlinx/serialization/StructureKind$OBJECT : kotlinx/serialization/StructureKind {
+ public static final field INSTANCE Lkotlinx/serialization/StructureKind$OBJECT;
+}
+
+public abstract interface annotation class kotlinx/serialization/Transient : java/lang/annotation/Annotation {
+}
+
+public class kotlinx/serialization/TypeBase {
+ public fun <init> ()V
+}
+
+public abstract class kotlinx/serialization/UnionKind : kotlinx/serialization/SerialKind {
+}
+
+public final class kotlinx/serialization/UnionKind$CONTEXTUAL : kotlinx/serialization/UnionKind {
+ public static final field INSTANCE Lkotlinx/serialization/UnionKind$CONTEXTUAL;
+}
+
+public final class kotlinx/serialization/UnionKind$ENUM_KIND : kotlinx/serialization/UnionKind {
+ public static final field INSTANCE Lkotlinx/serialization/UnionKind$ENUM_KIND;
+}
+
+public final class kotlinx/serialization/UnknownFieldException : kotlinx/serialization/SerializationException {
+ public fun <init> (I)V
+}
+
+public abstract interface annotation class kotlinx/serialization/UnsafeSerializationApi : java/lang/annotation/Annotation {
+}
+
+public abstract interface annotation class kotlinx/serialization/UnstableDefault : java/lang/annotation/Annotation {
+}
+
+public final class kotlinx/serialization/UpdateMode : java/lang/Enum {
+ public static final field BANNED Lkotlinx/serialization/UpdateMode;
+ public static final field OVERWRITE Lkotlinx/serialization/UpdateMode;
+ public static final field UPDATE Lkotlinx/serialization/UpdateMode;
+ public static fun valueOf (Ljava/lang/String;)Lkotlinx/serialization/UpdateMode;
+ public static fun values ()[Lkotlinx/serialization/UpdateMode;
+}
+
+public final class kotlinx/serialization/UpdateNotSupportedException : kotlinx/serialization/SerializationException {
+ public fun <init> (Ljava/lang/String;)V
+}
+
+public abstract interface annotation class kotlinx/serialization/UseSerializers : java/lang/annotation/Annotation {
+ public abstract fun serializerClasses ()[Ljava/lang/Class;
+}
+
+public abstract class kotlinx/serialization/builtins/AbstractDecoder : kotlinx/serialization/CompositeDecoder, kotlinx/serialization/Decoder {
+ public fun <init> ()V
+ public fun beginStructure (Lkotlinx/serialization/SerialDescriptor;)Lkotlinx/serialization/CompositeDecoder;
+ public fun beginStructure (Lkotlinx/serialization/SerialDescriptor;[Lkotlinx/serialization/KSerializer;)Lkotlinx/serialization/CompositeDecoder;
+ public fun decodeBoolean ()Z
+ public final fun decodeBooleanElement (Lkotlinx/serialization/SerialDescriptor;I)Z
+ public fun decodeByte ()B
+ public final fun decodeByteElement (Lkotlinx/serialization/SerialDescriptor;I)B
+ public fun decodeChar ()C
+ public final fun decodeCharElement (Lkotlinx/serialization/SerialDescriptor;I)C
+ public fun decodeCollectionSize (Lkotlinx/serialization/SerialDescriptor;)I
+ public fun decodeDouble ()D
+ public final fun decodeDoubleElement (Lkotlinx/serialization/SerialDescriptor;I)D
+ public fun decodeEnum (Lkotlinx/serialization/SerialDescriptor;)I
+ public fun decodeFloat ()F
+ public final fun decodeFloatElement (Lkotlinx/serialization/SerialDescriptor;I)F
+ public fun decodeInt ()I
+ public final fun decodeIntElement (Lkotlinx/serialization/SerialDescriptor;I)I
+ public fun decodeLong ()J
+ public final fun decodeLongElement (Lkotlinx/serialization/SerialDescriptor;I)J
+ public fun decodeNotNullMark ()Z
+ public fun decodeNull ()Ljava/lang/Void;
+ public fun decodeNullableSerializableElement (Lkotlinx/serialization/SerialDescriptor;ILkotlinx/serialization/DeserializationStrategy;)Ljava/lang/Object;
+ public final fun decodeNullableSerializableElement (Lkotlinx/serialization/SerialDescriptor;ILkotlinx/serialization/DeserializationStrategy;Ljava/lang/Object;)Ljava/lang/Object;
+ public fun decodeNullableSerializableValue (Lkotlinx/serialization/DeserializationStrategy;)Ljava/lang/Object;
+ public fun decodeSequentially ()Z
+ public fun decodeSerializableElement (Lkotlinx/serialization/SerialDescriptor;ILkotlinx/serialization/DeserializationStrategy;)Ljava/lang/Object;
+ public final fun decodeSerializableElement (Lkotlinx/serialization/SerialDescriptor;ILkotlinx/serialization/DeserializationStrategy;Ljava/lang/Object;)Ljava/lang/Object;
+ public fun decodeSerializableValue (Lkotlinx/serialization/DeserializationStrategy;)Ljava/lang/Object;
+ public fun decodeSerializableValue (Lkotlinx/serialization/DeserializationStrategy;Ljava/lang/Object;)Ljava/lang/Object;
+ public static synthetic fun decodeSerializableValue$default (Lkotlinx/serialization/builtins/AbstractDecoder;Lkotlinx/serialization/DeserializationStrategy;Ljava/lang/Object;ILjava/lang/Object;)Ljava/lang/Object;
+ public fun decodeShort ()S
+ public final fun decodeShortElement (Lkotlinx/serialization/SerialDescriptor;I)S
+ public fun decodeString ()Ljava/lang/String;
+ public final fun decodeStringElement (Lkotlinx/serialization/SerialDescriptor;I)Ljava/lang/String;
+ public fun decodeUnit ()V
+ public final fun decodeUnitElement (Lkotlinx/serialization/SerialDescriptor;I)V
+ public fun decodeValue ()Ljava/lang/Object;
+ public fun endStructure (Lkotlinx/serialization/SerialDescriptor;)V
+ public fun getContext ()Lkotlinx/serialization/modules/SerialModule;
+ public fun getUpdateMode ()Lkotlinx/serialization/UpdateMode;
+ public fun updateNullableSerializableElement (Lkotlinx/serialization/SerialDescriptor;ILkotlinx/serialization/DeserializationStrategy;Ljava/lang/Object;)Ljava/lang/Object;
+ public fun updateNullableSerializableValue (Lkotlinx/serialization/DeserializationStrategy;Ljava/lang/Object;)Ljava/lang/Object;
+ public fun updateSerializableElement (Lkotlinx/serialization/SerialDescriptor;ILkotlinx/serialization/DeserializationStrategy;Ljava/lang/Object;)Ljava/lang/Object;
+ public fun updateSerializableValue (Lkotlinx/serialization/DeserializationStrategy;Ljava/lang/Object;)Ljava/lang/Object;
+}
+
+public abstract class kotlinx/serialization/builtins/AbstractEncoder : kotlinx/serialization/CompositeEncoder, kotlinx/serialization/Encoder {
+ public fun <init> ()V
+ public fun beginCollection (Lkotlinx/serialization/SerialDescriptor;I)Lkotlinx/serialization/CompositeEncoder;
+ public fun beginCollection (Lkotlinx/serialization/SerialDescriptor;I[Lkotlinx/serialization/KSerializer;)Lkotlinx/serialization/CompositeEncoder;
+ public fun beginStructure (Lkotlinx/serialization/SerialDescriptor;)Lkotlinx/serialization/CompositeEncoder;
+ public fun beginStructure (Lkotlinx/serialization/SerialDescriptor;[Lkotlinx/serialization/KSerializer;)Lkotlinx/serialization/CompositeEncoder;
+ public fun encodeBoolean (Z)V
+ public final fun encodeBooleanElement (Lkotlinx/serialization/SerialDescriptor;IZ)V
+ public fun encodeByte (B)V
+ public final fun encodeByteElement (Lkotlinx/serialization/SerialDescriptor;IB)V
+ public fun encodeChar (C)V
+ public final fun encodeCharElement (Lkotlinx/serialization/SerialDescriptor;IC)V
+ public fun encodeDouble (D)V
+ public final fun encodeDoubleElement (Lkotlinx/serialization/SerialDescriptor;ID)V
+ public fun encodeElement (Lkotlinx/serialization/SerialDescriptor;I)Z
+ public fun encodeEnum (Lkotlinx/serialization/SerialDescriptor;I)V
+ public fun encodeFloat (F)V
+ public final fun encodeFloatElement (Lkotlinx/serialization/SerialDescriptor;IF)V
+ public fun encodeInt (I)V
+ public final fun encodeIntElement (Lkotlinx/serialization/SerialDescriptor;II)V
+ public fun encodeLong (J)V
+ public final fun encodeLongElement (Lkotlinx/serialization/SerialDescriptor;IJ)V
+ public fun encodeNonSerializableElement (Lkotlinx/serialization/SerialDescriptor;ILjava/lang/Object;)V
+ public fun encodeNotNullMark ()V
+ public fun encodeNull ()V
+ public final fun encodeNullableSerializableElement (Lkotlinx/serialization/SerialDescriptor;ILkotlinx/serialization/SerializationStrategy;Ljava/lang/Object;)V
+ public fun encodeNullableSerializableValue (Lkotlinx/serialization/SerializationStrategy;Ljava/lang/Object;)V
+ public final fun encodeSerializableElement (Lkotlinx/serialization/SerialDescriptor;ILkotlinx/serialization/SerializationStrategy;Ljava/lang/Object;)V
+ public fun encodeSerializableValue (Lkotlinx/serialization/SerializationStrategy;Ljava/lang/Object;)V
+ public fun encodeShort (S)V
+ public final fun encodeShortElement (Lkotlinx/serialization/SerialDescriptor;IS)V
+ public fun encodeString (Ljava/lang/String;)V
+ public final fun encodeStringElement (Lkotlinx/serialization/SerialDescriptor;ILjava/lang/String;)V
+ public fun encodeUnit ()V
+ public final fun encodeUnitElement (Lkotlinx/serialization/SerialDescriptor;I)V
+ public fun encodeValue (Ljava/lang/Object;)V
+ public fun getContext ()Lkotlinx/serialization/modules/SerialModule;
+ public fun shouldEncodeElementDefault (Lkotlinx/serialization/SerialDescriptor;I)Z
+}
+
+public final class kotlinx/serialization/builtins/BuiltinSerializersKt {
+ public static final fun MapEntrySerializer (Lkotlinx/serialization/KSerializer;Lkotlinx/serialization/KSerializer;)Lkotlinx/serialization/KSerializer;
+ public static final fun PairSerializer (Lkotlinx/serialization/KSerializer;Lkotlinx/serialization/KSerializer;)Lkotlinx/serialization/KSerializer;
+ public static final fun TripleSerializer (Lkotlinx/serialization/KSerializer;Lkotlinx/serialization/KSerializer;Lkotlinx/serialization/KSerializer;)Lkotlinx/serialization/KSerializer;
+ public static final fun getNullable (Lkotlinx/serialization/KSerializer;)Lkotlinx/serialization/KSerializer;
+}
+
+public final class kotlinx/serialization/builtins/CollectionSerializersKt {
+ public static final fun ListSerializer (Lkotlinx/serialization/KSerializer;)Lkotlinx/serialization/KSerializer;
+ public static final fun MapSerializer (Lkotlinx/serialization/KSerializer;Lkotlinx/serialization/KSerializer;)Lkotlinx/serialization/KSerializer;
+ public static final fun SetSerializer (Lkotlinx/serialization/KSerializer;)Lkotlinx/serialization/KSerializer;
+ public static final fun getList (Lkotlinx/serialization/KSerializer;)Lkotlinx/serialization/KSerializer;
+ public static final fun getSet (Lkotlinx/serialization/KSerializer;)Lkotlinx/serialization/KSerializer;
+}
+
+public final class kotlinx/serialization/builtins/LongAsStringSerializer : kotlinx/serialization/KSerializer {
+ public static final field INSTANCE Lkotlinx/serialization/builtins/LongAsStringSerializer;
+ public fun deserialize (Lkotlinx/serialization/Decoder;)Ljava/lang/Long;
+ public synthetic fun deserialize (Lkotlinx/serialization/Decoder;)Ljava/lang/Object;
+ public fun getDescriptor ()Lkotlinx/serialization/SerialDescriptor;
+ public fun patch (Lkotlinx/serialization/Decoder;J)Ljava/lang/Long;
+ public synthetic fun patch (Lkotlinx/serialization/Decoder;Ljava/lang/Object;)Ljava/lang/Object;
+ public fun serialize (Lkotlinx/serialization/Encoder;J)V
+ public synthetic fun serialize (Lkotlinx/serialization/Encoder;Ljava/lang/Object;)V
+}
+
+public final class kotlinx/serialization/builtins/PrimitiveSerializersKt {
+ public static final fun ArraySerializer (Lkotlin/reflect/KClass;Lkotlinx/serialization/KSerializer;)Lkotlinx/serialization/KSerializer;
+ public static final fun BooleanArraySerializer ()Lkotlinx/serialization/KSerializer;
+ public static final fun ByteArraySerializer ()Lkotlinx/serialization/KSerializer;
+ public static final fun CharArraySerializer ()Lkotlinx/serialization/KSerializer;
+ public static final fun DoubleArraySerializer ()Lkotlinx/serialization/KSerializer;
+ public static final fun FloatArraySerializer ()Lkotlinx/serialization/KSerializer;
+ public static final fun IntArraySerializer ()Lkotlinx/serialization/KSerializer;
+ public static final fun LongArraySerializer ()Lkotlinx/serialization/KSerializer;
+ public static final fun ShortArraySerializer ()Lkotlinx/serialization/KSerializer;
+ public static final fun UnitSerializer ()Lkotlinx/serialization/KSerializer;
+ public static final fun serializer (Lkotlin/jvm/internal/BooleanCompanionObject;)Lkotlinx/serialization/KSerializer;
+ public static final fun serializer (Lkotlin/jvm/internal/ByteCompanionObject;)Lkotlinx/serialization/KSerializer;
+ public static final fun serializer (Lkotlin/jvm/internal/CharCompanionObject;)Lkotlinx/serialization/KSerializer;
+ public static final fun serializer (Lkotlin/jvm/internal/DoubleCompanionObject;)Lkotlinx/serialization/KSerializer;
+ public static final fun serializer (Lkotlin/jvm/internal/FloatCompanionObject;)Lkotlinx/serialization/KSerializer;
+ public static final fun serializer (Lkotlin/jvm/internal/IntCompanionObject;)Lkotlinx/serialization/KSerializer;
+ public static final fun serializer (Lkotlin/jvm/internal/LongCompanionObject;)Lkotlinx/serialization/KSerializer;
+ public static final fun serializer (Lkotlin/jvm/internal/ShortCompanionObject;)Lkotlinx/serialization/KSerializer;
+ public static final fun serializer (Lkotlin/jvm/internal/StringCompanionObject;)Lkotlinx/serialization/KSerializer;
+}
+
+public abstract class kotlinx/serialization/internal/AbstractCollectionSerializer : kotlinx/serialization/KSerializer {
+ protected abstract fun builder ()Ljava/lang/Object;
+ protected abstract fun builderSize (Ljava/lang/Object;)I
+ protected abstract fun checkCapacity (Ljava/lang/Object;I)V
+ protected abstract fun collectionIterator (Ljava/lang/Object;)Ljava/util/Iterator;
+ protected abstract fun collectionSize (Ljava/lang/Object;)I
+ public fun deserialize (Lkotlinx/serialization/Decoder;)Ljava/lang/Object;
+ public final fun merge (Lkotlinx/serialization/Decoder;Ljava/lang/Object;)Ljava/lang/Object;
+ public fun patch (Lkotlinx/serialization/Decoder;Ljava/lang/Object;)Ljava/lang/Object;
+ protected abstract fun readAll (Lkotlinx/serialization/CompositeDecoder;Ljava/lang/Object;II)V
+ protected abstract fun readElement (Lkotlinx/serialization/CompositeDecoder;ILjava/lang/Object;Z)V
+ public static synthetic fun readElement$default (Lkotlinx/serialization/internal/AbstractCollectionSerializer;Lkotlinx/serialization/CompositeDecoder;ILjava/lang/Object;ZILjava/lang/Object;)V
+ public abstract fun serialize (Lkotlinx/serialization/Encoder;Ljava/lang/Object;)V
+ protected abstract fun toBuilder (Ljava/lang/Object;)Ljava/lang/Object;
+ protected abstract fun toResult (Ljava/lang/Object;)Ljava/lang/Object;
+}
+
+public abstract class kotlinx/serialization/internal/AbstractPolymorphicSerializer : kotlinx/serialization/KSerializer {
+ public final fun deserialize (Lkotlinx/serialization/Decoder;)Ljava/lang/Object;
+ public fun findPolymorphicSerializer (Lkotlinx/serialization/CompositeDecoder;Ljava/lang/String;)Lkotlinx/serialization/DeserializationStrategy;
+ public fun findPolymorphicSerializer (Lkotlinx/serialization/Encoder;Ljava/lang/Object;)Lkotlinx/serialization/SerializationStrategy;
+ public abstract fun getBaseClass ()Lkotlin/reflect/KClass;
+ public fun patch (Lkotlinx/serialization/Decoder;Ljava/lang/Object;)Ljava/lang/Object;
+ public final fun serialize (Lkotlinx/serialization/Encoder;Ljava/lang/Object;)V
+}
+
+public final class kotlinx/serialization/internal/ArrayListSerializer : kotlinx/serialization/internal/ListLikeSerializer {
+ public fun <init> (Lkotlinx/serialization/KSerializer;)V
+ public synthetic fun builder ()Ljava/lang/Object;
+ public synthetic fun builderSize (Ljava/lang/Object;)I
+ public synthetic fun checkCapacity (Ljava/lang/Object;I)V
+ public synthetic fun collectionIterator (Ljava/lang/Object;)Ljava/util/Iterator;
+ public synthetic fun collectionSize (Ljava/lang/Object;)I
+ public fun getDescriptor ()Lkotlinx/serialization/SerialDescriptor;
+ public synthetic fun insert (Ljava/lang/Object;ILjava/lang/Object;)V
+ public synthetic fun toBuilder (Ljava/lang/Object;)Ljava/lang/Object;
+ public synthetic fun toResult (Ljava/lang/Object;)Ljava/lang/Object;
+}
+
+public final class kotlinx/serialization/internal/BooleanArrayBuilder : kotlinx/serialization/internal/PrimitiveArrayBuilder {
+ public synthetic fun build$kotlinx_serialization_runtime ()Ljava/lang/Object;
+}
+
+public final class kotlinx/serialization/internal/BooleanArraySerializer : kotlinx/serialization/internal/PrimitiveArraySerializer, kotlinx/serialization/KSerializer {
+ public static final field INSTANCE Lkotlinx/serialization/internal/BooleanArraySerializer;
+ public synthetic fun collectionSize (Ljava/lang/Object;)I
+ public synthetic fun empty ()Ljava/lang/Object;
+ public synthetic fun patch (Lkotlinx/serialization/Decoder;Ljava/lang/Object;)Ljava/lang/Object;
+ public fun patch (Lkotlinx/serialization/Decoder;[Z)[Z
+ public synthetic fun readElement (Lkotlinx/serialization/CompositeDecoder;ILjava/lang/Object;Z)V
+ public synthetic fun readElement (Lkotlinx/serialization/CompositeDecoder;ILkotlinx/serialization/internal/PrimitiveArrayBuilder;Z)V
+ public synthetic fun toBuilder (Ljava/lang/Object;)Ljava/lang/Object;
+ public synthetic fun writeContent (Lkotlinx/serialization/CompositeEncoder;Ljava/lang/Object;I)V
+}
+
+public final class kotlinx/serialization/internal/BooleanDescriptor : kotlinx/serialization/internal/Migration {
+ public static final field INSTANCE Lkotlinx/serialization/internal/BooleanDescriptor;
+}
+
+public final class kotlinx/serialization/internal/BooleanSerializer : kotlinx/serialization/KSerializer {
+ public static final field INSTANCE Lkotlinx/serialization/internal/BooleanSerializer;
+ public fun deserialize (Lkotlinx/serialization/Decoder;)Ljava/lang/Boolean;
+ public synthetic fun deserialize (Lkotlinx/serialization/Decoder;)Ljava/lang/Object;
+ public fun getDescriptor ()Lkotlinx/serialization/SerialDescriptor;
+ public synthetic fun patch (Lkotlinx/serialization/Decoder;Ljava/lang/Object;)Ljava/lang/Object;
+ public fun patch (Lkotlinx/serialization/Decoder;Z)Ljava/lang/Boolean;
+ public synthetic fun serialize (Lkotlinx/serialization/Encoder;Ljava/lang/Object;)V
+ public fun serialize (Lkotlinx/serialization/Encoder;Z)V
+}
+
+public final class kotlinx/serialization/internal/ByteArrayBuilder : kotlinx/serialization/internal/PrimitiveArrayBuilder {
+ public synthetic fun build$kotlinx_serialization_runtime ()Ljava/lang/Object;
+}
+
+public final class kotlinx/serialization/internal/ByteArraySerializer : kotlinx/serialization/internal/PrimitiveArraySerializer, kotlinx/serialization/KSerializer {
+ public static final field INSTANCE Lkotlinx/serialization/internal/ByteArraySerializer;
+ public synthetic fun collectionSize (Ljava/lang/Object;)I
+ public synthetic fun empty ()Ljava/lang/Object;
+ public synthetic fun patch (Lkotlinx/serialization/Decoder;Ljava/lang/Object;)Ljava/lang/Object;
+ public fun patch (Lkotlinx/serialization/Decoder;[B)[B
+ public synthetic fun readElement (Lkotlinx/serialization/CompositeDecoder;ILjava/lang/Object;Z)V
+ public synthetic fun readElement (Lkotlinx/serialization/CompositeDecoder;ILkotlinx/serialization/internal/PrimitiveArrayBuilder;Z)V
+ public synthetic fun toBuilder (Ljava/lang/Object;)Ljava/lang/Object;
+ public synthetic fun writeContent (Lkotlinx/serialization/CompositeEncoder;Ljava/lang/Object;I)V
+}
+
+public final class kotlinx/serialization/internal/ByteDescriptor : kotlinx/serialization/internal/Migration {
+ public static final field INSTANCE Lkotlinx/serialization/internal/ByteDescriptor;
+}
+
+public final class kotlinx/serialization/internal/ByteSerializer : kotlinx/serialization/KSerializer {
+ public static final field INSTANCE Lkotlinx/serialization/internal/ByteSerializer;
+ public fun deserialize (Lkotlinx/serialization/Decoder;)Ljava/lang/Byte;
+ public synthetic fun deserialize (Lkotlinx/serialization/Decoder;)Ljava/lang/Object;
+ public fun getDescriptor ()Lkotlinx/serialization/SerialDescriptor;
+ public fun patch (Lkotlinx/serialization/Decoder;B)Ljava/lang/Byte;
+ public synthetic fun patch (Lkotlinx/serialization/Decoder;Ljava/lang/Object;)Ljava/lang/Object;
+ public fun serialize (Lkotlinx/serialization/Encoder;B)V
+ public synthetic fun serialize (Lkotlinx/serialization/Encoder;Ljava/lang/Object;)V
+}
+
+public final class kotlinx/serialization/internal/CharArrayBuilder : kotlinx/serialization/internal/PrimitiveArrayBuilder {
+ public synthetic fun build$kotlinx_serialization_runtime ()Ljava/lang/Object;
+}
+
+public final class kotlinx/serialization/internal/CharArraySerializer : kotlinx/serialization/internal/PrimitiveArraySerializer, kotlinx/serialization/KSerializer {
+ public static final field INSTANCE Lkotlinx/serialization/internal/CharArraySerializer;
+ public synthetic fun collectionSize (Ljava/lang/Object;)I
+ public synthetic fun empty ()Ljava/lang/Object;
+ public synthetic fun patch (Lkotlinx/serialization/Decoder;Ljava/lang/Object;)Ljava/lang/Object;
+ public fun patch (Lkotlinx/serialization/Decoder;[C)[C
+ public synthetic fun readElement (Lkotlinx/serialization/CompositeDecoder;ILjava/lang/Object;Z)V
+ public synthetic fun readElement (Lkotlinx/serialization/CompositeDecoder;ILkotlinx/serialization/internal/PrimitiveArrayBuilder;Z)V
+ public synthetic fun toBuilder (Ljava/lang/Object;)Ljava/lang/Object;
+ public synthetic fun writeContent (Lkotlinx/serialization/CompositeEncoder;Ljava/lang/Object;I)V
+}
+
+public final class kotlinx/serialization/internal/CharDescriptor : kotlinx/serialization/internal/Migration {
+ public static final field INSTANCE Lkotlinx/serialization/internal/CharDescriptor;
+}
+
+public final class kotlinx/serialization/internal/CharSerializer : kotlinx/serialization/KSerializer {
+ public static final field INSTANCE Lkotlinx/serialization/internal/CharSerializer;
+ public fun deserialize (Lkotlinx/serialization/Decoder;)Ljava/lang/Character;
+ public synthetic fun deserialize (Lkotlinx/serialization/Decoder;)Ljava/lang/Object;
+ public fun getDescriptor ()Lkotlinx/serialization/SerialDescriptor;
+ public fun patch (Lkotlinx/serialization/Decoder;C)Ljava/lang/Character;
+ public synthetic fun patch (Lkotlinx/serialization/Decoder;Ljava/lang/Object;)Ljava/lang/Object;
+ public fun serialize (Lkotlinx/serialization/Encoder;C)V
+ public synthetic fun serialize (Lkotlinx/serialization/Encoder;Ljava/lang/Object;)V
+}
+
+public final class kotlinx/serialization/internal/DoubleArrayBuilder : kotlinx/serialization/internal/PrimitiveArrayBuilder {
+ public synthetic fun build$kotlinx_serialization_runtime ()Ljava/lang/Object;
+}
+
+public final class kotlinx/serialization/internal/DoubleArraySerializer : kotlinx/serialization/internal/PrimitiveArraySerializer, kotlinx/serialization/KSerializer {
+ public static final field INSTANCE Lkotlinx/serialization/internal/DoubleArraySerializer;
+ public synthetic fun collectionSize (Ljava/lang/Object;)I
+ public synthetic fun empty ()Ljava/lang/Object;
+ public synthetic fun patch (Lkotlinx/serialization/Decoder;Ljava/lang/Object;)Ljava/lang/Object;
+ public fun patch (Lkotlinx/serialization/Decoder;[D)[D
+ public synthetic fun readElement (Lkotlinx/serialization/CompositeDecoder;ILjava/lang/Object;Z)V
+ public synthetic fun readElement (Lkotlinx/serialization/CompositeDecoder;ILkotlinx/serialization/internal/PrimitiveArrayBuilder;Z)V
+ public synthetic fun toBuilder (Ljava/lang/Object;)Ljava/lang/Object;
+ public synthetic fun writeContent (Lkotlinx/serialization/CompositeEncoder;Ljava/lang/Object;I)V
+}
+
+public final class kotlinx/serialization/internal/DoubleDescriptor : kotlinx/serialization/internal/Migration {
+ public static final field INSTANCE Lkotlinx/serialization/internal/DoubleDescriptor;
+}
+
+public final class kotlinx/serialization/internal/DoubleSerializer : kotlinx/serialization/KSerializer {
+ public static final field INSTANCE Lkotlinx/serialization/internal/DoubleSerializer;
+ public fun deserialize (Lkotlinx/serialization/Decoder;)Ljava/lang/Double;
+ public synthetic fun deserialize (Lkotlinx/serialization/Decoder;)Ljava/lang/Object;
+ public fun getDescriptor ()Lkotlinx/serialization/SerialDescriptor;
+ public fun patch (Lkotlinx/serialization/Decoder;D)Ljava/lang/Double;
+ public synthetic fun patch (Lkotlinx/serialization/Decoder;Ljava/lang/Object;)Ljava/lang/Object;
+ public fun serialize (Lkotlinx/serialization/Encoder;D)V
+ public synthetic fun serialize (Lkotlinx/serialization/Encoder;Ljava/lang/Object;)V
+}
+
+public final class kotlinx/serialization/internal/EnumDescriptor : kotlinx/serialization/internal/SerialClassDescImpl {
+ public fun <init> (Ljava/lang/String;I)V
+ public fun equals (Ljava/lang/Object;)Z
+ public fun getElementDescriptor (I)Lkotlinx/serialization/SerialDescriptor;
+ public fun getKind ()Lkotlinx/serialization/SerialKind;
+ public fun hashCode ()I
+ public fun toString ()Ljava/lang/String;
+}
+
+public final class kotlinx/serialization/internal/EnumSerializer : kotlinx/serialization/KSerializer {
+ public fun <init> (Ljava/lang/String;[Ljava/lang/Enum;)V
+ public fun deserialize (Lkotlinx/serialization/Decoder;)Ljava/lang/Enum;
+ public synthetic fun deserialize (Lkotlinx/serialization/Decoder;)Ljava/lang/Object;
+ public fun getDescriptor ()Lkotlinx/serialization/SerialDescriptor;
+ public fun patch (Lkotlinx/serialization/Decoder;Ljava/lang/Enum;)Ljava/lang/Enum;
+ public synthetic fun patch (Lkotlinx/serialization/Decoder;Ljava/lang/Object;)Ljava/lang/Object;
+ public fun serialize (Lkotlinx/serialization/Encoder;Ljava/lang/Enum;)V
+ public synthetic fun serialize (Lkotlinx/serialization/Encoder;Ljava/lang/Object;)V
+}
+
+public final class kotlinx/serialization/internal/FloatArrayBuilder : kotlinx/serialization/internal/PrimitiveArrayBuilder {
+ public synthetic fun build$kotlinx_serialization_runtime ()Ljava/lang/Object;
+}
+
+public final class kotlinx/serialization/internal/FloatArraySerializer : kotlinx/serialization/internal/PrimitiveArraySerializer, kotlinx/serialization/KSerializer {
+ public static final field INSTANCE Lkotlinx/serialization/internal/FloatArraySerializer;
+ public synthetic fun collectionSize (Ljava/lang/Object;)I
+ public synthetic fun empty ()Ljava/lang/Object;
+ public synthetic fun patch (Lkotlinx/serialization/Decoder;Ljava/lang/Object;)Ljava/lang/Object;
+ public fun patch (Lkotlinx/serialization/Decoder;[F)[F
+ public synthetic fun readElement (Lkotlinx/serialization/CompositeDecoder;ILjava/lang/Object;Z)V
+ public synthetic fun readElement (Lkotlinx/serialization/CompositeDecoder;ILkotlinx/serialization/internal/PrimitiveArrayBuilder;Z)V
+ public synthetic fun toBuilder (Ljava/lang/Object;)Ljava/lang/Object;
+ public synthetic fun writeContent (Lkotlinx/serialization/CompositeEncoder;Ljava/lang/Object;I)V
+}
+
+public final class kotlinx/serialization/internal/FloatDescriptor : kotlinx/serialization/internal/Migration {
+ public static final field INSTANCE Lkotlinx/serialization/internal/FloatDescriptor;
+}
+
+public final class kotlinx/serialization/internal/FloatSerializer : kotlinx/serialization/KSerializer {
+ public static final field INSTANCE Lkotlinx/serialization/internal/FloatSerializer;
+ public fun deserialize (Lkotlinx/serialization/Decoder;)Ljava/lang/Float;
+ public synthetic fun deserialize (Lkotlinx/serialization/Decoder;)Ljava/lang/Object;
+ public fun getDescriptor ()Lkotlinx/serialization/SerialDescriptor;
+ public fun patch (Lkotlinx/serialization/Decoder;F)Ljava/lang/Float;
+ public synthetic fun patch (Lkotlinx/serialization/Decoder;Ljava/lang/Object;)Ljava/lang/Object;
+ public fun serialize (Lkotlinx/serialization/Encoder;F)V
+ public synthetic fun serialize (Lkotlinx/serialization/Encoder;Ljava/lang/Object;)V
+}
+
+public abstract interface class kotlinx/serialization/internal/GeneratedSerializer : kotlinx/serialization/KSerializer {
+ public abstract fun childSerializers ()[Lkotlinx/serialization/KSerializer;
+ public abstract fun typeParametersSerializers ()[Lkotlinx/serialization/KSerializer;
+}
+
+public final class kotlinx/serialization/internal/GeneratedSerializer$DefaultImpls {
+ public static fun patch (Lkotlinx/serialization/internal/GeneratedSerializer;Lkotlinx/serialization/Decoder;Ljava/lang/Object;)Ljava/lang/Object;
+ public static fun typeParametersSerializers (Lkotlinx/serialization/internal/GeneratedSerializer;)[Lkotlinx/serialization/KSerializer;
+}
+
+public final class kotlinx/serialization/internal/HashMapSerializer : kotlinx/serialization/internal/MapLikeSerializer {
+ public fun <init> (Lkotlinx/serialization/KSerializer;Lkotlinx/serialization/KSerializer;)V
+ public synthetic fun builder ()Ljava/lang/Object;
+ public synthetic fun builderSize (Ljava/lang/Object;)I
+ public synthetic fun checkCapacity (Ljava/lang/Object;I)V
+ public synthetic fun collectionIterator (Ljava/lang/Object;)Ljava/util/Iterator;
+ public synthetic fun collectionSize (Ljava/lang/Object;)I
+ public fun getDescriptor ()Lkotlinx/serialization/SerialDescriptor;
+ public synthetic fun insertKeyValuePair (Ljava/util/Map;ILjava/lang/Object;Ljava/lang/Object;)V
+ public synthetic fun toBuilder (Ljava/lang/Object;)Ljava/lang/Object;
+ public synthetic fun toResult (Ljava/lang/Object;)Ljava/lang/Object;
+}
+
+public final class kotlinx/serialization/internal/HashSetSerializer : kotlinx/serialization/internal/ListLikeSerializer {
+ public fun <init> (Lkotlinx/serialization/KSerializer;)V
+ public synthetic fun builder ()Ljava/lang/Object;
+ public synthetic fun builderSize (Ljava/lang/Object;)I
+ public synthetic fun checkCapacity (Ljava/lang/Object;I)V
+ public synthetic fun collectionIterator (Ljava/lang/Object;)Ljava/util/Iterator;
+ public synthetic fun collectionSize (Ljava/lang/Object;)I
+ public fun getDescriptor ()Lkotlinx/serialization/SerialDescriptor;
+ public synthetic fun insert (Ljava/lang/Object;ILjava/lang/Object;)V
+ public synthetic fun toBuilder (Ljava/lang/Object;)Ljava/lang/Object;
+ public synthetic fun toResult (Ljava/lang/Object;)Ljava/lang/Object;
+}
+
+public final class kotlinx/serialization/internal/HexConverter {
+ public static final field INSTANCE Lkotlinx/serialization/internal/HexConverter;
+ public final fun parseHexBinary (Ljava/lang/String;)[B
+ public final fun printHexBinary ([BZ)Ljava/lang/String;
+ public static synthetic fun printHexBinary$default (Lkotlinx/serialization/internal/HexConverter;[BZILjava/lang/Object;)Ljava/lang/String;
+ public final fun toHexString (I)Ljava/lang/String;
+}
+
+public final class kotlinx/serialization/internal/IntArrayBuilder : kotlinx/serialization/internal/PrimitiveArrayBuilder {
+ public synthetic fun build$kotlinx_serialization_runtime ()Ljava/lang/Object;
+}
+
+public final class kotlinx/serialization/internal/IntArraySerializer : kotlinx/serialization/internal/PrimitiveArraySerializer, kotlinx/serialization/KSerializer {
+ public static final field INSTANCE Lkotlinx/serialization/internal/IntArraySerializer;
+ public synthetic fun collectionSize (Ljava/lang/Object;)I
+ public synthetic fun empty ()Ljava/lang/Object;
+ public synthetic fun patch (Lkotlinx/serialization/Decoder;Ljava/lang/Object;)Ljava/lang/Object;
+ public fun patch (Lkotlinx/serialization/Decoder;[I)[I
+ public synthetic fun readElement (Lkotlinx/serialization/CompositeDecoder;ILjava/lang/Object;Z)V
+ public synthetic fun readElement (Lkotlinx/serialization/CompositeDecoder;ILkotlinx/serialization/internal/PrimitiveArrayBuilder;Z)V
+ public synthetic fun toBuilder (Ljava/lang/Object;)Ljava/lang/Object;
+ public synthetic fun writeContent (Lkotlinx/serialization/CompositeEncoder;Ljava/lang/Object;I)V
+}
+
+public final class kotlinx/serialization/internal/IntDescriptor : kotlinx/serialization/internal/Migration {
+ public static final field INSTANCE Lkotlinx/serialization/internal/IntDescriptor;
+}
+
+public final class kotlinx/serialization/internal/IntSerializer : kotlinx/serialization/KSerializer {
+ public static final field INSTANCE Lkotlinx/serialization/internal/IntSerializer;
+ public fun deserialize (Lkotlinx/serialization/Decoder;)Ljava/lang/Integer;
+ public synthetic fun deserialize (Lkotlinx/serialization/Decoder;)Ljava/lang/Object;
+ public fun getDescriptor ()Lkotlinx/serialization/SerialDescriptor;
+ public fun patch (Lkotlinx/serialization/Decoder;I)Ljava/lang/Integer;
+ public synthetic fun patch (Lkotlinx/serialization/Decoder;Ljava/lang/Object;)Ljava/lang/Object;
+ public fun serialize (Lkotlinx/serialization/Encoder;I)V
+ public synthetic fun serialize (Lkotlinx/serialization/Encoder;Ljava/lang/Object;)V
+}
+
+public abstract class kotlinx/serialization/internal/KeyValueSerializer : kotlinx/serialization/KSerializer {
+ public synthetic fun <init> (Lkotlinx/serialization/KSerializer;Lkotlinx/serialization/KSerializer;Lkotlin/jvm/internal/DefaultConstructorMarker;)V
+ public fun deserialize (Lkotlinx/serialization/Decoder;)Ljava/lang/Object;
+ protected abstract fun getKey (Ljava/lang/Object;)Ljava/lang/Object;
+ protected final fun getKeySerializer ()Lkotlinx/serialization/KSerializer;
+ protected abstract fun getValue (Ljava/lang/Object;)Ljava/lang/Object;
+ protected final fun getValueSerializer ()Lkotlinx/serialization/KSerializer;
+ public fun patch (Lkotlinx/serialization/Decoder;Ljava/lang/Object;)Ljava/lang/Object;
+ public fun serialize (Lkotlinx/serialization/Encoder;Ljava/lang/Object;)V
+ protected abstract fun toResult (Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
+}
+
+public final class kotlinx/serialization/internal/LinkedHashMapSerializer : kotlinx/serialization/internal/MapLikeSerializer {
+ public fun <init> (Lkotlinx/serialization/KSerializer;Lkotlinx/serialization/KSerializer;)V
+ public synthetic fun builder ()Ljava/lang/Object;
+ public synthetic fun builderSize (Ljava/lang/Object;)I
+ public synthetic fun checkCapacity (Ljava/lang/Object;I)V
+ public synthetic fun collectionIterator (Ljava/lang/Object;)Ljava/util/Iterator;
+ public synthetic fun collectionSize (Ljava/lang/Object;)I
+ public fun getDescriptor ()Lkotlinx/serialization/SerialDescriptor;
+ public synthetic fun insertKeyValuePair (Ljava/util/Map;ILjava/lang/Object;Ljava/lang/Object;)V
+ public synthetic fun toBuilder (Ljava/lang/Object;)Ljava/lang/Object;
+ public synthetic fun toResult (Ljava/lang/Object;)Ljava/lang/Object;
+}
+
+public final class kotlinx/serialization/internal/LinkedHashSetSerializer : kotlinx/serialization/internal/ListLikeSerializer {
+ public fun <init> (Lkotlinx/serialization/KSerializer;)V
+ public synthetic fun builder ()Ljava/lang/Object;
+ public synthetic fun builderSize (Ljava/lang/Object;)I
+ public synthetic fun checkCapacity (Ljava/lang/Object;I)V
+ public synthetic fun collectionIterator (Ljava/lang/Object;)Ljava/util/Iterator;
+ public synthetic fun collectionSize (Ljava/lang/Object;)I
+ public fun getDescriptor ()Lkotlinx/serialization/SerialDescriptor;
+ public synthetic fun insert (Ljava/lang/Object;ILjava/lang/Object;)V
+ public synthetic fun toBuilder (Ljava/lang/Object;)Ljava/lang/Object;
+ public synthetic fun toResult (Ljava/lang/Object;)Ljava/lang/Object;
+}
+
+public abstract class kotlinx/serialization/internal/ListLikeSerializer : kotlinx/serialization/internal/AbstractCollectionSerializer {
+ public synthetic fun <init> (Lkotlinx/serialization/KSerializer;Lkotlin/jvm/internal/DefaultConstructorMarker;)V
+ public abstract fun getDescriptor ()Lkotlinx/serialization/SerialDescriptor;
+ protected abstract fun insert (Ljava/lang/Object;ILjava/lang/Object;)V
+ protected final fun readAll (Lkotlinx/serialization/CompositeDecoder;Ljava/lang/Object;II)V
+ protected fun readElement (Lkotlinx/serialization/CompositeDecoder;ILjava/lang/Object;Z)V
+ public fun serialize (Lkotlinx/serialization/Encoder;Ljava/lang/Object;)V
+}
+
+public final class kotlinx/serialization/internal/LongArrayBuilder : kotlinx/serialization/internal/PrimitiveArrayBuilder {
+ public synthetic fun build$kotlinx_serialization_runtime ()Ljava/lang/Object;
+}
+
+public final class kotlinx/serialization/internal/LongArraySerializer : kotlinx/serialization/internal/PrimitiveArraySerializer, kotlinx/serialization/KSerializer {
+ public static final field INSTANCE Lkotlinx/serialization/internal/LongArraySerializer;
+ public synthetic fun collectionSize (Ljava/lang/Object;)I
+ public synthetic fun empty ()Ljava/lang/Object;
+ public synthetic fun patch (Lkotlinx/serialization/Decoder;Ljava/lang/Object;)Ljava/lang/Object;
+ public fun patch (Lkotlinx/serialization/Decoder;[J)[J
+ public synthetic fun readElement (Lkotlinx/serialization/CompositeDecoder;ILjava/lang/Object;Z)V
+ public synthetic fun readElement (Lkotlinx/serialization/CompositeDecoder;ILkotlinx/serialization/internal/PrimitiveArrayBuilder;Z)V
+ public synthetic fun toBuilder (Ljava/lang/Object;)Ljava/lang/Object;
+ public synthetic fun writeContent (Lkotlinx/serialization/CompositeEncoder;Ljava/lang/Object;I)V
+}
+
+public final class kotlinx/serialization/internal/LongDescriptor : kotlinx/serialization/internal/Migration {
+ public static final field INSTANCE Lkotlinx/serialization/internal/LongDescriptor;
+}
+
+public final class kotlinx/serialization/internal/LongSerializer : kotlinx/serialization/KSerializer {
+ public static final field INSTANCE Lkotlinx/serialization/internal/LongSerializer;
+ public fun deserialize (Lkotlinx/serialization/Decoder;)Ljava/lang/Long;
+ public synthetic fun deserialize (Lkotlinx/serialization/Decoder;)Ljava/lang/Object;
+ public fun getDescriptor ()Lkotlinx/serialization/SerialDescriptor;
+ public fun patch (Lkotlinx/serialization/Decoder;J)Ljava/lang/Long;
+ public synthetic fun patch (Lkotlinx/serialization/Decoder;Ljava/lang/Object;)Ljava/lang/Object;
+ public fun serialize (Lkotlinx/serialization/Encoder;J)V
+ public synthetic fun serialize (Lkotlinx/serialization/Encoder;Ljava/lang/Object;)V
+}
+
+public final class kotlinx/serialization/internal/MapEntrySerializer : kotlinx/serialization/internal/KeyValueSerializer {
+ public fun <init> (Lkotlinx/serialization/KSerializer;Lkotlinx/serialization/KSerializer;)V
+ public fun getDescriptor ()Lkotlinx/serialization/SerialDescriptor;
+ public synthetic fun getKey (Ljava/lang/Object;)Ljava/lang/Object;
+ public synthetic fun getValue (Ljava/lang/Object;)Ljava/lang/Object;
+ public synthetic fun toResult (Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
+}
+
+public abstract class kotlinx/serialization/internal/MapLikeSerializer : kotlinx/serialization/internal/AbstractCollectionSerializer {
+ public synthetic fun <init> (Lkotlinx/serialization/KSerializer;Lkotlinx/serialization/KSerializer;Lkotlin/jvm/internal/DefaultConstructorMarker;)V
+ public abstract fun getDescriptor ()Lkotlinx/serialization/SerialDescriptor;
+ public final fun getKeySerializer ()Lkotlinx/serialization/KSerializer;
+ public final fun getValueSerializer ()Lkotlinx/serialization/KSerializer;
+ protected abstract fun insertKeyValuePair (Ljava/util/Map;ILjava/lang/Object;Ljava/lang/Object;)V
+ public synthetic fun readAll (Lkotlinx/serialization/CompositeDecoder;Ljava/lang/Object;II)V
+ protected final fun readAll (Lkotlinx/serialization/CompositeDecoder;Ljava/util/Map;II)V
+ public synthetic fun readElement (Lkotlinx/serialization/CompositeDecoder;ILjava/lang/Object;Z)V
+ protected final fun readElement (Lkotlinx/serialization/CompositeDecoder;ILjava/util/Map;Z)V
+ public fun serialize (Lkotlinx/serialization/Encoder;Ljava/lang/Object;)V
+}
+
+public class kotlinx/serialization/internal/Migration : kotlinx/serialization/SerialDescriptor {
+ public fun <init> ()V
+ public fun getAnnotations ()Ljava/util/List;
+ public fun getElementAnnotations (I)Ljava/util/List;
+ public fun getElementDescriptor (I)Lkotlinx/serialization/SerialDescriptor;
+ public fun getElementIndex (Ljava/lang/String;)I
+ public fun getElementName (I)Ljava/lang/String;
+ public fun getElementsCount ()I
+ public fun getKind ()Lkotlinx/serialization/SerialKind;
+ public fun getSerialName ()Ljava/lang/String;
+ public fun isElementOptional (I)Z
+ public fun isNullable ()Z
+}
+
+public abstract class kotlinx/serialization/internal/NamedValueDecoder : kotlinx/serialization/internal/TaggedDecoder {
+ public fun <init> ()V
+ public fun <init> (Ljava/lang/String;)V
+ public synthetic fun <init> (Ljava/lang/String;ILkotlin/jvm/internal/DefaultConstructorMarker;)V
+ protected fun composeName (Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
+ protected fun elementName (Lkotlinx/serialization/SerialDescriptor;I)Ljava/lang/String;
+ protected final fun getRootName ()Ljava/lang/String;
+ public synthetic fun getTag (Lkotlinx/serialization/SerialDescriptor;I)Ljava/lang/Object;
+ protected final fun getTag (Lkotlinx/serialization/SerialDescriptor;I)Ljava/lang/String;
+ protected final fun nested (Ljava/lang/String;)Ljava/lang/String;
+}
+
+public abstract class kotlinx/serialization/internal/NamedValueEncoder : kotlinx/serialization/internal/TaggedEncoder {
+ public fun <init> ()V
+ public fun <init> (Ljava/lang/String;)V
+ public synthetic fun <init> (Ljava/lang/String;ILkotlin/jvm/internal/DefaultConstructorMarker;)V
+ protected fun composeName (Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
+ protected fun elementName (Lkotlinx/serialization/SerialDescriptor;I)Ljava/lang/String;
+ protected final fun getRootName ()Ljava/lang/String;
+ public synthetic fun getTag (Lkotlinx/serialization/SerialDescriptor;I)Ljava/lang/Object;
+ protected final fun getTag (Lkotlinx/serialization/SerialDescriptor;I)Ljava/lang/String;
+ protected final fun nested (Ljava/lang/String;)Ljava/lang/String;
+}
+
+public final class kotlinx/serialization/internal/NullableSerializer : kotlinx/serialization/KSerializer {
+ public fun <init> (Lkotlinx/serialization/KSerializer;)V
+ public fun deserialize (Lkotlinx/serialization/Decoder;)Ljava/lang/Object;
+ public fun equals (Ljava/lang/Object;)Z
+ public fun getDescriptor ()Lkotlinx/serialization/SerialDescriptor;
+ public fun hashCode ()I
+ public fun patch (Lkotlinx/serialization/Decoder;Ljava/lang/Object;)Ljava/lang/Object;
+ public fun serialize (Lkotlinx/serialization/Encoder;Ljava/lang/Object;)V
+}
+
+public final class kotlinx/serialization/internal/NullableSerializerKt {
+ public static final fun makeNullable (Lkotlinx/serialization/KSerializer;)Lkotlinx/serialization/KSerializer;
+}
+
+public final class kotlinx/serialization/internal/ObjectSerializer : kotlinx/serialization/KSerializer {
+ public fun <init> (Ljava/lang/String;Ljava/lang/Object;)V
+ public fun deserialize (Lkotlinx/serialization/Decoder;)Ljava/lang/Object;
+ public fun getDescriptor ()Lkotlinx/serialization/SerialDescriptor;
+ public fun patch (Lkotlinx/serialization/Decoder;Ljava/lang/Object;)Ljava/lang/Object;
+ public fun serialize (Lkotlinx/serialization/Encoder;Ljava/lang/Object;)V
+}
+
+public final class kotlinx/serialization/internal/PairSerializer : kotlinx/serialization/internal/KeyValueSerializer {
+ public fun <init> (Lkotlinx/serialization/KSerializer;Lkotlinx/serialization/KSerializer;)V
+ public fun getDescriptor ()Lkotlinx/serialization/SerialDescriptor;
+ public synthetic fun getKey (Ljava/lang/Object;)Ljava/lang/Object;
+ public synthetic fun getValue (Ljava/lang/Object;)Ljava/lang/Object;
+ public synthetic fun toResult (Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
+}
+
+public class kotlinx/serialization/internal/PluginGeneratedSerialDescriptor : kotlinx/serialization/SerialDescriptor {
+ public fun <init> (Ljava/lang/String;Lkotlinx/serialization/internal/GeneratedSerializer;I)V
+ public synthetic fun <init> (Ljava/lang/String;Lkotlinx/serialization/internal/GeneratedSerializer;IILkotlin/jvm/internal/DefaultConstructorMarker;)V
+ public final fun addElement (Ljava/lang/String;Z)V
+ public static synthetic fun addElement$default (Lkotlinx/serialization/internal/PluginGeneratedSerialDescriptor;Ljava/lang/String;ZILjava/lang/Object;)V
+ public fun equals (Ljava/lang/Object;)Z
+ public fun getAnnotations ()Ljava/util/List;
+ public fun getElementAnnotations (I)Ljava/util/List;
+ public fun getElementDescriptor (I)Lkotlinx/serialization/SerialDescriptor;
+ public fun getElementIndex (Ljava/lang/String;)I
+ public fun getElementName (I)Ljava/lang/String;
+ public final fun getElementsCount ()I
+ public fun getKind ()Lkotlinx/serialization/SerialKind;
+ public fun getSerialName ()Ljava/lang/String;
+ public fun hashCode ()I
+ public fun isElementOptional (I)Z
+ public fun isNullable ()Z
+ public final fun pushAnnotation (Ljava/lang/annotation/Annotation;)V
+ public final fun pushClassAnnotation (Ljava/lang/annotation/Annotation;)V
+ public fun toString ()Ljava/lang/String;
+}
+
+public abstract class kotlinx/serialization/internal/PrimitiveArrayBuilder {
+}
+
+public abstract class kotlinx/serialization/internal/PrimitiveArraySerializer : kotlinx/serialization/internal/ListLikeSerializer {
+ public synthetic fun builder ()Ljava/lang/Object;
+ protected final fun builder ()Lkotlinx/serialization/internal/PrimitiveArrayBuilder;
+ public synthetic fun builderSize (Ljava/lang/Object;)I
+ protected final fun builderSize (Lkotlinx/serialization/internal/PrimitiveArrayBuilder;)I
+ public synthetic fun checkCapacity (Ljava/lang/Object;I)V
+ protected final fun checkCapacity (Lkotlinx/serialization/internal/PrimitiveArrayBuilder;I)V
+ protected final fun collectionIterator (Ljava/lang/Object;)Ljava/util/Iterator;
+ public final fun deserialize (Lkotlinx/serialization/Decoder;)Ljava/lang/Object;
+ protected abstract fun empty ()Ljava/lang/Object;
+ public final fun getDescriptor ()Lkotlinx/serialization/SerialDescriptor;
+ public synthetic fun insert (Ljava/lang/Object;ILjava/lang/Object;)V
+ protected final fun insert (Lkotlinx/serialization/internal/PrimitiveArrayBuilder;ILjava/lang/Object;)V
+ protected abstract fun readElement (Lkotlinx/serialization/CompositeDecoder;ILkotlinx/serialization/internal/PrimitiveArrayBuilder;Z)V
+ public final fun serialize (Lkotlinx/serialization/Encoder;Ljava/lang/Object;)V
+ public synthetic fun toResult (Ljava/lang/Object;)Ljava/lang/Object;
+ protected final fun toResult (Lkotlinx/serialization/internal/PrimitiveArrayBuilder;)Ljava/lang/Object;
+ protected abstract fun writeContent (Lkotlinx/serialization/CompositeEncoder;Ljava/lang/Object;I)V
+}
+
+public final class kotlinx/serialization/internal/ReferenceArraySerializer : kotlinx/serialization/internal/ListLikeSerializer {
+ public fun <init> (Lkotlin/reflect/KClass;Lkotlinx/serialization/KSerializer;)V
+ public synthetic fun builder ()Ljava/lang/Object;
+ public synthetic fun builderSize (Ljava/lang/Object;)I
+ public synthetic fun checkCapacity (Ljava/lang/Object;I)V
+ public synthetic fun collectionIterator (Ljava/lang/Object;)Ljava/util/Iterator;
+ public synthetic fun collectionSize (Ljava/lang/Object;)I
+ public fun getDescriptor ()Lkotlinx/serialization/SerialDescriptor;
+ public synthetic fun insert (Ljava/lang/Object;ILjava/lang/Object;)V
+ public synthetic fun toBuilder (Ljava/lang/Object;)Ljava/lang/Object;
+ public synthetic fun toResult (Ljava/lang/Object;)Ljava/lang/Object;
+}
+
+public class kotlinx/serialization/internal/SerialClassDescImpl : kotlinx/serialization/internal/PluginGeneratedSerialDescriptor {
+ public fun <init> (Ljava/lang/String;Lkotlinx/serialization/internal/GeneratedSerializer;I)V
+ public synthetic fun <init> (Ljava/lang/String;Lkotlinx/serialization/internal/GeneratedSerializer;IILkotlin/jvm/internal/DefaultConstructorMarker;)V
+}
+
+public final class kotlinx/serialization/internal/SerializationConstructorMarker {
+}
+
+public abstract interface class kotlinx/serialization/internal/SerializerFactory {
+ public abstract fun serializer ([Lkotlinx/serialization/KSerializer;)Lkotlinx/serialization/KSerializer;
+}
+
+public final class kotlinx/serialization/internal/ShortArrayBuilder : kotlinx/serialization/internal/PrimitiveArrayBuilder {
+ public synthetic fun build$kotlinx_serialization_runtime ()Ljava/lang/Object;
+}
+
+public final class kotlinx/serialization/internal/ShortArraySerializer : kotlinx/serialization/internal/PrimitiveArraySerializer, kotlinx/serialization/KSerializer {
+ public static final field INSTANCE Lkotlinx/serialization/internal/ShortArraySerializer;
+ public synthetic fun collectionSize (Ljava/lang/Object;)I
+ public synthetic fun empty ()Ljava/lang/Object;
+ public synthetic fun patch (Lkotlinx/serialization/Decoder;Ljava/lang/Object;)Ljava/lang/Object;
+ public fun patch (Lkotlinx/serialization/Decoder;[S)[S
+ public synthetic fun readElement (Lkotlinx/serialization/CompositeDecoder;ILjava/lang/Object;Z)V
+ public synthetic fun readElement (Lkotlinx/serialization/CompositeDecoder;ILkotlinx/serialization/internal/PrimitiveArrayBuilder;Z)V
+ public synthetic fun toBuilder (Ljava/lang/Object;)Ljava/lang/Object;
+ public synthetic fun writeContent (Lkotlinx/serialization/CompositeEncoder;Ljava/lang/Object;I)V
+}
+
+public final class kotlinx/serialization/internal/ShortDescriptor : kotlinx/serialization/internal/Migration {
+ public static final field INSTANCE Lkotlinx/serialization/internal/ShortDescriptor;
+}
+
+public final class kotlinx/serialization/internal/ShortSerializer : kotlinx/serialization/KSerializer {
+ public static final field INSTANCE Lkotlinx/serialization/internal/ShortSerializer;
+ public synthetic fun deserialize (Lkotlinx/serialization/Decoder;)Ljava/lang/Object;
+ public fun deserialize (Lkotlinx/serialization/Decoder;)Ljava/lang/Short;
+ public fun getDescriptor ()Lkotlinx/serialization/SerialDescriptor;
+ public synthetic fun patch (Lkotlinx/serialization/Decoder;Ljava/lang/Object;)Ljava/lang/Object;
+ public fun patch (Lkotlinx/serialization/Decoder;S)Ljava/lang/Short;
+ public synthetic fun serialize (Lkotlinx/serialization/Encoder;Ljava/lang/Object;)V
+ public fun serialize (Lkotlinx/serialization/Encoder;S)V
+}
+
+public final class kotlinx/serialization/internal/StringDescriptor : kotlinx/serialization/internal/Migration {
+ public static final field INSTANCE Lkotlinx/serialization/internal/StringDescriptor;
+}
+
+public final class kotlinx/serialization/internal/StringSerializer : kotlinx/serialization/KSerializer {
+ public static final field INSTANCE Lkotlinx/serialization/internal/StringSerializer;
+ public synthetic fun deserialize (Lkotlinx/serialization/Decoder;)Ljava/lang/Object;
+ public fun deserialize (Lkotlinx/serialization/Decoder;)Ljava/lang/String;
+ public fun getDescriptor ()Lkotlinx/serialization/SerialDescriptor;
+ public synthetic fun patch (Lkotlinx/serialization/Decoder;Ljava/lang/Object;)Ljava/lang/Object;
+ public fun patch (Lkotlinx/serialization/Decoder;Ljava/lang/String;)Ljava/lang/String;
+ public synthetic fun serialize (Lkotlinx/serialization/Encoder;Ljava/lang/Object;)V
+ public fun serialize (Lkotlinx/serialization/Encoder;Ljava/lang/String;)V
+}
+
+public abstract class kotlinx/serialization/internal/TaggedDecoder : kotlinx/serialization/CompositeDecoder, kotlinx/serialization/Decoder {
+ public fun <init> ()V
+ public fun beginStructure (Lkotlinx/serialization/SerialDescriptor;)Lkotlinx/serialization/CompositeDecoder;
+ public fun beginStructure (Lkotlinx/serialization/SerialDescriptor;[Lkotlinx/serialization/KSerializer;)Lkotlinx/serialization/CompositeDecoder;
+ protected final fun copyTagsTo (Lkotlinx/serialization/internal/TaggedDecoder;)V
+ public final fun decodeBoolean ()Z
+ public final fun decodeBooleanElement (Lkotlinx/serialization/SerialDescriptor;I)Z
+ public final fun decodeByte ()B
+ public final fun decodeByteElement (Lkotlinx/serialization/SerialDescriptor;I)B
+ public final fun decodeChar ()C
+ public final fun decodeCharElement (Lkotlinx/serialization/SerialDescriptor;I)C
+ public fun decodeCollectionSize (Lkotlinx/serialization/SerialDescriptor;)I
+ public final fun decodeDouble ()D
+ public final fun decodeDoubleElement (Lkotlinx/serialization/SerialDescriptor;I)D
+ public final fun decodeEnum (Lkotlinx/serialization/SerialDescriptor;)I
+ public final fun decodeFloat ()F
+ public final fun decodeFloatElement (Lkotlinx/serialization/SerialDescriptor;I)F
+ public final fun decodeInt ()I
+ public final fun decodeIntElement (Lkotlinx/serialization/SerialDescriptor;I)I
+ public final fun decodeLong ()J
+ public final fun decodeLongElement (Lkotlinx/serialization/SerialDescriptor;I)J
+ public final fun decodeNotNullMark ()Z
+ public final fun decodeNull ()Ljava/lang/Void;
+ public fun decodeNullableSerializableElement (Lkotlinx/serialization/SerialDescriptor;ILkotlinx/serialization/DeserializationStrategy;)Ljava/lang/Object;
+ public final fun decodeNullableSerializableElement (Lkotlinx/serialization/SerialDescriptor;ILkotlinx/serialization/DeserializationStrategy;Ljava/lang/Object;)Ljava/lang/Object;
+ public fun decodeNullableSerializableValue (Lkotlinx/serialization/DeserializationStrategy;)Ljava/lang/Object;
+ public fun decodeSequentially ()Z
+ public fun decodeSerializableElement (Lkotlinx/serialization/SerialDescriptor;ILkotlinx/serialization/DeserializationStrategy;)Ljava/lang/Object;
+ public final fun decodeSerializableElement (Lkotlinx/serialization/SerialDescriptor;ILkotlinx/serialization/DeserializationStrategy;Ljava/lang/Object;)Ljava/lang/Object;
+ public fun decodeSerializableValue (Lkotlinx/serialization/DeserializationStrategy;)Ljava/lang/Object;
+ protected fun decodeSerializableValue (Lkotlinx/serialization/DeserializationStrategy;Ljava/lang/Object;)Ljava/lang/Object;
+ public final fun decodeShort ()S
+ public final fun decodeShortElement (Lkotlinx/serialization/SerialDescriptor;I)S
+ public final fun decodeString ()Ljava/lang/String;
+ public final fun decodeStringElement (Lkotlinx/serialization/SerialDescriptor;I)Ljava/lang/String;
+ protected fun decodeTaggedBoolean (Ljava/lang/Object;)Z
+ protected fun decodeTaggedByte (Ljava/lang/Object;)B
+ protected fun decodeTaggedChar (Ljava/lang/Object;)C
+ protected fun decodeTaggedDouble (Ljava/lang/Object;)D
+ protected fun decodeTaggedEnum (Ljava/lang/Object;Lkotlinx/serialization/SerialDescriptor;)I
+ protected fun decodeTaggedFloat (Ljava/lang/Object;)F
+ protected fun decodeTaggedInt (Ljava/lang/Object;)I
+ protected fun decodeTaggedLong (Ljava/lang/Object;)J
+ protected fun decodeTaggedNotNullMark (Ljava/lang/Object;)Z
+ protected fun decodeTaggedNull (Ljava/lang/Object;)Ljava/lang/Void;
+ protected fun decodeTaggedShort (Ljava/lang/Object;)S
+ protected fun decodeTaggedString (Ljava/lang/Object;)Ljava/lang/String;
+ protected fun decodeTaggedUnit (Ljava/lang/Object;)V
+ protected fun decodeTaggedValue (Ljava/lang/Object;)Ljava/lang/Object;
+ public final fun decodeUnit ()V
+ public final fun decodeUnitElement (Lkotlinx/serialization/SerialDescriptor;I)V
+ public fun endStructure (Lkotlinx/serialization/SerialDescriptor;)V
+ public fun getContext ()Lkotlinx/serialization/modules/SerialModule;
+ protected final fun getCurrentTag ()Ljava/lang/Object;
+ protected final fun getCurrentTagOrNull ()Ljava/lang/Object;
+ protected abstract fun getTag (Lkotlinx/serialization/SerialDescriptor;I)Ljava/lang/Object;
+ public fun getUpdateMode ()Lkotlinx/serialization/UpdateMode;
+ protected final fun popTag ()Ljava/lang/Object;
+ protected final fun pushTag (Ljava/lang/Object;)V
+ public fun updateNullableSerializableElement (Lkotlinx/serialization/SerialDescriptor;ILkotlinx/serialization/DeserializationStrategy;Ljava/lang/Object;)Ljava/lang/Object;
+ public fun updateNullableSerializableValue (Lkotlinx/serialization/DeserializationStrategy;Ljava/lang/Object;)Ljava/lang/Object;
+ public fun updateSerializableElement (Lkotlinx/serialization/SerialDescriptor;ILkotlinx/serialization/DeserializationStrategy;Ljava/lang/Object;)Ljava/lang/Object;
+ public fun updateSerializableValue (Lkotlinx/serialization/DeserializationStrategy;Ljava/lang/Object;)Ljava/lang/Object;
+}
+
+public abstract class kotlinx/serialization/internal/TaggedEncoder : kotlinx/serialization/CompositeEncoder, kotlinx/serialization/Encoder {
+ public fun <init> ()V
+ public fun beginCollection (Lkotlinx/serialization/SerialDescriptor;I)Lkotlinx/serialization/CompositeEncoder;
+ public fun beginCollection (Lkotlinx/serialization/SerialDescriptor;I[Lkotlinx/serialization/KSerializer;)Lkotlinx/serialization/CompositeEncoder;
+ public fun beginStructure (Lkotlinx/serialization/SerialDescriptor;)Lkotlinx/serialization/CompositeEncoder;
+ public fun beginStructure (Lkotlinx/serialization/SerialDescriptor;[Lkotlinx/serialization/KSerializer;)Lkotlinx/serialization/CompositeEncoder;
+ public final fun encodeBoolean (Z)V
+ public final fun encodeBooleanElement (Lkotlinx/serialization/SerialDescriptor;IZ)V
+ public final fun encodeByte (B)V
+ public final fun encodeByteElement (Lkotlinx/serialization/SerialDescriptor;IB)V
+ public final fun encodeChar (C)V
+ public final fun encodeCharElement (Lkotlinx/serialization/SerialDescriptor;IC)V
+ public final fun encodeDouble (D)V
+ public final fun encodeDoubleElement (Lkotlinx/serialization/SerialDescriptor;ID)V
+ public final fun encodeEnum (Lkotlinx/serialization/SerialDescriptor;I)V
+ public final fun encodeFloat (F)V
+ public final fun encodeFloatElement (Lkotlinx/serialization/SerialDescriptor;IF)V
+ public final fun encodeInt (I)V
+ public final fun encodeIntElement (Lkotlinx/serialization/SerialDescriptor;II)V
+ public final fun encodeLong (J)V
+ public final fun encodeLongElement (Lkotlinx/serialization/SerialDescriptor;IJ)V
+ public fun encodeNonSerializableElement (Lkotlinx/serialization/SerialDescriptor;ILjava/lang/Object;)V
+ public final fun encodeNotNullMark ()V
+ public final fun encodeNull ()V
+ public final fun encodeNullableSerializableElement (Lkotlinx/serialization/SerialDescriptor;ILkotlinx/serialization/SerializationStrategy;Ljava/lang/Object;)V
+ public fun encodeNullableSerializableValue (Lkotlinx/serialization/SerializationStrategy;Ljava/lang/Object;)V
+ public final fun encodeSerializableElement (Lkotlinx/serialization/SerialDescriptor;ILkotlinx/serialization/SerializationStrategy;Ljava/lang/Object;)V
+ public fun encodeSerializableValue (Lkotlinx/serialization/SerializationStrategy;Ljava/lang/Object;)V
+ public final fun encodeShort (S)V
+ public final fun encodeShortElement (Lkotlinx/serialization/SerialDescriptor;IS)V
+ public final fun encodeString (Ljava/lang/String;)V
+ public final fun encodeStringElement (Lkotlinx/serialization/SerialDescriptor;ILjava/lang/String;)V
+ protected fun encodeTaggedBoolean (Ljava/lang/Object;Z)V
+ protected fun encodeTaggedByte (Ljava/lang/Object;B)V
+ protected fun encodeTaggedChar (Ljava/lang/Object;C)V
+ protected fun encodeTaggedDouble (Ljava/lang/Object;D)V
+ protected fun encodeTaggedEnum (Ljava/lang/Object;Lkotlinx/serialization/SerialDescriptor;I)V
+ protected fun encodeTaggedFloat (Ljava/lang/Object;F)V
+ protected fun encodeTaggedInt (Ljava/lang/Object;I)V
+ protected fun encodeTaggedLong (Ljava/lang/Object;J)V
+ protected fun encodeTaggedNotNullMark (Ljava/lang/Object;)V
+ protected fun encodeTaggedNull (Ljava/lang/Object;)V
+ protected fun encodeTaggedShort (Ljava/lang/Object;S)V
+ protected fun encodeTaggedString (Ljava/lang/Object;Ljava/lang/String;)V
+ protected fun encodeTaggedUnit (Ljava/lang/Object;)V
+ protected fun encodeTaggedValue (Ljava/lang/Object;Ljava/lang/Object;)V
+ public final fun encodeUnit ()V
+ public final fun encodeUnitElement (Lkotlinx/serialization/SerialDescriptor;I)V
+ protected fun endEncode (Lkotlinx/serialization/SerialDescriptor;)V
+ public final fun endStructure (Lkotlinx/serialization/SerialDescriptor;)V
+ public fun getContext ()Lkotlinx/serialization/modules/SerialModule;
+ protected final fun getCurrentTag ()Ljava/lang/Object;
+ protected final fun getCurrentTagOrNull ()Ljava/lang/Object;
+ protected abstract fun getTag (Lkotlinx/serialization/SerialDescriptor;I)Ljava/lang/Object;
+ protected final fun popTag ()Ljava/lang/Object;
+ protected final fun pushTag (Ljava/lang/Object;)V
+ public fun shouldEncodeElementDefault (Lkotlinx/serialization/SerialDescriptor;I)Z
+}
+
+public final class kotlinx/serialization/internal/TripleSerializer : kotlinx/serialization/KSerializer {
+ public fun <init> (Lkotlinx/serialization/KSerializer;Lkotlinx/serialization/KSerializer;Lkotlinx/serialization/KSerializer;)V
+ public synthetic fun deserialize (Lkotlinx/serialization/Decoder;)Ljava/lang/Object;
+ public fun deserialize (Lkotlinx/serialization/Decoder;)Lkotlin/Triple;
+ public fun getDescriptor ()Lkotlinx/serialization/SerialDescriptor;
+ public synthetic fun patch (Lkotlinx/serialization/Decoder;Ljava/lang/Object;)Ljava/lang/Object;
+ public fun patch (Lkotlinx/serialization/Decoder;Lkotlin/Triple;)Lkotlin/Triple;
+ public synthetic fun serialize (Lkotlinx/serialization/Encoder;Ljava/lang/Object;)V
+ public fun serialize (Lkotlinx/serialization/Encoder;Lkotlin/Triple;)V
+}
+
+public final class kotlinx/serialization/internal/UnitDescriptor : kotlinx/serialization/internal/Migration {
+ public static final field INSTANCE Lkotlinx/serialization/internal/UnitDescriptor;
+}
+
+public final class kotlinx/serialization/internal/UnitSerializer : kotlinx/serialization/KSerializer {
+ public static final field INSTANCE Lkotlinx/serialization/internal/UnitSerializer;
+ public synthetic fun deserialize (Lkotlinx/serialization/Decoder;)Ljava/lang/Object;
+ public fun deserialize (Lkotlinx/serialization/Decoder;)V
+ public fun getDescriptor ()Lkotlinx/serialization/SerialDescriptor;
+ public synthetic fun patch (Lkotlinx/serialization/Decoder;Ljava/lang/Object;)Ljava/lang/Object;
+ public fun patch (Lkotlinx/serialization/Decoder;Lkotlin/Unit;)V
+ public synthetic fun serialize (Lkotlinx/serialization/Encoder;Ljava/lang/Object;)V
+ public fun serialize (Lkotlinx/serialization/Encoder;Lkotlin/Unit;)V
+}
+
+public final class kotlinx/serialization/internal/UtilKt {
+ public static final fun cast (Lkotlinx/serialization/DeserializationStrategy;)Lkotlinx/serialization/DeserializationStrategy;
+ public static final fun cast (Lkotlinx/serialization/KSerializer;)Lkotlinx/serialization/KSerializer;
+ public static final fun cast (Lkotlinx/serialization/SerializationStrategy;)Lkotlinx/serialization/SerializationStrategy;
+ public static final fun readExactNBytes (Lkotlinx/io/Input;I)[B
+}
+
+public final class kotlinx/serialization/json/Json : kotlinx/serialization/StringFormat {
+ public static final field Default Lkotlinx/serialization/json/Json$Default;
+ public fun <init> ()V
+ public fun <init> (Lkotlin/jvm/functions/Function1;)V
+ public fun <init> (Lkotlinx/serialization/json/JsonConfiguration;Lkotlinx/serialization/modules/SerialModule;)V
+ public synthetic fun <init> (Lkotlinx/serialization/json/JsonConfiguration;Lkotlinx/serialization/modules/SerialModule;ILkotlin/jvm/internal/DefaultConstructorMarker;)V
+ public final fun fromJson (Lkotlinx/serialization/DeserializationStrategy;Lkotlinx/serialization/json/JsonElement;)Ljava/lang/Object;
+ public fun getContext ()Lkotlinx/serialization/modules/SerialModule;
+ public fun parse (Lkotlinx/serialization/DeserializationStrategy;Ljava/lang/String;)Ljava/lang/Object;
+ public final fun parseJson (Ljava/lang/String;)Lkotlinx/serialization/json/JsonElement;
+ public fun stringify (Lkotlinx/serialization/SerializationStrategy;Ljava/lang/Object;)Ljava/lang/String;
+ public final fun toJson (Lkotlinx/serialization/SerializationStrategy;Ljava/lang/Object;)Lkotlinx/serialization/json/JsonElement;
+}
+
+public final class kotlinx/serialization/json/Json$Default : kotlinx/serialization/StringFormat {
+ public final fun fromJson (Lkotlinx/serialization/DeserializationStrategy;Lkotlinx/serialization/json/JsonElement;)Ljava/lang/Object;
+ public fun getContext ()Lkotlinx/serialization/modules/SerialModule;
+ public final fun getIndented ()Lkotlinx/serialization/json/Json;
+ public final fun getNonstrict ()Lkotlinx/serialization/json/Json;
+ public final fun getPlain ()Lkotlinx/serialization/json/Json;
+ public final fun getUnquoted ()Lkotlinx/serialization/json/Json;
+ public fun parse (Lkotlinx/serialization/DeserializationStrategy;Ljava/lang/String;)Ljava/lang/Object;
+ public final fun parseJson (Ljava/lang/String;)Lkotlinx/serialization/json/JsonElement;
+ public fun stringify (Lkotlinx/serialization/SerializationStrategy;Ljava/lang/Object;)Ljava/lang/String;
+ public final fun toJson (Lkotlinx/serialization/SerializationStrategy;Ljava/lang/Object;)Lkotlinx/serialization/json/JsonElement;
+}
+
+public final class kotlinx/serialization/json/JsonArray : kotlinx/serialization/json/JsonElement, java/util/List, kotlin/jvm/internal/markers/KMappedMarker {
+ public static final field Companion Lkotlinx/serialization/json/JsonArray$Companion;
+ public fun <init> (Ljava/util/List;)V
+ public synthetic fun add (ILjava/lang/Object;)V
+ public fun add (ILkotlinx/serialization/json/JsonElement;)V
+ public synthetic fun add (Ljava/lang/Object;)Z
+ public fun add (Lkotlinx/serialization/json/JsonElement;)Z
+ public fun addAll (ILjava/util/Collection;)Z
+ public fun addAll (Ljava/util/Collection;)Z
+ public fun clear ()V
+ public final fun component1 ()Ljava/util/List;
+ public final fun contains (Ljava/lang/Object;)Z
+ public fun contains (Lkotlinx/serialization/json/JsonElement;)Z
+ public fun containsAll (Ljava/util/Collection;)Z
+ public final fun copy (Ljava/util/List;)Lkotlinx/serialization/json/JsonArray;
+ public static synthetic fun copy$default (Lkotlinx/serialization/json/JsonArray;Ljava/util/List;ILjava/lang/Object;)Lkotlinx/serialization/json/JsonArray;
+ public fun equals (Ljava/lang/Object;)Z
+ public synthetic fun get (I)Ljava/lang/Object;
+ public fun get (I)Lkotlinx/serialization/json/JsonElement;
+ public final fun getArray (I)Lkotlinx/serialization/json/JsonArray;
+ public final fun getArrayOrNull (I)Lkotlinx/serialization/json/JsonArray;
+ public final fun getContent ()Ljava/util/List;
+ public fun getJsonArray ()Lkotlinx/serialization/json/JsonArray;
+ public final fun getObject (I)Lkotlinx/serialization/json/JsonObject;
+ public final fun getObjectOrNull (I)Lkotlinx/serialization/json/JsonObject;
+ public final fun getPrimitive (I)Lkotlinx/serialization/json/JsonPrimitive;
+ public final fun getPrimitiveOrNull (I)Lkotlinx/serialization/json/JsonPrimitive;
+ public fun getSize ()I
+ public fun hashCode ()I
+ public final fun indexOf (Ljava/lang/Object;)I
+ public fun indexOf (Lkotlinx/serialization/json/JsonElement;)I
+ public fun isEmpty ()Z
+ public fun iterator ()Ljava/util/Iterator;
+ public final fun lastIndexOf (Ljava/lang/Object;)I
+ public fun lastIndexOf (Lkotlinx/serialization/json/JsonElement;)I
+ public fun listIterator ()Ljava/util/ListIterator;
+ public fun listIterator (I)Ljava/util/ListIterator;
+ public synthetic fun remove (I)Ljava/lang/Object;
+ public fun remove (I)Lkotlinx/serialization/json/JsonElement;
+ public fun remove (Ljava/lang/Object;)Z
+ public fun removeAll (Ljava/util/Collection;)Z
+ public fun replaceAll (Ljava/util/function/UnaryOperator;)V
+ public fun retainAll (Ljava/util/Collection;)Z
+ public synthetic fun set (ILjava/lang/Object;)Ljava/lang/Object;
+ public fun set (ILkotlinx/serialization/json/JsonElement;)Lkotlinx/serialization/json/JsonElement;
+ public final fun size ()I
+ public fun sort (Ljava/util/Comparator;)V
+ public fun subList (II)Ljava/util/List;
+ public fun toArray ()[Ljava/lang/Object;
+ public fun toArray ([Ljava/lang/Object;)[Ljava/lang/Object;
+ public fun toString ()Ljava/lang/String;
+}
+
+public final class kotlinx/serialization/json/JsonArray$Companion {
+ public final fun serializer ()Lkotlinx/serialization/KSerializer;
+}
+
+public final class kotlinx/serialization/json/JsonArrayBuilder {
+ public final fun add (Ljava/lang/Boolean;)V
+ public final fun add (Ljava/lang/Number;)V
+ public final fun add (Ljava/lang/String;)V
+ public final fun add (Lkotlinx/serialization/json/JsonElement;)V
+ public final fun addArray (Lkotlin/jvm/functions/Function1;)V
+ public final fun addJson (Lkotlin/jvm/functions/Function1;)V
+ public final fun unaryPlus (Ljava/lang/Boolean;)V
+ public final fun unaryPlus (Ljava/lang/Number;)V
+ public final fun unaryPlus (Ljava/lang/String;)V
+ public final fun unaryPlus (Lkotlinx/serialization/json/JsonElement;)V
+}
+
+public final class kotlinx/serialization/json/JsonArraySerializer : kotlinx/serialization/KSerializer {
+ public static final field INSTANCE Lkotlinx/serialization/json/JsonArraySerializer;
+ public synthetic fun deserialize (Lkotlinx/serialization/Decoder;)Ljava/lang/Object;
+ public fun deserialize (Lkotlinx/serialization/Decoder;)Lkotlinx/serialization/json/JsonArray;
+ public fun getDescriptor ()Lkotlinx/serialization/SerialDescriptor;
+ public synthetic fun patch (Lkotlinx/serialization/Decoder;Ljava/lang/Object;)Ljava/lang/Object;
+ public fun patch (Lkotlinx/serialization/Decoder;Lkotlinx/serialization/json/JsonArray;)Lkotlinx/serialization/json/JsonArray;
+ public synthetic fun serialize (Lkotlinx/serialization/Encoder;Ljava/lang/Object;)V
+ public fun serialize (Lkotlinx/serialization/Encoder;Lkotlinx/serialization/json/JsonArray;)V
+}
+
+public final class kotlinx/serialization/json/JsonBuilder {
+ public fun <init> ()V
+ public final fun buildConfiguration ()Lkotlinx/serialization/json/JsonConfiguration;
+ public final fun buildModule ()Lkotlinx/serialization/modules/SerialModule;
+ public final fun getAllowStructuredMapKeys ()Z
+ public final fun getClassDiscriminator ()Ljava/lang/String;
+ public final fun getEncodeDefaults ()Z
+ public final fun getIgnoreUnknownKeys ()Z
+ public final fun getIndent ()Ljava/lang/String;
+ public final fun getPrettyPrint ()Z
+ public final fun getSerialModule ()Lkotlinx/serialization/modules/SerialModule;
+ public final fun getSerializeSpecialFloatingPointValues ()Z
+ public final fun getStrictMode ()Z
+ public final fun getUnquoted ()Z
+ public final fun getUnquotedPrint ()Z
+ public final fun getUseArrayPolymorphism ()Z
+ public final fun isLenient ()Z
+ public final fun setAllowStructuredMapKeys (Z)V
+ public final fun setClassDiscriminator (Ljava/lang/String;)V
+ public final fun setEncodeDefaults (Z)V
+ public final fun setIgnoreUnknownKeys (Z)V
+ public final fun setIndent (Ljava/lang/String;)V
+ public final fun setLenient (Z)V
+ public final fun setPrettyPrint (Z)V
+ public final fun setSerialModule (Lkotlinx/serialization/modules/SerialModule;)V
+ public final fun setSerializeSpecialFloatingPointValues (Z)V
+ public final fun setStrictMode (Z)V
+ public final fun setUnquoted (Z)V
+ public final fun setUnquotedPrint (Z)V
+ public final fun setUseArrayPolymorphism (Z)V
+}
+
+public final class kotlinx/serialization/json/JsonConfiguration {
+ public static final field Companion Lkotlinx/serialization/json/JsonConfiguration$Companion;
+ public fun <init> ()V
+ public fun <init> (ZZZZZZZLjava/lang/String;ZLjava/lang/String;)V
+ public synthetic fun <init> (ZZZZZZZLjava/lang/String;ZLjava/lang/String;ILkotlin/jvm/internal/DefaultConstructorMarker;)V
+ public final fun copy (ZZZZZZZLjava/lang/String;ZLjava/lang/String;)Lkotlinx/serialization/json/JsonConfiguration;
+ public static synthetic fun copy$default (Lkotlinx/serialization/json/JsonConfiguration;ZZZZZZZLjava/lang/String;ZLjava/lang/String;ILjava/lang/Object;)Lkotlinx/serialization/json/JsonConfiguration;
+ public fun equals (Ljava/lang/Object;)Z
+ public static final fun getDefault ()Lkotlinx/serialization/json/JsonConfiguration;
+ public static final fun getStable ()Lkotlinx/serialization/json/JsonConfiguration;
+ public fun hashCode ()I
+ public fun toString ()Ljava/lang/String;
+}
+
+public final class kotlinx/serialization/json/JsonConfiguration$Companion {
+ public final fun getDefault ()Lkotlinx/serialization/json/JsonConfiguration;
+ public final fun getStable ()Lkotlinx/serialization/json/JsonConfiguration;
+}
+
+public final class kotlinx/serialization/json/JsonConfigurationKt {
+ public static final fun JsonConfiguration (ZZ)V
+ public static synthetic fun JsonConfiguration$default (ZZILjava/lang/Object;)V
+}
+
+public final class kotlinx/serialization/json/JsonDecodingException : kotlinx/serialization/json/JsonException {
+ public fun <init> (ILjava/lang/String;)V
+}
+
+public abstract class kotlinx/serialization/json/JsonElement {
+ public static final field Companion Lkotlinx/serialization/json/JsonElement$Companion;
+ public final fun contains (Ljava/lang/String;)Z
+ public fun getJsonArray ()Lkotlinx/serialization/json/JsonArray;
+ public fun getJsonNull ()Lkotlinx/serialization/json/JsonNull;
+ public fun getJsonObject ()Lkotlinx/serialization/json/JsonObject;
+ public fun getPrimitive ()Lkotlinx/serialization/json/JsonPrimitive;
+ public final fun isNull ()Z
+}
+
+public final class kotlinx/serialization/json/JsonElement$Companion {
+ public final fun serializer ()Lkotlinx/serialization/KSerializer;
+}
+
+public final class kotlinx/serialization/json/JsonElementBuildersKt {
+ public static final fun buildJson (Lkotlin/jvm/functions/Function1;)Lkotlinx/serialization/json/JsonObject;
+ public static final fun buildJsonArray (Lkotlin/jvm/functions/Function1;)Lkotlinx/serialization/json/JsonArray;
+ public static final fun json (Lkotlin/jvm/functions/Function1;)Lkotlinx/serialization/json/JsonObject;
+ public static final fun jsonArray (Lkotlin/jvm/functions/Function1;)Lkotlinx/serialization/json/JsonArray;
+}
+
+public final class kotlinx/serialization/json/JsonElementKt {
+ public static final fun unexpectedJson (Ljava/lang/String;Ljava/lang/String;)Ljava/lang/Void;
+}
+
+public final class kotlinx/serialization/json/JsonElementSerializer : kotlinx/serialization/KSerializer {
+ public static final field INSTANCE Lkotlinx/serialization/json/JsonElementSerializer;
+ public synthetic fun deserialize (Lkotlinx/serialization/Decoder;)Ljava/lang/Object;
+ public fun deserialize (Lkotlinx/serialization/Decoder;)Lkotlinx/serialization/json/JsonElement;
+ public fun getDescriptor ()Lkotlinx/serialization/SerialDescriptor;
+ public synthetic fun patch (Lkotlinx/serialization/Decoder;Ljava/lang/Object;)Ljava/lang/Object;
+ public fun patch (Lkotlinx/serialization/Decoder;Lkotlinx/serialization/json/JsonElement;)Lkotlinx/serialization/json/JsonElement;
+ public synthetic fun serialize (Lkotlinx/serialization/Encoder;Ljava/lang/Object;)V
+ public fun serialize (Lkotlinx/serialization/Encoder;Lkotlinx/serialization/json/JsonElement;)V
+}
+
+public final class kotlinx/serialization/json/JsonElementsKt {
+ public static final fun JsonPrimitive (Ljava/lang/Boolean;)Lkotlinx/serialization/json/JsonPrimitive;
+ public static final fun JsonPrimitive (Ljava/lang/Number;)Lkotlinx/serialization/json/JsonPrimitive;
+ public static final fun JsonPrimitive (Ljava/lang/String;)Lkotlinx/serialization/json/JsonPrimitive;
+ public static final fun getBoolean (Lkotlinx/serialization/json/JsonElement;)Z
+ public static final fun getBooleanOrNull (Lkotlinx/serialization/json/JsonElement;)Ljava/lang/Boolean;
+ public static final fun getContent (Lkotlinx/serialization/json/JsonElement;)Ljava/lang/String;
+ public static final fun getContentOrNull (Lkotlinx/serialization/json/JsonElement;)Ljava/lang/String;
+ public static final fun getDouble (Lkotlinx/serialization/json/JsonElement;)D
+ public static final fun getDoubleOrNull (Lkotlinx/serialization/json/JsonElement;)Ljava/lang/Double;
+ public static final fun getFloat (Lkotlinx/serialization/json/JsonElement;)F
+ public static final fun getFloatOrNull (Lkotlinx/serialization/json/JsonElement;)Ljava/lang/Float;
+ public static final fun getInt (Lkotlinx/serialization/json/JsonElement;)I
+ public static final fun getIntOrNull (Lkotlinx/serialization/json/JsonElement;)Ljava/lang/Integer;
+ public static final fun getLong (Lkotlinx/serialization/json/JsonElement;)J
+ public static final fun getLongOrNull (Lkotlinx/serialization/json/JsonElement;)Ljava/lang/Long;
+}
+
+public final class kotlinx/serialization/json/JsonEncodingException : kotlinx/serialization/json/JsonException {
+ public fun <init> (Ljava/lang/String;)V
+}
+
+public class kotlinx/serialization/json/JsonException : kotlinx/serialization/SerializationException {
+ public fun <init> (Ljava/lang/String;)V
+}
+
+public abstract interface class kotlinx/serialization/json/JsonInput : kotlinx/serialization/CompositeDecoder, kotlinx/serialization/Decoder {
+ public abstract fun decodeJson ()Lkotlinx/serialization/json/JsonElement;
+ public abstract fun getJson ()Lkotlinx/serialization/json/Json;
+ public abstract synthetic fun getUpdateMode ()Lkotlinx/serialization/UpdateMode;
+}
+
+public final class kotlinx/serialization/json/JsonInput$DefaultImpls {
+ public static fun beginStructure (Lkotlinx/serialization/json/JsonInput;Lkotlinx/serialization/SerialDescriptor;)Lkotlinx/serialization/CompositeDecoder;
+ public static fun beginStructure (Lkotlinx/serialization/json/JsonInput;Lkotlinx/serialization/SerialDescriptor;[Lkotlinx/serialization/KSerializer;)Lkotlinx/serialization/CompositeDecoder;
+ public static fun decodeCollectionSize (Lkotlinx/serialization/json/JsonInput;Lkotlinx/serialization/SerialDescriptor;)I
+ public static fun decodeNullableSerializableElement (Lkotlinx/serialization/json/JsonInput;Lkotlinx/serialization/SerialDescriptor;ILkotlinx/serialization/DeserializationStrategy;)Ljava/lang/Object;
+ public static fun decodeNullableSerializableElement (Lkotlinx/serialization/json/JsonInput;Lkotlinx/serialization/SerialDescriptor;ILkotlinx/serialization/DeserializationStrategy;Ljava/lang/Object;)Ljava/lang/Object;
+ public static fun decodeNullableSerializableValue (Lkotlinx/serialization/json/JsonInput;Lkotlinx/serialization/DeserializationStrategy;)Ljava/lang/Object;
+ public static fun decodeSequentially (Lkotlinx/serialization/json/JsonInput;)Z
+ public static fun decodeSerializableElement (Lkotlinx/serialization/json/JsonInput;Lkotlinx/serialization/SerialDescriptor;ILkotlinx/serialization/DeserializationStrategy;)Ljava/lang/Object;
+ public static fun decodeSerializableElement (Lkotlinx/serialization/json/JsonInput;Lkotlinx/serialization/SerialDescriptor;ILkotlinx/serialization/DeserializationStrategy;Ljava/lang/Object;)Ljava/lang/Object;
+ public static fun decodeSerializableValue (Lkotlinx/serialization/json/JsonInput;Lkotlinx/serialization/DeserializationStrategy;)Ljava/lang/Object;
+ public static synthetic fun getUpdateMode (Lkotlinx/serialization/json/JsonInput;)Lkotlinx/serialization/UpdateMode;
+ public static fun updateNullableSerializableElement (Lkotlinx/serialization/json/JsonInput;Lkotlinx/serialization/SerialDescriptor;ILkotlinx/serialization/DeserializationStrategy;Ljava/lang/Object;)Ljava/lang/Object;
+ public static fun updateNullableSerializableValue (Lkotlinx/serialization/json/JsonInput;Lkotlinx/serialization/DeserializationStrategy;Ljava/lang/Object;)Ljava/lang/Object;
+ public static fun updateSerializableElement (Lkotlinx/serialization/json/JsonInput;Lkotlinx/serialization/SerialDescriptor;ILkotlinx/serialization/DeserializationStrategy;Ljava/lang/Object;)Ljava/lang/Object;
+ public static fun updateSerializableValue (Lkotlinx/serialization/json/JsonInput;Lkotlinx/serialization/DeserializationStrategy;Ljava/lang/Object;)Ljava/lang/Object;
+}
+
+public final class kotlinx/serialization/json/JsonLiteral : kotlinx/serialization/json/JsonPrimitive {
+ public static final field Companion Lkotlinx/serialization/json/JsonLiteral$Companion;
+ public fun <init> (Ljava/lang/Number;)V
+ public fun <init> (Ljava/lang/String;)V
+ public fun <init> (Z)V
+ public fun equals (Ljava/lang/Object;)Z
+ public fun getContent ()Ljava/lang/String;
+ public fun getContentOrNull ()Ljava/lang/String;
+ public fun hashCode ()I
+ public final fun isString ()Z
+ public fun toString ()Ljava/lang/String;
+}
+
+public final class kotlinx/serialization/json/JsonLiteral$Companion {
+ public final fun serializer ()Lkotlinx/serialization/KSerializer;
+}
+
+public final class kotlinx/serialization/json/JsonLiteralSerializer : kotlinx/serialization/KSerializer {
+ public static final field INSTANCE Lkotlinx/serialization/json/JsonLiteralSerializer;
+ public synthetic fun deserialize (Lkotlinx/serialization/Decoder;)Ljava/lang/Object;
+ public fun deserialize (Lkotlinx/serialization/Decoder;)Lkotlinx/serialization/json/JsonLiteral;
+ public fun getDescriptor ()Lkotlinx/serialization/SerialDescriptor;
+ public synthetic fun patch (Lkotlinx/serialization/Decoder;Ljava/lang/Object;)Ljava/lang/Object;
+ public fun patch (Lkotlinx/serialization/Decoder;Lkotlinx/serialization/json/JsonLiteral;)Lkotlinx/serialization/json/JsonLiteral;
+ public synthetic fun serialize (Lkotlinx/serialization/Encoder;Ljava/lang/Object;)V
+ public fun serialize (Lkotlinx/serialization/Encoder;Lkotlinx/serialization/json/JsonLiteral;)V
+}
+
+public final class kotlinx/serialization/json/JsonNull : kotlinx/serialization/json/JsonPrimitive {
+ public static final field INSTANCE Lkotlinx/serialization/json/JsonNull;
+ public fun getContent ()Ljava/lang/String;
+ public fun getContentOrNull ()Ljava/lang/String;
+ public fun getJsonNull ()Lkotlinx/serialization/json/JsonNull;
+}
+
+public final class kotlinx/serialization/json/JsonNullSerializer : kotlinx/serialization/KSerializer {
+ public static final field INSTANCE Lkotlinx/serialization/json/JsonNullSerializer;
+ public synthetic fun deserialize (Lkotlinx/serialization/Decoder;)Ljava/lang/Object;
+ public fun deserialize (Lkotlinx/serialization/Decoder;)Lkotlinx/serialization/json/JsonNull;
+ public fun getDescriptor ()Lkotlinx/serialization/SerialDescriptor;
+ public synthetic fun patch (Lkotlinx/serialization/Decoder;Ljava/lang/Object;)Ljava/lang/Object;
+ public fun patch (Lkotlinx/serialization/Decoder;Lkotlinx/serialization/json/JsonNull;)Lkotlinx/serialization/json/JsonNull;
+ public synthetic fun serialize (Lkotlinx/serialization/Encoder;Ljava/lang/Object;)V
+ public fun serialize (Lkotlinx/serialization/Encoder;Lkotlinx/serialization/json/JsonNull;)V
+}
+
+public final class kotlinx/serialization/json/JsonObject : kotlinx/serialization/json/JsonElement, java/util/Map, kotlin/jvm/internal/markers/KMappedMarker {
+ public static final field Companion Lkotlinx/serialization/json/JsonObject$Companion;
+ public fun <init> (Ljava/util/Map;)V
+ public fun clear ()V
+ public final fun component1 ()Ljava/util/Map;
+ public synthetic fun compute (Ljava/lang/Object;Ljava/util/function/BiFunction;)Ljava/lang/Object;
+ public fun compute (Ljava/lang/String;Ljava/util/function/BiFunction;)Lkotlinx/serialization/json/JsonElement;
+ public synthetic fun computeIfAbsent (Ljava/lang/Object;Ljava/util/function/Function;)Ljava/lang/Object;
+ public fun computeIfAbsent (Ljava/lang/String;Ljava/util/function/Function;)Lkotlinx/serialization/json/JsonElement;
+ public synthetic fun computeIfPresent (Ljava/lang/Object;Ljava/util/function/BiFunction;)Ljava/lang/Object;
+ public fun computeIfPresent (Ljava/lang/String;Ljava/util/function/BiFunction;)Lkotlinx/serialization/json/JsonElement;
+ public final fun containsKey (Ljava/lang/Object;)Z
+ public fun containsKey (Ljava/lang/String;)Z
+ public final fun containsValue (Ljava/lang/Object;)Z
+ public fun containsValue (Lkotlinx/serialization/json/JsonElement;)Z
+ public final fun copy (Ljava/util/Map;)Lkotlinx/serialization/json/JsonObject;
+ public static synthetic fun copy$default (Lkotlinx/serialization/json/JsonObject;Ljava/util/Map;ILjava/lang/Object;)Lkotlinx/serialization/json/JsonObject;
+ public final fun entrySet ()Ljava/util/Set;
+ public fun equals (Ljava/lang/Object;)Z
+ public final fun get (Ljava/lang/Object;)Ljava/lang/Object;
+ public fun get (Ljava/lang/String;)Lkotlinx/serialization/json/JsonElement;
+ public final fun getArray (Ljava/lang/String;)Lkotlinx/serialization/json/JsonArray;
+ public final fun getArrayOrNull (Ljava/lang/String;)Lkotlinx/serialization/json/JsonArray;
+ public final fun getContent ()Ljava/util/Map;
+ public fun getEntries ()Ljava/util/Set;
+ public fun getJsonObject ()Lkotlinx/serialization/json/JsonObject;
+ public fun getKeys ()Ljava/util/Set;
+ public final fun getObject (Ljava/lang/String;)Lkotlinx/serialization/json/JsonObject;
+ public final fun getObjectOrNull (Ljava/lang/String;)Lkotlinx/serialization/json/JsonObject;
+ public final fun getPrimitive (Ljava/lang/String;)Lkotlinx/serialization/json/JsonPrimitive;
+ public final fun getPrimitiveOrNull (Ljava/lang/String;)Lkotlinx/serialization/json/JsonPrimitive;
+ public fun getSize ()I
+ public fun getValues ()Ljava/util/Collection;
+ public fun hashCode ()I
+ public fun isEmpty ()Z
+ public final fun keySet ()Ljava/util/Set;
+ public synthetic fun merge (Ljava/lang/Object;Ljava/lang/Object;Ljava/util/function/BiFunction;)Ljava/lang/Object;
+ public fun merge (Ljava/lang/String;Lkotlinx/serialization/json/JsonElement;Ljava/util/function/BiFunction;)Lkotlinx/serialization/json/JsonElement;
+ public synthetic fun put (Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
+ public fun put (Ljava/lang/String;Lkotlinx/serialization/json/JsonElement;)Lkotlinx/serialization/json/JsonElement;
+ public fun putAll (Ljava/util/Map;)V
+ public synthetic fun putIfAbsent (Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
+ public fun putIfAbsent (Ljava/lang/String;Lkotlinx/serialization/json/JsonElement;)Lkotlinx/serialization/json/JsonElement;
+ public fun remove (Ljava/lang/Object;)Ljava/lang/Object;
+ public fun remove (Ljava/lang/Object;Ljava/lang/Object;)Z
+ public synthetic fun replace (Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
+ public synthetic fun replace (Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;)Z
+ public fun replace (Ljava/lang/String;Lkotlinx/serialization/json/JsonElement;)Lkotlinx/serialization/json/JsonElement;
+ public fun replace (Ljava/lang/String;Lkotlinx/serialization/json/JsonElement;Lkotlinx/serialization/json/JsonElement;)Z
+ public fun replaceAll (Ljava/util/function/BiFunction;)V
+ public final fun size ()I
+ public fun toString ()Ljava/lang/String;
+ public final fun values ()Ljava/util/Collection;
+}
+
+public final class kotlinx/serialization/json/JsonObject$Companion {
+ public final fun serializer ()Lkotlinx/serialization/KSerializer;
+}
+
+public final class kotlinx/serialization/json/JsonObjectBuilder {
+ public final fun add (Ljava/lang/String;Ljava/lang/Boolean;)V
+ public final fun add (Ljava/lang/String;Ljava/lang/Number;)V
+ public final fun add (Ljava/lang/String;Ljava/lang/String;)V
+ public final fun add (Ljava/lang/String;Lkotlinx/serialization/json/JsonElement;)V
+ public final fun addArray (Ljava/lang/String;Lkotlin/jvm/functions/Function1;)V
+ public final fun addJson (Ljava/lang/String;Lkotlin/jvm/functions/Function1;)V
+ public final fun to (Ljava/lang/String;Ljava/lang/Boolean;)V
+ public final fun to (Ljava/lang/String;Ljava/lang/Number;)V
+ public final fun to (Ljava/lang/String;Ljava/lang/String;)V
+ public final fun to (Ljava/lang/String;Lkotlinx/serialization/json/JsonElement;)V
+}
+
+public final class kotlinx/serialization/json/JsonObjectSerializer : kotlinx/serialization/KSerializer {
+ public static final field INSTANCE Lkotlinx/serialization/json/JsonObjectSerializer;
+ public synthetic fun deserialize (Lkotlinx/serialization/Decoder;)Ljava/lang/Object;
+ public fun deserialize (Lkotlinx/serialization/Decoder;)Lkotlinx/serialization/json/JsonObject;
+ public fun getDescriptor ()Lkotlinx/serialization/SerialDescriptor;
+ public synthetic fun patch (Lkotlinx/serialization/Decoder;Ljava/lang/Object;)Ljava/lang/Object;
+ public fun patch (Lkotlinx/serialization/Decoder;Lkotlinx/serialization/json/JsonObject;)Lkotlinx/serialization/json/JsonObject;
+ public synthetic fun serialize (Lkotlinx/serialization/Encoder;Ljava/lang/Object;)V
+ public fun serialize (Lkotlinx/serialization/Encoder;Lkotlinx/serialization/json/JsonObject;)V
+}
+
+public abstract interface class kotlinx/serialization/json/JsonOutput : kotlinx/serialization/CompositeEncoder, kotlinx/serialization/Encoder {
+ public abstract fun encodeJson (Lkotlinx/serialization/json/JsonElement;)V
+ public abstract fun getJson ()Lkotlinx/serialization/json/Json;
+}
+
+public final class kotlinx/serialization/json/JsonOutput$DefaultImpls {
+ public static fun beginCollection (Lkotlinx/serialization/json/JsonOutput;Lkotlinx/serialization/SerialDescriptor;I)Lkotlinx/serialization/CompositeEncoder;
+ public static fun beginCollection (Lkotlinx/serialization/json/JsonOutput;Lkotlinx/serialization/SerialDescriptor;I[Lkotlinx/serialization/KSerializer;)Lkotlinx/serialization/CompositeEncoder;
+ public static fun beginStructure (Lkotlinx/serialization/json/JsonOutput;Lkotlinx/serialization/SerialDescriptor;)Lkotlinx/serialization/CompositeEncoder;
+ public static fun beginStructure (Lkotlinx/serialization/json/JsonOutput;Lkotlinx/serialization/SerialDescriptor;[Lkotlinx/serialization/KSerializer;)Lkotlinx/serialization/CompositeEncoder;
+ public static fun encodeNonSerializableElement (Lkotlinx/serialization/json/JsonOutput;Lkotlinx/serialization/SerialDescriptor;ILjava/lang/Object;)V
+ public static fun encodeNotNullMark (Lkotlinx/serialization/json/JsonOutput;)V
+ public static fun encodeNullableSerializableValue (Lkotlinx/serialization/json/JsonOutput;Lkotlinx/serialization/SerializationStrategy;Ljava/lang/Object;)V
+ public static fun encodeSerializableValue (Lkotlinx/serialization/json/JsonOutput;Lkotlinx/serialization/SerializationStrategy;Ljava/lang/Object;)V
+ public static fun shouldEncodeElementDefault (Lkotlinx/serialization/json/JsonOutput;Lkotlinx/serialization/SerialDescriptor;I)Z
+}
+
+public abstract class kotlinx/serialization/json/JsonParametricSerializer : kotlinx/serialization/KSerializer {
+ public fun <init> (Lkotlin/reflect/KClass;)V
+ public final fun deserialize (Lkotlinx/serialization/Decoder;)Ljava/lang/Object;
+ public fun getDescriptor ()Lkotlinx/serialization/SerialDescriptor;
+ public fun patch (Lkotlinx/serialization/Decoder;Ljava/lang/Object;)Ljava/lang/Object;
+ protected abstract fun selectSerializer (Lkotlinx/serialization/json/JsonElement;)Lkotlinx/serialization/KSerializer;
+ public final fun serialize (Lkotlinx/serialization/Encoder;Ljava/lang/Object;)V
+}
+
+public abstract class kotlinx/serialization/json/JsonPrimitive : kotlinx/serialization/json/JsonElement {
+ public static final field Companion Lkotlinx/serialization/json/JsonPrimitive$Companion;
+ public final fun getBoolean ()Z
+ public final fun getBooleanOrNull ()Ljava/lang/Boolean;
+ public abstract fun getContent ()Ljava/lang/String;
+ public abstract fun getContentOrNull ()Ljava/lang/String;
+ public final fun getDouble ()D
+ public final fun getDoubleOrNull ()Ljava/lang/Double;
+ public final fun getFloat ()F
+ public final fun getFloatOrNull ()Ljava/lang/Float;
+ public final fun getInt ()I
+ public final fun getIntOrNull ()Ljava/lang/Integer;
+ public final fun getLong ()J
+ public final fun getLongOrNull ()Ljava/lang/Long;
+ public final fun getPrimitive ()Lkotlinx/serialization/json/JsonPrimitive;
+ public fun toString ()Ljava/lang/String;
+}
+
+public final class kotlinx/serialization/json/JsonPrimitive$Companion {
+ public final fun serializer ()Lkotlinx/serialization/KSerializer;
+}
+
+public final class kotlinx/serialization/json/JsonPrimitiveSerializer : kotlinx/serialization/KSerializer {
+ public static final field INSTANCE Lkotlinx/serialization/json/JsonPrimitiveSerializer;
+ public synthetic fun deserialize (Lkotlinx/serialization/Decoder;)Ljava/lang/Object;
+ public fun deserialize (Lkotlinx/serialization/Decoder;)Lkotlinx/serialization/json/JsonPrimitive;
+ public fun getDescriptor ()Lkotlinx/serialization/SerialDescriptor;
+ public synthetic fun patch (Lkotlinx/serialization/Decoder;Ljava/lang/Object;)Ljava/lang/Object;
+ public fun patch (Lkotlinx/serialization/Decoder;Lkotlinx/serialization/json/JsonPrimitive;)Lkotlinx/serialization/json/JsonPrimitive;
+ public synthetic fun serialize (Lkotlinx/serialization/Encoder;Ljava/lang/Object;)V
+ public fun serialize (Lkotlinx/serialization/Encoder;Lkotlinx/serialization/json/JsonPrimitive;)V
+}
+
+public abstract class kotlinx/serialization/json/JsonTransformingSerializer : kotlinx/serialization/KSerializer {
+ public fun <init> (Lkotlinx/serialization/KSerializer;Ljava/lang/String;)V
+ public final fun deserialize (Lkotlinx/serialization/Decoder;)Ljava/lang/Object;
+ public fun getDescriptor ()Lkotlinx/serialization/SerialDescriptor;
+ public fun patch (Lkotlinx/serialization/Decoder;Ljava/lang/Object;)Ljava/lang/Object;
+ protected fun readTransform (Lkotlinx/serialization/json/JsonElement;)Lkotlinx/serialization/json/JsonElement;
+ public final fun serialize (Lkotlinx/serialization/Encoder;Ljava/lang/Object;)V
+ protected fun writeTransform (Lkotlinx/serialization/json/JsonElement;)Lkotlinx/serialization/json/JsonElement;
+}
+
+public final class kotlinx/serialization/modules/EmptyModule : kotlinx/serialization/modules/SerialModule {
+ public static final field INSTANCE Lkotlinx/serialization/modules/EmptyModule;
+ public fun dumpTo (Lkotlinx/serialization/modules/SerialModuleCollector;)V
+ public fun getContextual (Lkotlin/reflect/KClass;)Lkotlinx/serialization/KSerializer;
+ public fun getPolymorphic (Lkotlin/reflect/KClass;Ljava/lang/Object;)Lkotlinx/serialization/SerializationStrategy;
+ public fun getPolymorphic (Lkotlin/reflect/KClass;Ljava/lang/String;)Lkotlinx/serialization/DeserializationStrategy;
+}
+
+public final class kotlinx/serialization/modules/PolymorphicModuleBuilder {
+ public final fun addSubclass (Lkotlin/reflect/KClass;Lkotlinx/serialization/KSerializer;)V
+ public final fun default (Lkotlin/jvm/functions/Function1;)V
+ public final fun with (Lkotlin/reflect/KClass;Lkotlinx/serialization/KSerializer;)V
+}
+
+public abstract class kotlinx/serialization/modules/SerialModule {
+ public abstract fun dumpTo (Lkotlinx/serialization/modules/SerialModuleCollector;)V
+ public abstract fun getContextual (Lkotlin/reflect/KClass;)Lkotlinx/serialization/KSerializer;
+ public abstract fun getPolymorphic (Lkotlin/reflect/KClass;Ljava/lang/Object;)Lkotlinx/serialization/SerializationStrategy;
+ public abstract fun getPolymorphic (Lkotlin/reflect/KClass;Ljava/lang/String;)Lkotlinx/serialization/DeserializationStrategy;
+}
+
+public final class kotlinx/serialization/modules/SerialModuleBuildersKt {
+ public static final fun SerializersModule (Lkotlin/jvm/functions/Function1;)Lkotlinx/serialization/modules/SerialModule;
+ public static final fun serializersModuleOf (Ljava/util/Map;)Lkotlinx/serialization/modules/SerialModule;
+ public static final fun serializersModuleOf (Lkotlin/reflect/KClass;Lkotlinx/serialization/KSerializer;)Lkotlinx/serialization/modules/SerialModule;
+}
+
+public abstract interface class kotlinx/serialization/modules/SerialModuleCollector {
+ public abstract fun contextual (Lkotlin/reflect/KClass;Lkotlinx/serialization/KSerializer;)V
+ public abstract fun defaultPolymorphic (Lkotlin/reflect/KClass;Lkotlin/jvm/functions/Function1;)V
+ public abstract fun polymorphic (Lkotlin/reflect/KClass;Lkotlin/reflect/KClass;Lkotlinx/serialization/KSerializer;)V
+}
+
+public final class kotlinx/serialization/modules/SerialModuleExtensionsKt {
+ public static final fun getContextual (Lkotlinx/serialization/modules/SerialModule;Ljava/lang/Object;)Lkotlinx/serialization/KSerializer;
+ public static final fun getContextualDescriptor (Lkotlinx/serialization/modules/SerialModule;Lkotlinx/serialization/SerialDescriptor;)Lkotlinx/serialization/SerialDescriptor;
+ public static final fun getContextualOrDefault (Lkotlinx/serialization/modules/SerialModule;Lkotlin/reflect/KType;)Lkotlinx/serialization/KSerializer;
+ public static final fun getPolymorphicDescriptors (Lkotlinx/serialization/modules/SerialModule;Lkotlinx/serialization/SerialDescriptor;)Ljava/util/List;
+ public static final fun overwriteWith (Lkotlinx/serialization/modules/SerialModule;Lkotlinx/serialization/modules/SerialModule;)Lkotlinx/serialization/modules/SerialModule;
+ public static final fun plus (Lkotlinx/serialization/modules/SerialModule;Lkotlinx/serialization/modules/SerialModule;)Lkotlinx/serialization/modules/SerialModule;
+}
+
+public final class kotlinx/serialization/modules/SerializersModuleBuilder : kotlinx/serialization/modules/SerialModuleCollector {
+ public fun contextual (Lkotlin/reflect/KClass;Lkotlinx/serialization/KSerializer;)V
+ public fun defaultPolymorphic (Lkotlin/reflect/KClass;Lkotlin/jvm/functions/Function1;)V
+ public final fun include (Lkotlinx/serialization/modules/SerialModule;)V
+ public fun polymorphic (Lkotlin/reflect/KClass;Lkotlin/reflect/KClass;Lkotlinx/serialization/KSerializer;)V
+ public final fun polymorphic (Lkotlin/reflect/KClass;Lkotlinx/serialization/KSerializer;Lkotlin/jvm/functions/Function1;)V
+ public final fun polymorphic (Lkotlin/reflect/KClass;[Lkotlin/reflect/KClass;Lkotlin/jvm/functions/Function1;)V
+ public static synthetic fun polymorphic$default (Lkotlinx/serialization/modules/SerializersModuleBuilder;Lkotlin/reflect/KClass;Lkotlinx/serialization/KSerializer;Lkotlin/jvm/functions/Function1;ILjava/lang/Object;)V
+ public static synthetic fun polymorphic$default (Lkotlinx/serialization/modules/SerializersModuleBuilder;Lkotlin/reflect/KClass;[Lkotlin/reflect/KClass;Lkotlin/jvm/functions/Function1;ILjava/lang/Object;)V
+}
+
diff --git a/runtime/commonMain/src/kotlinx/io/Buffers.kt b/runtime/commonMain/src/kotlinx/io/Buffers.kt
deleted file mode 100644
index d1772e0..0000000
--- a/runtime/commonMain/src/kotlinx/io/Buffers.kt
+++ /dev/null
@@ -1,63 +0,0 @@
-
-/*
- * Copyright 2017-2020 JetBrains s.r.o. Use of this source code is governed by the Apache 2.0 license.
- */
-@file:Suppress(
- "DEPRECATION_ERROR", "NO_EXPLICIT_VISIBILITY_IN_API_MODE_WARNING",
- "NO_EXPLICIT_RETURN_TYPE_IN_API_MODE_WARNING"
-)
-package kotlinx.io
-
-@Deprecated(message = message, level = DeprecationLevel.ERROR)
-expect class ByteBuffer {
-
- fun order(order: ByteOrder): ByteBuffer
- fun clear(): ByteBuffer
- fun flip(): ByteBuffer
-
- fun get(): Byte
- fun get(index: Int): Byte
- fun get(dst: ByteArray, offset: Int, cnt: Int): Unit
- fun getChar(): Char
- fun getChar(index: Int): Char
- fun getShort(): Short
- fun getShort(index: Int): Short
- fun getInt(): Int
- fun getInt(index: Int): Int
- fun getLong(): Long
- fun getLong(index: Int): Long
- fun getFloat(): Float
- fun getFloat(index: Int): Float
- fun getDouble(): Double
- fun getDouble(index: Int): Double
-
- fun put(value: Byte): ByteBuffer
- fun put(value: Byte, index: Int): ByteBuffer
- fun put(src: ByteArray): ByteBuffer
- fun put(src: ByteArray, offset: Int, cnt: Int): ByteBuffer
-
- fun putChar(value: Char): ByteBuffer
- fun putChar(value: Char, index: Int): ByteBuffer
- fun putShort(value: Short): ByteBuffer
- fun putShort(value: Short, index: Int): ByteBuffer
- fun putInt(value: Int): ByteBuffer
- fun putInt(value: Int, index: Int): ByteBuffer
- fun putLong(value: Long): ByteBuffer
- fun putLong(value: Long, index: Int): ByteBuffer
- fun putFloat(value: Float): ByteBuffer
- fun putFloat(value: Float, index: Int): ByteBuffer
- fun putDouble(value: Double): ByteBuffer
- fun putDouble(value: Double, index: Int): ByteBuffer
-
- fun array(): ByteArray
-
-
- companion object {
- fun allocate(capacity: Int): ByteBuffer
- }
-}
-
-@Deprecated(message = message, level = DeprecationLevel.ERROR)
-enum class ByteOrder {
- LITTLE_ENDIAN, BIG_ENDIAN
-}
diff --git a/runtime/commonMain/src/kotlinx/io/Streams.kt b/runtime/commonMain/src/kotlinx/io/Streams.kt
index 5b25bf2..c42691b 100644
--- a/runtime/commonMain/src/kotlinx/io/Streams.kt
+++ b/runtime/commonMain/src/kotlinx/io/Streams.kt
@@ -8,7 +8,7 @@
@InternalSerializationApi
public abstract class Input {
- abstract val availableBytes: Int
+ public abstract val availableBytes: Int
public abstract fun read(): Int
public abstract fun read(b: ByteArray, offset: Int, length: Int): Int
public abstract fun readString(length: Int): String
diff --git a/runtime/commonMain/src/kotlinx/io/Writers.kt b/runtime/commonMain/src/kotlinx/io/Writers.kt
deleted file mode 100644
index f2ba2dd..0000000
--- a/runtime/commonMain/src/kotlinx/io/Writers.kt
+++ /dev/null
@@ -1,29 +0,0 @@
-/*
- * Copyright 2017-2020 JetBrains s.r.o. Use of this source code is governed by the Apache 2.0 license.
- */
-@file:Suppress(
- "DEPRECATION_ERROR", "NO_EXPLICIT_VISIBILITY_IN_API_MODE_WARNING",
- "NO_EXPLICIT_RETURN_TYPE_IN_API_MODE_WARNING"
-)
-package kotlinx.io
-
-
-internal const val message = "These classes accidentally slipped to the public API surface. " +
- "We neither had intent to provide a production-quality implementation nor have an intent to support them." +
- "They are removed and to migrate, you can either use a corresponding java.io type or just a copy-paste implementation from the GitHub." +
- "If you have a use-case for multiplatform IO, please report it to the https://github.com/Kotlin/kotlinx-io/issues"
-
-@Deprecated(message = message, level = DeprecationLevel.ERROR)
-class Writer
-
-@Deprecated(message = message, level = DeprecationLevel.ERROR)
-class PrintWriter
-
-@Deprecated(message = message, level = DeprecationLevel.ERROR)
-class StringWriter
-
-@Deprecated(message = message, level = DeprecationLevel.ERROR)
-class Reader
-
-@Deprecated(message = message, level = DeprecationLevel.ERROR)
-class StringReader
diff --git a/runtime/commonMain/src/kotlinx/serialization/Annotations.kt b/runtime/commonMain/src/kotlinx/serialization/Annotations.kt
index 31d822b..49a6542 100644
--- a/runtime/commonMain/src/kotlinx/serialization/Annotations.kt
+++ b/runtime/commonMain/src/kotlinx/serialization/Annotations.kt
@@ -37,14 +37,6 @@
public annotation class SerialName(val value: String)
/**
- * Indicates that property is optional in deserialization process.
- * Optional properties must have default values.
- */
-@Target(AnnotationTarget.PROPERTY)
-@Deprecated("All properties with default values are considered optional now", level = DeprecationLevel.ERROR)
-public annotation class Optional
-
-/**
* Indicates that property must be present during deserialization process,
* even if it has default value.
*/
diff --git a/runtime/commonMain/src/kotlinx/serialization/Decoding.kt b/runtime/commonMain/src/kotlinx/serialization/Decoding.kt
index 2d229c5..a60582b 100644
--- a/runtime/commonMain/src/kotlinx/serialization/Decoding.kt
+++ b/runtime/commonMain/src/kotlinx/serialization/Decoding.kt
@@ -286,7 +286,7 @@
@Deprecated(
message = "READ_ALL cannot be longer returned by 'decodeElementIndex', use 'decodeSequentially' instead",
- level = DeprecationLevel.WARNING
+ level = DeprecationLevel.ERROR
)
@Suppress("UNUSED")
public const val READ_ALL: Int = -2
diff --git a/runtime/commonMain/src/kotlinx/serialization/Migrations.kt b/runtime/commonMain/src/kotlinx/serialization/Migrations.kt
index c1925de..4535e0c 100644
--- a/runtime/commonMain/src/kotlinx/serialization/Migrations.kt
+++ b/runtime/commonMain/src/kotlinx/serialization/Migrations.kt
@@ -20,7 +20,7 @@
level = DeprecationLevel.ERROR,
replaceWith = ReplaceWith("PrimitiveDescriptor(name, original.kind)")
)
-constructor(override val name: String, private val original: SerialDescriptor) : SerialDescriptor by original
+constructor(override val serialName: String, private val original: SerialDescriptor) : SerialDescriptor by original
@Deprecated(
message = "Deprecated in the favour of PrimitiveDescriptor factory function",
@@ -144,4 +144,10 @@
replaceWith = ReplaceWith("getContextualOrDefault<T>()")
)
public fun <T : Any> SerialModule.getContextualOrDefault(value: T): KSerializer<T> =
- getContextual(value) ?: value::class.serializer().cast()
\ No newline at end of file
+ getContextual(value) ?: value::class.serializer().cast()
+
+@Suppress("UNUSED", "DeprecatedCallableAddReplaceWith")
+@Deprecated(
+ message = "Top-level polymorphic descriptor is deprecated, use descriptor from the instance of PolymorphicSerializer or" +
+ "check for descriptor kind instead", level = DeprecationLevel.ERROR)
+public val PolymorphicClassDescriptor: SerialDescriptor get() = error("This property is no longer supported")
\ No newline at end of file
diff --git a/runtime/commonMain/src/kotlinx/serialization/Polymorphic.kt b/runtime/commonMain/src/kotlinx/serialization/Polymorphic.kt
index 544e8f8..02777b6 100644
--- a/runtime/commonMain/src/kotlinx/serialization/Polymorphic.kt
+++ b/runtime/commonMain/src/kotlinx/serialization/Polymorphic.kt
@@ -9,13 +9,6 @@
import kotlinx.serialization.modules.*
import kotlin.reflect.*
-@Suppress("UNUSED", "DeprecatedCallableAddReplaceWith")
-@Deprecated(
- message = "Top-level polymorphic descriptor is deprecated, use descriptor from the instance of PolymorphicSerializer or" +
- "check for descriptor kind instead", level = DeprecationLevel.ERROR
-)
-public val PolymorphicClassDescriptor: SerialDescriptor get() = error("This property is no longer supported")
-
/**
* This class provides support for multiplatform polymorphic serialization for interfaces and abstract classes.
*
diff --git a/runtime/commonMain/src/kotlinx/serialization/SerialDescriptor.kt b/runtime/commonMain/src/kotlinx/serialization/SerialDescriptor.kt
index ad6ce13..d779bd0 100644
--- a/runtime/commonMain/src/kotlinx/serialization/SerialDescriptor.kt
+++ b/runtime/commonMain/src/kotlinx/serialization/SerialDescriptor.kt
@@ -130,14 +130,6 @@
*/
public val serialName: String
- @Deprecated(
- message = "name property deprecated in the favour of serialName",
- level = DeprecationLevel.ERROR,
- replaceWith = ReplaceWith("serialName")
- )
- public val name: String
- get() = serialName
-
/**
* The kind of the serialized form that determines **the shape** of the serialized data.
* Formats use serial kind to add and parse serializer-agnostic metadata to the result.
@@ -176,9 +168,6 @@
*/
public val annotations: List<Annotation> get() = emptyList()
- @Deprecated(message = "Deprecated in the favour of 'annotations' property", replaceWith = ReplaceWith("annotations"))
- public fun getEntityAnnotations(): List<Annotation> = emptyList()
-
/**
* Returns a _positional_ name of the child at the given [index].
* Positional name usually represents a corresponding property name in the class, associated with
diff --git a/runtime/commonMain/src/kotlinx/serialization/SerialKinds.kt b/runtime/commonMain/src/kotlinx/serialization/SerialKinds.kt
index 77813a4..f7fa60c 100644
--- a/runtime/commonMain/src/kotlinx/serialization/SerialKinds.kt
+++ b/runtime/commonMain/src/kotlinx/serialization/SerialKinds.kt
@@ -112,15 +112,6 @@
*/
public object DOUBLE : PrimitiveKind()
- /*
- * Not documented, reworked in #664
- */
- @Deprecated(
- message = "Primitive kind Unit is deprecated with no replacement. Use StructureKind.OBJECT instead or check for a particular serialName",
- level = DeprecationLevel.ERROR
- )
- public object UNIT : PrimitiveKind()
-
/**
* Primitive kind that represents a string value.
* Corresponding Kotlin primitive is [String].
diff --git a/runtime/commonMain/src/kotlinx/serialization/internal/NullableSerializer.kt b/runtime/commonMain/src/kotlinx/serialization/internal/NullableSerializer.kt
index fbc94a7..8d08882 100644
--- a/runtime/commonMain/src/kotlinx/serialization/internal/NullableSerializer.kt
+++ b/runtime/commonMain/src/kotlinx/serialization/internal/NullableSerializer.kt
@@ -9,7 +9,7 @@
message = "Deprecated in the favor of extension",
level = DeprecationLevel.ERROR,
replaceWith = ReplaceWith("actualSerializer.nullable)")
-)
+) // TODO still used by the plugin
@InternalSerializationApi
public fun <T : Any> makeNullable(actualSerializer: KSerializer<T>): KSerializer<T?> {
return NullableSerializer(actualSerializer)
diff --git a/runtime/commonMain/src/kotlinx/serialization/internal/SerializationConstructorMarkerComaptibility.kt b/runtime/commonMain/src/kotlinx/serialization/internal/SerializationConstructorMarkerCompatibility.kt
similarity index 82%
rename from runtime/commonMain/src/kotlinx/serialization/internal/SerializationConstructorMarkerComaptibility.kt
rename to runtime/commonMain/src/kotlinx/serialization/internal/SerializationConstructorMarkerCompatibility.kt
index c03dc93..81bdebe 100644
--- a/runtime/commonMain/src/kotlinx/serialization/internal/SerializationConstructorMarkerComaptibility.kt
+++ b/runtime/commonMain/src/kotlinx/serialization/internal/SerializationConstructorMarkerCompatibility.kt
@@ -8,5 +8,5 @@
// Binary compatibility with the plugin
@Suppress("UNUSED")
-@Deprecated("Inserted into generated code and should not be used directly", level = DeprecationLevel.HIDDEN)
+@Deprecated("Inserted into generated code and should not be used directly", level = DeprecationLevel.HIDDEN) // TODO still used by the plugin
public class SerializationConstructorMarker private constructor()
diff --git a/runtime/commonMain/src/kotlinx/serialization/internal/Util.kt b/runtime/commonMain/src/kotlinx/serialization/internal/Util.kt
index 2b12f26..6cf4827 100644
--- a/runtime/commonMain/src/kotlinx/serialization/internal/Util.kt
+++ b/runtime/commonMain/src/kotlinx/serialization/internal/Util.kt
@@ -21,6 +21,18 @@
throw NotImplementedError("Deprecated")
}
+@InternalSerializationApi
+@Deprecated(
+ level = DeprecationLevel.ERROR, message = "HexConverter slipped into public API surface accidentally and will be removed in the future releases. " +
+ "You can copy-paste it to your project or (better) find a polished implementation that initially was intended for public uses."
+)
+public object HexConverter {
+ private const val hexCode = "0123456789ABCDEF"
+ public fun parseHexBinary(s: String): ByteArray = InternalHexConverter.parseHexBinary(s)
+ public fun printHexBinary(data: ByteArray, lowerCase: Boolean = false): String = InternalHexConverter.printHexBinary(data, lowerCase)
+ public fun toHexString(n: Int): String = InternalHexConverter.toHexString(n)
+}
+
internal object InternalHexConverter {
private const val hexCode = "0123456789ABCDEF"
@@ -67,19 +79,6 @@
}
}
-@InternalSerializationApi
-@Deprecated(
- level = DeprecationLevel.ERROR,
- message = "HexConverter slipped into public API surface accidentally and will be removed in the future releases. " +
- "You can copy-paste it to your project or (better) find a polished implementation that initially was intended for public uses."
-)
-public object HexConverter {
- private const val hexCode = "0123456789ABCDEF"
- public fun parseHexBinary(s: String): ByteArray = InternalHexConverter.parseHexBinary(s)
- public fun printHexBinary(data: ByteArray, lowerCase: Boolean = false): String = InternalHexConverter.printHexBinary(data, lowerCase)
- public fun toHexString(n: Int): String = InternalHexConverter.toHexString(n)
-}
-
internal fun SerialDescriptor.cachedSerialNames(): Set<String> {
@Suppress("DEPRECATION_ERROR")
if (this is PluginGeneratedSerialDescriptor) return namesSet
diff --git a/runtime/commonMain/src/kotlinx/serialization/json/Json.kt b/runtime/commonMain/src/kotlinx/serialization/json/Json.kt
index 31ffb78..ef6f573 100644
--- a/runtime/commonMain/src/kotlinx/serialization/json/Json.kt
+++ b/runtime/commonMain/src/kotlinx/serialization/json/Json.kt
@@ -166,11 +166,11 @@
"'Json(JsonConfiguration)' constructor or by tweaking stable configuration 'Json(JsonConfiguration.Stable.copy(prettyPrint = true))'"
@UnstableDefault
- @Deprecated(message = message, level = DeprecationLevel.WARNING)
+ @Deprecated(message = message, level = DeprecationLevel.ERROR)
public val plain: Json = Json(JsonConfiguration(useArrayPolymorphism = true))
@UnstableDefault
- @Deprecated(message = message, level = DeprecationLevel.WARNING)
+ @Deprecated(message = message, level = DeprecationLevel.ERROR)
public val unquoted: Json = Json(
JsonConfiguration(
isLenient = true,
@@ -182,11 +182,11 @@
)
@UnstableDefault
- @Deprecated(message = message, level = DeprecationLevel.WARNING)
+ @Deprecated(message = message, level = DeprecationLevel.ERROR)
public val indented: Json = Json(JsonConfiguration(prettyPrint = true, useArrayPolymorphism = true))
@UnstableDefault
- @Deprecated(message = message, level = DeprecationLevel.WARNING)
+ @Deprecated(message = message, level = DeprecationLevel.ERROR)
public val nonstrict: Json = Json(
JsonConfiguration(
isLenient = true,
diff --git a/runtime/commonMain/src/kotlinx/serialization/modules/PolymorphicModuleBuilder.kt b/runtime/commonMain/src/kotlinx/serialization/modules/PolymorphicModuleBuilder.kt
index 4d64402..be3fd0f 100644
--- a/runtime/commonMain/src/kotlinx/serialization/modules/PolymorphicModuleBuilder.kt
+++ b/runtime/commonMain/src/kotlinx/serialization/modules/PolymorphicModuleBuilder.kt
@@ -35,7 +35,7 @@
*/
@Deprecated(
message = "Use 'subclass(serializer)' instead",
- level = DeprecationLevel.WARNING,
+ level = DeprecationLevel.ERROR,
replaceWith = ReplaceWith("subclass(serializer)")
)
public inline fun <reified T : Base> addSubclass(serializer: KSerializer<T>): Unit =
@@ -49,7 +49,7 @@
*/
@Deprecated(
message = "Use 'subclass' instead",
- level = DeprecationLevel.WARNING,
+ level = DeprecationLevel.ERROR,
replaceWith = ReplaceWith("subclass<T>()")
)
public inline fun <reified T : Base> addSubclass(): Unit = addSubclass(T::class, serializer())
diff --git a/runtime/commonMain/src/kotlinx/serialization/modules/SerialModuleBuilders.kt b/runtime/commonMain/src/kotlinx/serialization/modules/SerialModuleBuilders.kt
index 5cba98e..6065655 100644
--- a/runtime/commonMain/src/kotlinx/serialization/modules/SerialModuleBuilders.kt
+++ b/runtime/commonMain/src/kotlinx/serialization/modules/SerialModuleBuilders.kt
@@ -99,7 +99,7 @@
* (which is useful if base class is serializable). To add subclasses, use
* [PolymorphicModuleBuilder.subclass] or [PolymorphicModuleBuilder.with].
*
- * If serializer already registered for the given KClass in the given scope, a [SerializerAlreadyRegisteredException] is thrown.
+ * If serializer already registered for the given KClass in the given scope, a [IllegalArgumentException] is thrown.
* To override registered serializers, combine built module with another using
* [SerialModule.overwriteWith].
*
@@ -143,7 +143,7 @@
* }
* ```
*
- * If serializer already registered for the given KClass in the given scope, a [SerializerAlreadyRegisteredException] is thrown.
+ * If serializer already registered for the given KClass in the given scope, a [IllegalArgumentException] is thrown.
* To override registered serializers, combine built module with another using
* [SerialModule.overwriteWith].
*
@@ -244,3 +244,11 @@
internal fun build(): SerialModule =
SerialModuleImpl(class2Serializer, polyBase2Serializers, polyBase2NamedSerializers, polyBase2DefaultProvider)
}
+
+private class SerializerAlreadyRegisteredException internal constructor(msg: String) : IllegalArgumentException(msg) {
+ internal constructor(
+ baseClass: KClass<*>,
+ concreteClass: KClass<*>
+ ) : this("Serializer for $concreteClass already registered in the scope of $baseClass")
+}
+
diff --git a/runtime/commonMain/src/kotlinx/serialization/modules/SerializerAlreadyRegisteredException.kt b/runtime/commonMain/src/kotlinx/serialization/modules/SerializerAlreadyRegisteredException.kt
deleted file mode 100644
index 5cd5bb1..0000000
--- a/runtime/commonMain/src/kotlinx/serialization/modules/SerializerAlreadyRegisteredException.kt
+++ /dev/null
@@ -1,25 +0,0 @@
-/*
- * Copyright 2017-2020 JetBrains s.r.o. Use of this source code is governed by the Apache 2.0 license.
- */
-
-package kotlinx.serialization.modules
-
-import kotlinx.serialization.*
-import kotlin.reflect.*
-
-/**
- * Thrown on an attempt to register serializer (for contextual or polymorphic serialization)
- * for some class twice.
- *
- * Registering in the same module twice is prohibited. In case you are combining modules
- * with [SerialModule.plus], consider using [SerialModule.overwriteWith] if you want overwriting behaviour.
- */
-@InternalSerializationApi // Will be hidden in the next release
-public class SerializerAlreadyRegisteredException internal constructor(msg: String) : IllegalArgumentException(msg) {
- internal constructor(
- baseClass: KClass<*>,
- concreteClass: KClass<*>
- ) : this("Serializer for $concreteClass already registered in the scope of $baseClass")
-
- internal constructor(forClass: KClass<*>) : this("Serializer for $forClass already registered in this module")
-}
diff --git a/runtime/commonTest/src/kotlinx/serialization/modules/ModuleBuildersTest.kt b/runtime/commonTest/src/kotlinx/serialization/modules/ModuleBuildersTest.kt
index 220423f..8b02c74 100644
--- a/runtime/commonTest/src/kotlinx/serialization/modules/ModuleBuildersTest.kt
+++ b/runtime/commonTest/src/kotlinx/serialization/modules/ModuleBuildersTest.kt
@@ -152,7 +152,7 @@
fun testOverwriteSerializer() {
val moduleA = SerializersModule {
contextual(A::class, ASerializer)
- assertFailsWith<SerializerAlreadyRegisteredException> {
+ assertFailsWith<IllegalArgumentException> {
contextual(A::class, object : KSerializer<A> by A.serializer() {})
}
}
@@ -173,7 +173,7 @@
val incorrect = serializersModuleOf(mapOf<KClass<*>, KSerializer<*>>(A::class to BSerializer))
val correct = serializersModuleOf(mapOf<KClass<*>, KSerializer<*>>(A::class to ASerializer))
correct.assertModuleHas(aSerializer = true, bSerializer = false)
- assertFailsWith<SerializerAlreadyRegisteredException> {
+ assertFailsWith<IllegalArgumentException> {
incorrect + correct
}
}
@@ -261,7 +261,7 @@
fun testThrowOnTheSamePolymorphicSerializer() {
val m1 = SerializersModule { polymorphic<Any> { A::class with A.serializer() } }
val m2 = SerializersModule { polymorphic<Any> { A::class with ASerializer } }
- assertFailsWith<SerializerAlreadyRegisteredException> { m1 + m2 }
+ assertFailsWith<IllegalArgumentException> { m1 + m2 }
}
@Test
diff --git a/runtime/jsMain/src/kotlinx/io/Buffers.kt b/runtime/jsMain/src/kotlinx/io/Buffers.kt
deleted file mode 100644
index 8fb11f9..0000000
--- a/runtime/jsMain/src/kotlinx/io/Buffers.kt
+++ /dev/null
@@ -1,209 +0,0 @@
-/*
- * Copyright 2017-2020 JetBrains s.r.o. Use of this source code is governed by the Apache 2.0 license.
- */
-@file:Suppress(
- "DEPRECATION_ERROR", "NO_EXPLICIT_VISIBILITY_IN_API_MODE_WARNING",
- "NO_EXPLICIT_RETURN_TYPE_IN_API_MODE_WARNING"
-)
-package kotlinx.io
-
-import org.khronos.webgl.*
-
-@Deprecated(message = message, level = DeprecationLevel.ERROR)
-actual class ByteBuffer private constructor(val capacity: Int) {
-
- init {
- require(capacity >= 0)
- }
-
- private val dw = DataView(ArrayBuffer(capacity), 0, capacity)
-
- var limit: Int = capacity
- set(value) {
- require(value in 0..capacity)
- field = value
- if (position > value) {
- position = value
- }
- }
-
- var position: Int = 0
- set(newPosition) {
- require(newPosition in 0..limit)
- field = newPosition
- }
-
- actual fun clear(): ByteBuffer {
- position = 0
- limit = capacity
- return this
- }
-
- actual fun flip(): ByteBuffer {
- limit = position
- position = 0
- return this
- }
-
- val hasRemaining: Boolean
- get() = position < limit
-
- val remaining: Int
- get() = limit - position
-
- fun rewind(): ByteBuffer {
- position = 0
- return this
- }
-
- var order: ByteOrder = ByteOrder.BIG_ENDIAN
- actual fun order(order: ByteOrder): ByteBuffer {
- this.order = order
- return this
- }
-
- private fun idx(index: Int, size: Int): Int {
- val i = if (index == -1) {
- position += size
- position - size
- } else index
- if (i > limit) throw IllegalArgumentException()
- return i
- }
-
- actual fun get(): Byte = get(-1)
- actual fun get(index: Int): Byte {
- val i = idx(index, 1)
- return dw.getInt8(i)
- }
-
- actual fun get(dst: ByteArray, offset: Int, cnt: Int): Unit {
- val pos = idx(-1, cnt)
- for (i in 0 until cnt) {
- dst[offset + i] = dw.getInt8(pos + i)
- }
- }
-
- actual fun getChar() = getChar(-1)
- actual fun getChar(index: Int): Char {
- val i = idx(index, 2)
- return dw.getUint16(i, order == ByteOrder.LITTLE_ENDIAN).toChar()
- }
-
- actual fun getShort() = getShort(-1)
- actual fun getShort(index: Int): Short {
- val i = idx(index, 2)
- return dw.getInt16(i, order == ByteOrder.LITTLE_ENDIAN)
- }
-
- actual fun getInt() = getInt(-1)
- actual fun getInt(index: Int): Int {
- val i = idx(index, 4)
- return dw.getInt32(i, order == ByteOrder.LITTLE_ENDIAN)
- }
-
- actual fun getLong() = getLong(-1)
- actual fun getLong(index: Int): Long {
- val low:Int
- val high:Int
- val scndIdx = if (index == -1) -1 else index + 4
- if (order == ByteOrder.LITTLE_ENDIAN) {
- low = getInt(index)
- high = getInt(scndIdx)
- } else {
- high = getInt(index)
- low = getInt(scndIdx)
- }
- return ((high.toLong() shl 32) or (low.toLong() and 0xFFFFFFFF))
- }
-
- actual fun getFloat() = getFloat(-1)
- actual fun getFloat(index: Int): Float {
- val i = idx(index, 4)
- return dw.getFloat32(i, order == ByteOrder.LITTLE_ENDIAN)
- }
-
- actual fun getDouble() = getDouble(-1)
- actual fun getDouble(index: Int): Double {
- val i = idx(index, 8)
- return dw.getFloat64(i, order == ByteOrder.LITTLE_ENDIAN)
- }
-
- actual fun put(value: Byte): ByteBuffer = put(value, -1)
- actual fun put(value: Byte, index: Int): ByteBuffer {
- val i = idx(index, 1)
- dw.setInt8(i, value)
- return this
- }
-
- actual fun put(src: ByteArray) = put(src, 0, src.size)
- actual fun put(src: ByteArray, offset: Int, cnt: Int): ByteBuffer {
- val pos = idx(-1, cnt)
- for (i in 0 until cnt) {
- dw.setInt8(pos + i, src[offset + i])
- }
- return this
- }
-
- actual fun putChar(value: Char) = putChar(value, -1)
- actual fun putChar(value: Char, index: Int): ByteBuffer {
- val i = idx(index, 2)
- dw.setUint16(i, value.toShort(), order == ByteOrder.LITTLE_ENDIAN)
- return this
- }
-
- actual fun putShort(value: Short) = putShort(value, -1)
- actual fun putShort(value: Short, index: Int): ByteBuffer {
- val i = idx(index, 2)
- dw.setInt16(i, value, order == ByteOrder.LITTLE_ENDIAN)
- return this
- }
-
- actual fun putInt(value: Int) = putInt(value, -1)
- actual fun putInt(value: Int, index: Int): ByteBuffer {
- val i = idx(index, 4)
- dw.setInt32(i, value, order == ByteOrder.LITTLE_ENDIAN)
- return this
- }
-
- actual fun putLong(value: Long) = putLong(value, -1)
- actual fun putLong(value: Long, index: Int): ByteBuffer {
- val high = (value shr 32).toInt()
- val low = (value and 0xFFFFFFFFL).toInt()
- val scndIdx = if (index == -1) -1 else index + 4
- if (order == ByteOrder.LITTLE_ENDIAN) {
- putInt(low, index)
- putInt(high, scndIdx)
- } else {
- putInt(high, index)
- putInt(low, scndIdx)
- }
- return this
- }
-
- actual fun putFloat(value: Float) = putFloat(value, -1)
- actual fun putFloat(value: Float, index: Int): ByteBuffer {
- val i = idx(index, 4)
- dw.setFloat32(i, value, order == ByteOrder.LITTLE_ENDIAN)
- return this
- }
-
- actual fun putDouble(value: Double) = putDouble(value, -1)
- actual fun putDouble(value: Double, index: Int): ByteBuffer {
- val i = idx(index, 8)
- dw.setFloat64(i, value, order == ByteOrder.LITTLE_ENDIAN)
- return this
- }
-
- actual fun array(): ByteArray {
- val out = ByteArray(limit)
- for (i in 0 until limit) {
- out[i] = dw.getInt8(i)
- }
- return out
- }
-
- actual companion object {
- actual fun allocate(capacity: Int) = ByteBuffer(capacity)
- }
-}
diff --git a/runtime/jvmMain/src/kotlinx/io/Buffers.kt b/runtime/jvmMain/src/kotlinx/io/Buffers.kt
deleted file mode 100644
index cbf531a..0000000
--- a/runtime/jvmMain/src/kotlinx/io/Buffers.kt
+++ /dev/null
@@ -1,64 +0,0 @@
-/*
- * Copyright 2017-2020 JetBrains s.r.o. Use of this source code is governed by the Apache 2.0 license.
- */
-@file:Suppress(
- "DEPRECATION_ERROR", "NO_EXPLICIT_VISIBILITY_IN_API_MODE_WARNING",
- "NO_EXPLICIT_RETURN_TYPE_IN_API_MODE_WARNING"
-)
-package kotlinx.io
-
-@Deprecated(message = message, level = DeprecationLevel.ERROR)
-typealias JByteBuffer = java.nio.ByteBuffer
-@Deprecated(message = message, level = DeprecationLevel.ERROR)
-typealias JByteOrder = java.nio.ByteOrder
-
-@Deprecated(message = message, level = DeprecationLevel.ERROR)
-actual class ByteBuffer private constructor() {
- private lateinit var dw: JByteBuffer
- constructor(dw: JByteBuffer): this() {
- this.dw = dw
- }
- actual fun order(order: ByteOrder): ByteBuffer { dw.order(if (order == ByteOrder.LITTLE_ENDIAN) JByteOrder.LITTLE_ENDIAN else JByteOrder.BIG_ENDIAN); return this;}
- actual fun clear(): ByteBuffer { dw.clear(); return this;}
- actual fun flip(): ByteBuffer { dw.flip(); return this;}
-
- actual fun get(): Byte = dw.get()
- actual fun get(index: Int): Byte = dw.get(index)
- actual fun get(dst: ByteArray, offset: Int, cnt: Int): Unit {dw.get(dst, offset, cnt)}
- actual fun getChar(): Char = dw.getChar()
- actual fun getChar(index: Int): Char = dw.getChar(index)
- actual fun getShort(): Short = dw.getShort()
- actual fun getShort(index: Int): Short = dw.getShort(index)
- actual fun getInt(): Int = dw.getInt()
- actual fun getInt(index: Int): Int = dw.getInt(index)
- actual fun getLong(): Long = dw.getLong()
- actual fun getLong(index: Int): Long = dw.getLong(index)
- actual fun getFloat(): Float = dw.getFloat()
- actual fun getFloat(index: Int): Float = dw.getFloat(index)
- actual fun getDouble(): Double = dw.getDouble()
- actual fun getDouble(index: Int): Double = dw.getDouble(index)
-
-
- actual fun put(value: Byte): ByteBuffer {dw.put(value); return this}
- actual fun put(value: Byte, index: Int): ByteBuffer {dw.put(index, value); return this}
- actual fun put(src: ByteArray): ByteBuffer {dw.put(src); return this;}
- actual fun put(src: ByteArray, offset: Int, cnt: Int): ByteBuffer {dw.put(src, offset, cnt); return this;}
-
- actual fun putChar(value: Char): ByteBuffer {dw.putChar(value); return this}
- actual fun putChar(value: Char, index: Int): ByteBuffer {dw.putChar(index, value); return this}
- actual fun putShort(value: Short): ByteBuffer {dw.putShort(value); return this}
- actual fun putShort(value: Short, index: Int): ByteBuffer {dw.putShort(index, value); return this}
- actual fun putInt(value: Int): ByteBuffer {dw.putInt(value); return this}
- actual fun putInt(value: Int, index: Int): ByteBuffer {dw.putInt(index, value); return this}
- actual fun putLong(value: Long): ByteBuffer {dw.putLong(value); return this}
- actual fun putLong(value: Long, index: Int): ByteBuffer {dw.putLong(index, value); return this}
- actual fun putFloat(value: Float): ByteBuffer {dw.putFloat(value); return this}
- actual fun putFloat(value: Float, index: Int): ByteBuffer {dw.putFloat(index, value); return this}
- actual fun putDouble(value: Double): ByteBuffer {dw.putDouble(value); return this}
- actual fun putDouble(value: Double, index: Int): ByteBuffer {dw.putDouble(index, value); return this}
-
- actual fun array(): ByteArray = dw.array()
- actual companion object {
- actual fun allocate(capacity: Int) = ByteBuffer(java.nio.ByteBuffer.allocate(capacity))
- }
-}
diff --git a/runtime/jvmMain/src/kotlinx/serialization/JvmResolving.kt b/runtime/jvmMain/src/kotlinx/serialization/JvmResolving.kt
index 1fb6581..a36b9bd 100644
--- a/runtime/jvmMain/src/kotlinx/serialization/JvmResolving.kt
+++ b/runtime/jvmMain/src/kotlinx/serialization/JvmResolving.kt
@@ -19,7 +19,7 @@
* Consider using Kotlin's [typeOf] and [KType] since they can
* also provide information about nullability.
*/
-@Deprecated("Consider using Kotlin type token instead", ReplaceWith("typeOf()"), level = DeprecationLevel.WARNING)
+@Deprecated("Consider using Kotlin type token instead", ReplaceWith("typeOf()"), level = DeprecationLevel.ERROR)
public inline fun <reified T> typeTokenOf(): Type {
val base = object : TypeBase<T>() {}
val superType = base::class.java.genericSuperclass!!
diff --git a/runtime/jvmTest/src/kotlinx/serialization/features/ResolvingTest.kt b/runtime/jvmTest/src/kotlinx/serialization/features/SerializerByTypeTest.kt
similarity index 94%
rename from runtime/jvmTest/src/kotlinx/serialization/features/ResolvingTest.kt
rename to runtime/jvmTest/src/kotlinx/serialization/features/SerializerByTypeTest.kt
index 0e441be..cc97b7f 100644
--- a/runtime/jvmTest/src/kotlinx/serialization/features/ResolvingTest.kt
+++ b/runtime/jvmTest/src/kotlinx/serialization/features/SerializerByTypeTest.kt
@@ -13,7 +13,7 @@
import java.lang.reflect.*
import kotlin.test.*
-class ResolvingTest {
+class SerializerByTypeTest {
val unquoted = Json { unquotedPrint = true }
@@ -176,4 +176,10 @@
val serial = serializerByTypeToken(token)
assertEquals(SerializableObject.serializer().descriptor, serial.descriptor)
}
+
+ public inline fun <reified T> typeTokenOf(): Type {
+ val base = object : TypeBase<T>() {}
+ val superType = base::class.java.genericSuperclass!!
+ return (superType as ParameterizedType).actualTypeArguments.first()!!
+ }
}
diff --git a/runtime/nativeMain/src/kotlinx/io/Buffers.kt b/runtime/nativeMain/src/kotlinx/io/Buffers.kt
deleted file mode 100644
index 8b3575b..0000000
--- a/runtime/nativeMain/src/kotlinx/io/Buffers.kt
+++ /dev/null
@@ -1,246 +0,0 @@
-/*
- * Copyright 2017-2020 JetBrains s.r.o. Use of this source code is governed by the Apache 2.0 license.
- */
-@file:Suppress(
- "DEPRECATION_ERROR", "NO_EXPLICIT_VISIBILITY_IN_API_MODE_WARNING",
- "NO_EXPLICIT_RETURN_TYPE_IN_API_MODE_WARNING"
-)
-package kotlinx.io
-
-@Deprecated(message = message, level = DeprecationLevel.ERROR)
-actual class ByteBuffer private constructor(private var backingArray: ByteArray) {
-
- private var idx = 0
-
- actual companion object {
- actual fun allocate(capacity: Int): ByteBuffer = ByteBuffer(ByteArray(capacity))
- }
-
- private var order: ByteOrder = ByteOrder.BIG_ENDIAN
-
- actual fun order(order: ByteOrder): ByteBuffer {
- this.order = order
- return this
- }
-
- actual fun clear(): ByteBuffer {
- backingArray = ByteArray(backingArray.size)
- idx = 0
- return this
- }
-
- actual fun flip(): ByteBuffer {
- idx = 0
- return this
- }
-
- actual fun get(): Byte {
- return backingArray[idx++]
- }
-
- actual fun getChar() = transformToInt(backingArray[idx++], backingArray[idx++], bytesToRead = 2).toChar()
- actual fun getShort() = transformToInt(backingArray[idx++], backingArray[idx++], bytesToRead = 2).toShort()
- actual fun getInt() = transformToInt(
- backingArray[idx++],
- backingArray[idx++],
- backingArray[idx++],
- backingArray[idx++],
- bytesToRead = 4
- )
-
- actual fun getFloat() = Float.fromBits(
- transformToInt(
- backingArray[idx++],
- backingArray[idx++],
- backingArray[idx++],
- backingArray[idx++],
- bytesToRead = 4
- )
- )
-
- private fun transformToInt(vararg bytes: Byte, bytesToRead: Int): Int {
- if (order != ByteOrder.LITTLE_ENDIAN) {
- var r: Int = 0
- if (bytesToRead > 2) {
- r = r or (((bytes.getOrNull(0) ?: 0).toInt() and 0xFF) shl 24)
- r = r or (((bytes.getOrNull(1) ?: 0).toInt() and 0xFF) shl 16)
- }
- val offset = if (bytesToRead == 2) 0 else 2
- r = r or (((bytes.getOrNull(offset) ?: 0).toInt() and 0xFF) shl 8)
- r = r or (((bytes.getOrNull(offset + 1) ?: 0).toInt() and 0xFF) shl 0)
- return r
- } else {
- var r: Int = 0
- r = r or (((bytes.getOrNull(0) ?: 0).toInt() and 0xFF) shl 0)
- r = r or (((bytes.getOrNull(1) ?: 0).toInt() and 0xFF) shl 8)
- r = r or (((bytes.getOrNull(2) ?: 0).toInt() and 0xFF) shl 16)
- r = r or (((bytes.getOrNull(3) ?: 0).toInt() and 0xFF) shl 24)
- return r
- }
- }
-
- private fun transformFromInt(i: Int, bytesToWrite: Int) {
- val b0 = (i ushr 24).toByte()
- val b1 = (i ushr 16).toByte()
- val b2 = (i ushr 8).toByte()
- val b3 = (i).toByte()
- if (order != ByteOrder.LITTLE_ENDIAN) {
- if (bytesToWrite > 2) {
- backingArray[idx++] = b0
- backingArray[idx++] = b1
- }
- backingArray[idx++] = b2
- backingArray[idx++] = b3
- } else {
- backingArray[idx++] = b3
- if (bytesToWrite < 2) return
- backingArray[idx++] = b2
- if (bytesToWrite < 4) return
- backingArray[idx++] = b1
- backingArray[idx++] = b0
- }
- }
-
- actual fun put(value: Byte): ByteBuffer {
- backingArray[idx++] = value
- return this
- }
-
- actual fun putChar(value: Char): ByteBuffer {
- transformFromInt(value.toInt() and 0xFFFF, 2)
- return this
- }
-
- actual fun putShort(value: Short): ByteBuffer {
- transformFromInt(value.toInt() and 0xFFFF, 2)
- return this
- }
-
- actual fun putInt(value: Int): ByteBuffer {
- transformFromInt(value, 4)
- return this
- }
-
- actual fun putFloat(value: Float): ByteBuffer {
- transformFromInt(value.toBits(), 4)
- return this
- }
-
- actual fun array(): ByteArray {
- return backingArray
- }
-
- actual fun put(src: ByteArray): ByteBuffer {
- for (i in src) backingArray[idx++] = i
- return this
- }
-
- actual fun getLong(): Long {
- val baseOffset = idx
- var bytes: Long = 0
- if (order != ByteOrder.LITTLE_ENDIAN) {
- for (i in 0..7) {
- bytes = bytes shl 8
- bytes = bytes or (backingArray[baseOffset + i].toInt() and 0xFF).toLong()
- }
- } else {
- for (i in 7 downTo 0) {
- bytes = bytes shl 8
- bytes = bytes or (backingArray[baseOffset + i].toInt() and 0xFF).toLong()
- }
- }
- idx += 8
- return bytes
- }
-
- actual fun getDouble(): Double {
- return Double.fromBits(getLong())
- }
-
- @Suppress("NAME_SHADOWING")
- actual fun putLong(value: Long): ByteBuffer {
- var value = value
- val baseOffset = idx
- if (order != ByteOrder.LITTLE_ENDIAN) {
- for (i in 7 downTo 0) {
- backingArray[baseOffset + i] = (value and 0xFF).toByte()
- value = value shr 8
- }
- } else {
- for (i in 0..7) {
- backingArray[baseOffset + i] = (value and 0xFF).toByte()
- value = value shr 8
- }
- }
- idx += 8
- return this
- }
-
- actual fun putDouble(value: Double): ByteBuffer {
- return putLong(value.toBits())
- }
-
- actual fun get(index: Int): Byte {
- TODO("Native is not supported yet")
- }
-
- actual fun get(dst: ByteArray, offset: Int, cnt: Int) {
- TODO("Native is not supported yet")
- }
-
- actual fun getChar(index: Int): Char {
- TODO("Native is not supported yet")
- }
-
- actual fun getShort(index: Int): Short {
- TODO("Native is not supported yet")
- }
-
- actual fun getInt(index: Int): Int {
- TODO("Native is not supported yet")
- }
-
- actual fun getLong(index: Int): Long {
- TODO("Native is not supported yet")
- }
-
- actual fun getFloat(index: Int): Float {
- TODO("Native is not supported yet")
- }
-
- actual fun getDouble(index: Int): Double {
- TODO("Native is not supported yet")
- }
-
- actual fun put(value: Byte, index: Int): ByteBuffer {
- TODO("Native is not supported yet")
- }
-
- actual fun put(src: ByteArray, offset: Int, cnt: Int): ByteBuffer {
- TODO("Native is not supported yet")
- }
-
- actual fun putChar(value: Char, index: Int): ByteBuffer {
- TODO("Native is not supported yet")
- }
-
- actual fun putShort(value: Short, index: Int): ByteBuffer {
- TODO("Native is not supported yet")
- }
-
- actual fun putInt(value: Int, index: Int): ByteBuffer {
- TODO("Native is not supported yet")
- }
-
- actual fun putLong(value: Long, index: Int): ByteBuffer {
- TODO("Native is not supported yet")
- }
-
- actual fun putFloat(value: Float, index: Int): ByteBuffer {
- TODO("Native is not supported yet")
- }
-
- actual fun putDouble(value: Double, index: Int): ByteBuffer {
- TODO("Native is not supported yet")
- }
-}