Support plugin intrinsics for serializer() function in K2.
- Add IrPluginContext to JvmBackendContext, so plugin intrinsics can reference external functions properly. - Do not use module.findClassAcrossModuleDependencies as Descriptor API does not work for FIR. - Add asm listing tests in serialization plugin for K2 - Remove Delegated.kt asm listing test as we have similar test in boxIr group. #KT-56553 Fixed
This commit is contained in:
committed by
Space Team
parent
121c920099
commit
80ad6a4cd7
+2
-1
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright 2010-2020 JetBrains s.r.o. and Kotlin Programming Language contributors.
|
||||
* Copyright 2010-2023 JetBrains s.r.o. and Kotlin Programming Language contributors.
|
||||
* Use of this source code is governed by the Apache 2.0 license that can be found in the license/LICENSE.txt file.
|
||||
*/
|
||||
|
||||
@@ -43,6 +43,7 @@ class IrInlineIntrinsicsSupport(
|
||||
override val state: GenerationState
|
||||
get() = classCodegen.context.state
|
||||
|
||||
// todo: this likely need to be moved up as IrInlineIntrinsicsSupport is recreated every time in getOrCreateCallGenerator
|
||||
private val pluginExtensions = IrGenerationExtension.getInstances(classCodegen.context.state.project)
|
||||
.mapNotNull { it.getPlatformIntrinsicExtension(classCodegen.context) as? JvmIrIntrinsicExtension }
|
||||
|
||||
|
||||
+3
-3
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright 2010-2021 JetBrains s.r.o. and Kotlin Programming Language contributors.
|
||||
* Copyright 2010-2023 JetBrains s.r.o. and Kotlin Programming Language contributors.
|
||||
* Use of this source code is governed by the Apache 2.0 license that can be found in the license/LICENSE.txt file.
|
||||
*/
|
||||
|
||||
@@ -309,7 +309,7 @@ open class JvmIrCodegenFactory(
|
||||
}
|
||||
|
||||
override fun invokeLowerings(state: GenerationState, input: CodegenFactory.BackendInput): CodegenFactory.CodegenInput {
|
||||
val (irModuleFragment, symbolTable, customPhaseConfig, irProviders, extensions, backendExtension, _, notifyCodegenStart) =
|
||||
val (irModuleFragment, symbolTable, customPhaseConfig, irProviders, extensions, backendExtension, irPluginContext, notifyCodegenStart) =
|
||||
input as JvmIrBackendInput
|
||||
val irSerializer = if (
|
||||
state.configuration.get(JVMConfigurationKeys.SERIALIZE_IR, JvmSerializeIrMode.NONE) != JvmSerializeIrMode.NONE
|
||||
@@ -319,7 +319,7 @@ open class JvmIrCodegenFactory(
|
||||
val phases = if (evaluatorFragmentInfoForPsi2Ir != null) jvmFragmentLoweringPhases else jvmLoweringPhases
|
||||
val phaseConfig = customPhaseConfig ?: PhaseConfig(phases)
|
||||
val context = JvmBackendContext(
|
||||
state, irModuleFragment.irBuiltins, symbolTable, phaseConfig, extensions, backendExtension, irSerializer,
|
||||
state, irModuleFragment.irBuiltins, symbolTable, phaseConfig, extensions, backendExtension, irSerializer, irPluginContext
|
||||
)
|
||||
if (evaluatorFragmentInfoForPsi2Ir != null) {
|
||||
context.localDeclarationsLoweringData = mutableMapOf()
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright 2010-2020 JetBrains s.r.o. and Kotlin Programming Language contributors.
|
||||
* Copyright 2010-2023 JetBrains s.r.o. and Kotlin Programming Language contributors.
|
||||
* Use of this source code is governed by the Apache 2.0 license that can be found in the license/LICENSE.txt file.
|
||||
*/
|
||||
|
||||
@@ -9,6 +9,7 @@ import org.jetbrains.kotlin.KtDiagnosticReporterWithImplicitIrBasedContext
|
||||
import org.jetbrains.kotlin.backend.common.CommonBackendContext
|
||||
import org.jetbrains.kotlin.backend.common.DefaultMapping
|
||||
import org.jetbrains.kotlin.backend.common.Mapping
|
||||
import org.jetbrains.kotlin.backend.common.extensions.IrPluginContext
|
||||
import org.jetbrains.kotlin.backend.common.ir.Ir
|
||||
import org.jetbrains.kotlin.backend.common.lower.LocalDeclarationsLowering
|
||||
import org.jetbrains.kotlin.backend.common.phaser.PhaseConfig
|
||||
@@ -48,6 +49,7 @@ class JvmBackendContext(
|
||||
val generatorExtensions: JvmGeneratorExtensions,
|
||||
val backendExtension: JvmBackendExtension,
|
||||
val irSerializer: JvmIrSerializer?,
|
||||
val irPluginContext: IrPluginContext?,
|
||||
) : CommonBackendContext {
|
||||
|
||||
@Suppress("UNUSED_PARAMETER")
|
||||
@@ -61,7 +63,7 @@ class JvmBackendContext(
|
||||
generatorExtensions: JvmGeneratorExtensions,
|
||||
backendExtension: JvmBackendExtension,
|
||||
irSerializer: JvmIrSerializer?,
|
||||
) : this(state, irBuiltIns, symbolTable, phaseConfig, generatorExtensions, backendExtension, irSerializer)
|
||||
) : this(state, irBuiltIns, symbolTable, phaseConfig, generatorExtensions, backendExtension, irSerializer, null)
|
||||
|
||||
data class LocalFunctionData(
|
||||
val localContext: LocalDeclarationsLowering.LocalFunctionContext,
|
||||
|
||||
+6
-12
@@ -5,7 +5,7 @@
|
||||
|
||||
package org.jetbrains.kotlinx.serialization.compiler.backend.ir
|
||||
|
||||
import org.jetbrains.kotlin.backend.common.extensions.FirIncompatiblePluginAPI
|
||||
import org.jetbrains.kotlin.backend.common.extensions.IrPluginContext
|
||||
import org.jetbrains.kotlin.backend.jvm.JvmBackendContext
|
||||
import org.jetbrains.kotlin.backend.jvm.codegen.*
|
||||
import org.jetbrains.kotlin.backend.jvm.intrinsics.IntrinsicMethod
|
||||
@@ -18,7 +18,6 @@ import org.jetbrains.kotlin.codegen.inline.ReifiedTypeInliner.Companion.pluginIn
|
||||
import org.jetbrains.kotlin.codegen.inline.ReifiedTypeInliner.Companion.pluginIntrinsicsMarkerOwner
|
||||
import org.jetbrains.kotlin.codegen.inline.ReifiedTypeInliner.Companion.pluginIntrinsicsMarkerSignature
|
||||
import org.jetbrains.kotlin.config.ApiVersion
|
||||
import org.jetbrains.kotlin.descriptors.findClassAcrossModuleDependencies
|
||||
import org.jetbrains.kotlin.ir.declarations.IrClass
|
||||
import org.jetbrains.kotlin.ir.declarations.IrFunction
|
||||
import org.jetbrains.kotlin.ir.expressions.IrFunctionAccessExpression
|
||||
@@ -49,7 +48,6 @@ import org.jetbrains.kotlinx.serialization.compiler.resolve.SerializersClassIds.
|
||||
import org.jetbrains.kotlinx.serialization.compiler.resolve.SerializersClassIds.referenceArraySerializerId
|
||||
import org.jetbrains.kotlinx.serialization.compiler.resolve.SerializersClassIds.sealedSerializerId
|
||||
import org.jetbrains.kotlinx.serialization.compiler.resolve.SpecialBuiltins
|
||||
import org.jetbrains.kotlinx.serialization.compiler.resolve.annotationsWithArguments
|
||||
import org.jetbrains.kotlinx.serialization.compiler.resolve.getClassFromSerializationPackage
|
||||
import org.jetbrains.org.objectweb.asm.Opcodes
|
||||
import org.jetbrains.org.objectweb.asm.Type
|
||||
@@ -59,7 +57,10 @@ import org.jetbrains.org.objectweb.asm.tree.InsnList
|
||||
import org.jetbrains.org.objectweb.asm.tree.LdcInsnNode
|
||||
import org.jetbrains.org.objectweb.asm.tree.VarInsnNode
|
||||
|
||||
class SerializationJvmIrIntrinsicSupport(val jvmBackendContext: JvmBackendContext) : SerializationBaseContext, JvmIrIntrinsicExtension {
|
||||
class SerializationJvmIrIntrinsicSupport(
|
||||
private val jvmBackendContext: JvmBackendContext,
|
||||
private val irPluginContext: IrPluginContext
|
||||
) : SerializationBaseContext, JvmIrIntrinsicExtension {
|
||||
sealed class IntrinsicType(val methodDescriptor: String) {
|
||||
object Simple : IntrinsicType(stubCallDescriptor)
|
||||
|
||||
@@ -151,14 +152,7 @@ class SerializationJvmIrIntrinsicSupport(val jvmBackendContext: JvmBackendContex
|
||||
private val typeSystemContext = jvmBackendContext.typeSystem
|
||||
private val typeMapper = jvmBackendContext.defaultTypeMapper
|
||||
|
||||
/**
|
||||
* This likely won't work in FIR because module is empty there and can't reference dependencies
|
||||
* Proper referencing can be done via FirPluginContext, but it's not available in the intrinsics.
|
||||
*/
|
||||
@FirIncompatiblePluginAPI
|
||||
override fun referenceClassId(classId: ClassId): IrClassSymbol? {
|
||||
return module.findClassAcrossModuleDependencies(classId)?.let { jvmBackendContext.referenceClass(it) }
|
||||
}
|
||||
override fun referenceClassId(classId: ClassId): IrClassSymbol? = irPluginContext.referenceClass(classId)
|
||||
|
||||
private val currentVersion by lazy {
|
||||
VersionReader.getVersionsForCurrentModuleFromTrace(module, jvmBackendContext.state.bindingTrace)
|
||||
|
||||
+11
-15
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright 2010-2021 JetBrains s.r.o. and Kotlin Programming Language contributors.
|
||||
* Copyright 2010-2023 JetBrains s.r.o. and Kotlin Programming Language contributors.
|
||||
* Use of this source code is governed by the Apache 2.0 license that can be found in the license/LICENSE.txt file.
|
||||
*/
|
||||
|
||||
@@ -14,9 +14,7 @@ import org.jetbrains.kotlin.backend.common.extensions.IrPluginContext
|
||||
import org.jetbrains.kotlin.backend.common.runOnFilePostfix
|
||||
import org.jetbrains.kotlin.backend.jvm.JvmBackendContext
|
||||
import org.jetbrains.kotlin.backend.jvm.ir.fileParent
|
||||
import org.jetbrains.kotlin.config.CommonConfigurationKeys
|
||||
import org.jetbrains.kotlin.builtins.StandardNames
|
||||
import org.jetbrains.kotlin.descriptors.findClassAcrossModuleDependencies
|
||||
import org.jetbrains.kotlin.ir.IrElement
|
||||
import org.jetbrains.kotlin.ir.declarations.*
|
||||
import org.jetbrains.kotlin.ir.symbols.IrClassSymbol
|
||||
@@ -185,25 +183,23 @@ open class SerializationLoweringExtension @JvmOverloads constructor(
|
||||
override fun getPlatformIntrinsicExtension(backendContext: BackendContext): IrIntrinsicExtension? {
|
||||
val ctx = backendContext as? JvmBackendContext ?: return null
|
||||
if (!canEnableIntrinsics(ctx)) return null
|
||||
return SerializationJvmIrIntrinsicSupport(ctx)
|
||||
return SerializationJvmIrIntrinsicSupport(
|
||||
ctx,
|
||||
requireNotNull(ctx.irPluginContext) { "Intrinsics can't be enabled with null irPluginContext, check `canEnableIntrinsics` function for bugs." })
|
||||
}
|
||||
|
||||
private fun canEnableIntrinsics(ctx: JvmBackendContext): Boolean {
|
||||
if (ctx.state.configuration[CommonConfigurationKeys.USE_FIR] == true) return false
|
||||
return when (intrinsicsState) {
|
||||
SerializationIntrinsicsState.FORCE_ENABLED -> true
|
||||
SerializationIntrinsicsState.DISABLED -> false
|
||||
SerializationIntrinsicsState.NORMAL -> {
|
||||
val module = ctx.state.module
|
||||
if (module.findClassAcrossModuleDependencies(
|
||||
ClassId(
|
||||
SerializationPackages.packageFqName,
|
||||
SerialEntityNames.KSERIALIZER_NAME
|
||||
)
|
||||
) == null
|
||||
) return false
|
||||
module.getPackage(SerializationPackages.packageFqName).memberScope.getFunctionNames()
|
||||
.any { it.asString() == SerializationJvmIrIntrinsicSupport.noCompiledSerializerMethodName }
|
||||
val requiredFunctionsFromRuntime = ctx.irPluginContext?.referenceFunctions(
|
||||
CallableId(
|
||||
SerializationPackages.packageFqName,
|
||||
Name.identifier(SerializationJvmIrIntrinsicSupport.noCompiledSerializerMethodName)
|
||||
)
|
||||
).orEmpty()
|
||||
requiredFunctionsFromRuntime.isNotEmpty() && requiredFunctionsFromRuntime.all { it.isBound }
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -5,6 +5,7 @@
|
||||
import kotlinx.serialization.*
|
||||
import kotlinx.serialization.json.*
|
||||
import kotlinx.serialization.encoding.*
|
||||
import kotlin.reflect.typeOf
|
||||
|
||||
@Serializable
|
||||
data class Holder<T>(
|
||||
@@ -14,7 +15,7 @@ data class Holder<T>(
|
||||
)
|
||||
|
||||
fun box(): String {
|
||||
val serializer = serializer<Holder<List<String>>>()
|
||||
val serializer = serializer(typeOf<Holder<List<String>>>())
|
||||
val instance = Holder(true, listOf("a", "b"))
|
||||
val encoded = Json.encodeToString(serializer, instance)
|
||||
if (encoded != """{"ok":true,"result":["a","b"]}""") return encoded
|
||||
|
||||
@@ -1,4 +1,3 @@
|
||||
// IGNORE_BACKEND_FIR: JVM_IR
|
||||
// TARGET_BACKEND: JVM_IR
|
||||
|
||||
// WITH_STDLIB
|
||||
|
||||
@@ -19,7 +19,7 @@ object SerializableObject {}
|
||||
|
||||
val module = SerializersModule {}
|
||||
|
||||
inline fun <reified T: Any> getSer(module: SerializersModule): KSerializer<T> {
|
||||
inline fun <reified T : Any> getSer(module: SerializersModule): KSerializer<T> {
|
||||
return module.serializer<T>()
|
||||
}
|
||||
|
||||
|
||||
@@ -0,0 +1,988 @@
|
||||
public final class ListOfUsers$$serializer : java/lang/Object, kotlinx/serialization/internal/GeneratedSerializer {
|
||||
public final static ListOfUsers$$serializer INSTANCE
|
||||
|
||||
private final static kotlinx.serialization.descriptors.SerialDescriptor descriptor
|
||||
|
||||
static void <clinit>() {
|
||||
NEW (ListOfUsers$$serializer)
|
||||
DUP
|
||||
INVOKESPECIAL (ListOfUsers$$serializer, <init>, ()V)
|
||||
PUTSTATIC (ListOfUsers$$serializer, INSTANCE, LListOfUsers$$serializer;)
|
||||
NEW (kotlinx/serialization/internal/PluginGeneratedSerialDescriptor)
|
||||
DUP
|
||||
LDC (ListOfUsers)
|
||||
GETSTATIC (ListOfUsers$$serializer, INSTANCE, LListOfUsers$$serializer;)
|
||||
CHECKCAST (kotlinx/serialization/internal/GeneratedSerializer)
|
||||
ICONST_1
|
||||
INVOKESPECIAL (kotlinx/serialization/internal/PluginGeneratedSerialDescriptor, <init>, (Ljava/lang/String;Lkotlinx/serialization/internal/GeneratedSerializer;I)V)
|
||||
ASTORE (0)
|
||||
ALOAD (0)
|
||||
LDC (list)
|
||||
ICONST_0
|
||||
INVOKEVIRTUAL (kotlinx/serialization/internal/PluginGeneratedSerialDescriptor, addElement, (Ljava/lang/String;Z)V)
|
||||
ALOAD (0)
|
||||
CHECKCAST (kotlinx/serialization/descriptors/SerialDescriptor)
|
||||
PUTSTATIC (ListOfUsers$$serializer, descriptor, Lkotlinx/serialization/descriptors/SerialDescriptor;)
|
||||
RETURN
|
||||
}
|
||||
|
||||
private void <init>() {
|
||||
LABEL (L0)
|
||||
ALOAD (0)
|
||||
INVOKESPECIAL (java/lang/Object, <init>, ()V)
|
||||
RETURN
|
||||
LABEL (L1)
|
||||
}
|
||||
|
||||
public final kotlinx.serialization.KSerializer[] childSerializers() {
|
||||
LABEL (L0)
|
||||
INVOKESTATIC (ListOfUsers, access$get$childSerializers$cp, ()[Lkotlinx/serialization/KSerializer;)
|
||||
ASTORE (1)
|
||||
ICONST_1
|
||||
ANEWARRAY (kotlinx/serialization/KSerializer)
|
||||
ASTORE (2)
|
||||
ALOAD (2)
|
||||
ICONST_0
|
||||
ALOAD (1)
|
||||
ICONST_0
|
||||
AALOAD
|
||||
AASTORE
|
||||
ALOAD (2)
|
||||
ARETURN
|
||||
LABEL (L1)
|
||||
}
|
||||
|
||||
public final ListOfUsers deserialize(kotlinx.serialization.encoding.Decoder decoder) {
|
||||
LABEL (L0)
|
||||
ALOAD (1)
|
||||
LDC (decoder)
|
||||
INVOKESTATIC (kotlin/jvm/internal/Intrinsics, checkNotNullParameter, (Ljava/lang/Object;Ljava/lang/String;)V)
|
||||
GETSTATIC (ListOfUsers$$serializer, descriptor, Lkotlinx/serialization/descriptors/SerialDescriptor;)
|
||||
ASTORE (2)
|
||||
ICONST_1
|
||||
ISTORE (3)
|
||||
ICONST_0
|
||||
ISTORE (5)
|
||||
ACONST_NULL
|
||||
ASTORE (6)
|
||||
ALOAD (1)
|
||||
ALOAD (2)
|
||||
INVOKEINTERFACE (kotlinx/serialization/encoding/Decoder, beginStructure, (Lkotlinx/serialization/descriptors/SerialDescriptor;)Lkotlinx/serialization/encoding/CompositeDecoder;)
|
||||
ASTORE (7)
|
||||
INVOKESTATIC (ListOfUsers, access$get$childSerializers$cp, ()[Lkotlinx/serialization/KSerializer;)
|
||||
ASTORE (8)
|
||||
ALOAD (7)
|
||||
INVOKEINTERFACE (kotlinx/serialization/encoding/CompositeDecoder, decodeSequentially, ()Z)
|
||||
IFEQ (L1)
|
||||
ALOAD (7)
|
||||
ALOAD (2)
|
||||
ICONST_0
|
||||
ALOAD (8)
|
||||
ICONST_0
|
||||
AALOAD
|
||||
CHECKCAST (kotlinx/serialization/DeserializationStrategy)
|
||||
ALOAD (6)
|
||||
INVOKEINTERFACE (kotlinx/serialization/encoding/CompositeDecoder, decodeSerializableElement, (Lkotlinx/serialization/descriptors/SerialDescriptor;ILkotlinx/serialization/DeserializationStrategy;Ljava/lang/Object;)Ljava/lang/Object;)
|
||||
ASTORE (6)
|
||||
ILOAD (5)
|
||||
ICONST_1
|
||||
IOR
|
||||
ISTORE (5)
|
||||
GOTO (L2)
|
||||
LABEL (L1)
|
||||
ILOAD (3)
|
||||
IFEQ (L2)
|
||||
ALOAD (7)
|
||||
ALOAD (2)
|
||||
INVOKEINTERFACE (kotlinx/serialization/encoding/CompositeDecoder, decodeElementIndex, (Lkotlinx/serialization/descriptors/SerialDescriptor;)I)
|
||||
ISTORE (4)
|
||||
ILOAD (4)
|
||||
TABLESWITCH
|
||||
-1: L3
|
||||
0: L4
|
||||
default: L5
|
||||
LABEL (L3)
|
||||
ICONST_0
|
||||
ISTORE (3)
|
||||
GOTO (L1)
|
||||
LABEL (L4)
|
||||
ALOAD (7)
|
||||
ALOAD (2)
|
||||
ICONST_0
|
||||
ALOAD (8)
|
||||
ICONST_0
|
||||
AALOAD
|
||||
CHECKCAST (kotlinx/serialization/DeserializationStrategy)
|
||||
ALOAD (6)
|
||||
INVOKEINTERFACE (kotlinx/serialization/encoding/CompositeDecoder, decodeSerializableElement, (Lkotlinx/serialization/descriptors/SerialDescriptor;ILkotlinx/serialization/DeserializationStrategy;Ljava/lang/Object;)Ljava/lang/Object;)
|
||||
ASTORE (6)
|
||||
ILOAD (5)
|
||||
ICONST_1
|
||||
IOR
|
||||
ISTORE (5)
|
||||
GOTO (L1)
|
||||
LABEL (L5)
|
||||
NEW (kotlinx/serialization/UnknownFieldException)
|
||||
DUP
|
||||
ILOAD (4)
|
||||
INVOKESPECIAL (kotlinx/serialization/UnknownFieldException, <init>, (I)V)
|
||||
ATHROW
|
||||
LABEL (L2)
|
||||
ALOAD (7)
|
||||
ALOAD (2)
|
||||
INVOKEINTERFACE (kotlinx/serialization/encoding/CompositeDecoder, endStructure, (Lkotlinx/serialization/descriptors/SerialDescriptor;)V)
|
||||
NEW (ListOfUsers)
|
||||
DUP
|
||||
ILOAD (5)
|
||||
ALOAD (6)
|
||||
CHECKCAST (java/util/List)
|
||||
ACONST_NULL
|
||||
INVOKESPECIAL (ListOfUsers, <init>, (ILjava/util/List;Lkotlinx/serialization/internal/SerializationConstructorMarker;)V)
|
||||
ARETURN
|
||||
LABEL (L6)
|
||||
}
|
||||
|
||||
public java.lang.Object deserialize(kotlinx.serialization.encoding.Decoder decoder) {
|
||||
LABEL (L0)
|
||||
ALOAD (0)
|
||||
ALOAD (1)
|
||||
INVOKEVIRTUAL (ListOfUsers$$serializer, deserialize, (Lkotlinx/serialization/encoding/Decoder;)LListOfUsers;)
|
||||
ARETURN
|
||||
LABEL (L1)
|
||||
}
|
||||
|
||||
public final kotlinx.serialization.descriptors.SerialDescriptor getDescriptor() {
|
||||
LABEL (L0)
|
||||
GETSTATIC (ListOfUsers$$serializer, descriptor, Lkotlinx/serialization/descriptors/SerialDescriptor;)
|
||||
ARETURN
|
||||
LABEL (L1)
|
||||
}
|
||||
|
||||
public final void serialize(kotlinx.serialization.encoding.Encoder encoder, ListOfUsers value) {
|
||||
LABEL (L0)
|
||||
ALOAD (1)
|
||||
LDC (encoder)
|
||||
INVOKESTATIC (kotlin/jvm/internal/Intrinsics, checkNotNullParameter, (Ljava/lang/Object;Ljava/lang/String;)V)
|
||||
ALOAD (2)
|
||||
LDC (value)
|
||||
INVOKESTATIC (kotlin/jvm/internal/Intrinsics, checkNotNullParameter, (Ljava/lang/Object;Ljava/lang/String;)V)
|
||||
GETSTATIC (ListOfUsers$$serializer, descriptor, Lkotlinx/serialization/descriptors/SerialDescriptor;)
|
||||
ASTORE (3)
|
||||
ALOAD (1)
|
||||
ALOAD (3)
|
||||
INVOKEINTERFACE (kotlinx/serialization/encoding/Encoder, beginStructure, (Lkotlinx/serialization/descriptors/SerialDescriptor;)Lkotlinx/serialization/encoding/CompositeEncoder;)
|
||||
ASTORE (4)
|
||||
ALOAD (2)
|
||||
ALOAD (4)
|
||||
ALOAD (3)
|
||||
INVOKESTATIC (ListOfUsers, write$Self, (LListOfUsers;Lkotlinx/serialization/encoding/CompositeEncoder;Lkotlinx/serialization/descriptors/SerialDescriptor;)V)
|
||||
ALOAD (4)
|
||||
ALOAD (3)
|
||||
INVOKEINTERFACE (kotlinx/serialization/encoding/CompositeEncoder, endStructure, (Lkotlinx/serialization/descriptors/SerialDescriptor;)V)
|
||||
RETURN
|
||||
LABEL (L1)
|
||||
}
|
||||
|
||||
public void serialize(kotlinx.serialization.encoding.Encoder encoder, java.lang.Object value) {
|
||||
LABEL (L0)
|
||||
ALOAD (0)
|
||||
ALOAD (1)
|
||||
ALOAD (2)
|
||||
CHECKCAST (ListOfUsers)
|
||||
INVOKEVIRTUAL (ListOfUsers$$serializer, serialize, (Lkotlinx/serialization/encoding/Encoder;LListOfUsers;)V)
|
||||
RETURN
|
||||
LABEL (L1)
|
||||
}
|
||||
|
||||
public kotlinx.serialization.KSerializer[] typeParametersSerializers()
|
||||
}
|
||||
|
||||
public final class ListOfUsers$Companion : java/lang/Object {
|
||||
private void <init>() {
|
||||
LABEL (L0)
|
||||
ALOAD (0)
|
||||
INVOKESPECIAL (java/lang/Object, <init>, ()V)
|
||||
RETURN
|
||||
LABEL (L1)
|
||||
}
|
||||
|
||||
public void <init>(kotlin.jvm.internal.DefaultConstructorMarker $constructor_marker) {
|
||||
LABEL (L0)
|
||||
ALOAD (0)
|
||||
INVOKESPECIAL (ListOfUsers$Companion, <init>, ()V)
|
||||
RETURN
|
||||
LABEL (L1)
|
||||
}
|
||||
|
||||
public final kotlinx.serialization.KSerializer serializer()
|
||||
}
|
||||
|
||||
public final class ListOfUsers : java/lang/Object {
|
||||
private final static kotlinx.serialization.KSerializer[] $childSerializers
|
||||
|
||||
public final static ListOfUsers$Companion Companion
|
||||
|
||||
private final java.util.List list
|
||||
|
||||
static void <clinit>() {
|
||||
NEW (ListOfUsers$Companion)
|
||||
DUP
|
||||
ACONST_NULL
|
||||
INVOKESPECIAL (ListOfUsers$Companion, <init>, (Lkotlin/jvm/internal/DefaultConstructorMarker;)V)
|
||||
PUTSTATIC (ListOfUsers, Companion, LListOfUsers$Companion;)
|
||||
ICONST_1
|
||||
ANEWARRAY (kotlinx/serialization/KSerializer)
|
||||
ASTORE (0)
|
||||
ALOAD (0)
|
||||
ICONST_0
|
||||
NEW (kotlinx/serialization/internal/ArrayListSerializer)
|
||||
DUP
|
||||
GETSTATIC (User$$serializer, INSTANCE, LUser$$serializer;)
|
||||
CHECKCAST (kotlinx/serialization/KSerializer)
|
||||
INVOKESPECIAL (kotlinx/serialization/internal/ArrayListSerializer, <init>, (Lkotlinx/serialization/KSerializer;)V)
|
||||
AASTORE
|
||||
ALOAD (0)
|
||||
PUTSTATIC (ListOfUsers, $childSerializers, [Lkotlinx/serialization/KSerializer;)
|
||||
RETURN
|
||||
}
|
||||
|
||||
public void <init>(java.util.List list) {
|
||||
LABEL (L0)
|
||||
ALOAD (1)
|
||||
LDC (list)
|
||||
INVOKESTATIC (kotlin/jvm/internal/Intrinsics, checkNotNullParameter, (Ljava/lang/Object;Ljava/lang/String;)V)
|
||||
LABEL (L1)
|
||||
LINENUMBER (13)
|
||||
ALOAD (0)
|
||||
INVOKESPECIAL (java/lang/Object, <init>, ()V)
|
||||
ALOAD (0)
|
||||
ALOAD (1)
|
||||
PUTFIELD (ListOfUsers, list, Ljava/util/List;)
|
||||
RETURN
|
||||
LABEL (L2)
|
||||
}
|
||||
|
||||
public void <init>(int seen0, java.util.List list, kotlinx.serialization.internal.SerializationConstructorMarker serializationConstructorMarker) {
|
||||
LABEL (L0)
|
||||
LINENUMBER (12)
|
||||
ICONST_1
|
||||
ICONST_1
|
||||
ILOAD (1)
|
||||
IAND
|
||||
IF_ICMPEQ (L1)
|
||||
ILOAD (1)
|
||||
ICONST_1
|
||||
GETSTATIC (ListOfUsers$$serializer, INSTANCE, LListOfUsers$$serializer;)
|
||||
INVOKEVIRTUAL (ListOfUsers$$serializer, getDescriptor, ()Lkotlinx/serialization/descriptors/SerialDescriptor;)
|
||||
INVOKESTATIC (kotlinx/serialization/internal/PluginExceptionsKt, throwMissingFieldException, (IILkotlinx/serialization/descriptors/SerialDescriptor;)V)
|
||||
LABEL (L1)
|
||||
ALOAD (0)
|
||||
INVOKESPECIAL (java/lang/Object, <init>, ()V)
|
||||
ALOAD (0)
|
||||
ALOAD (2)
|
||||
PUTFIELD (ListOfUsers, list, Ljava/util/List;)
|
||||
RETURN
|
||||
LABEL (L2)
|
||||
}
|
||||
|
||||
public final static kotlinx.serialization.KSerializer[] access$get$childSerializers$cp()
|
||||
|
||||
public final java.util.List getList()
|
||||
|
||||
public final static void write$Self(ListOfUsers self, kotlinx.serialization.encoding.CompositeEncoder output, kotlinx.serialization.descriptors.SerialDescriptor serialDesc) {
|
||||
LABEL (L0)
|
||||
LINENUMBER (12)
|
||||
GETSTATIC (ListOfUsers, $childSerializers, [Lkotlinx/serialization/KSerializer;)
|
||||
ASTORE (3)
|
||||
ALOAD (1)
|
||||
ALOAD (2)
|
||||
ICONST_0
|
||||
ALOAD (3)
|
||||
ICONST_0
|
||||
AALOAD
|
||||
CHECKCAST (kotlinx/serialization/SerializationStrategy)
|
||||
ALOAD (0)
|
||||
GETFIELD (ListOfUsers, list, Ljava/util/List;)
|
||||
INVOKEINTERFACE (kotlinx/serialization/encoding/CompositeEncoder, encodeSerializableElement, (Lkotlinx/serialization/descriptors/SerialDescriptor;ILkotlinx/serialization/SerializationStrategy;Ljava/lang/Object;)V)
|
||||
RETURN
|
||||
LABEL (L1)
|
||||
}
|
||||
}
|
||||
|
||||
public final class OptionalUser$$serializer : java/lang/Object, kotlinx/serialization/internal/GeneratedSerializer {
|
||||
public final static OptionalUser$$serializer INSTANCE
|
||||
|
||||
private final static kotlinx.serialization.descriptors.SerialDescriptor descriptor
|
||||
|
||||
static void <clinit>() {
|
||||
NEW (OptionalUser$$serializer)
|
||||
DUP
|
||||
INVOKESPECIAL (OptionalUser$$serializer, <init>, ()V)
|
||||
PUTSTATIC (OptionalUser$$serializer, INSTANCE, LOptionalUser$$serializer;)
|
||||
NEW (kotlinx/serialization/internal/PluginGeneratedSerialDescriptor)
|
||||
DUP
|
||||
LDC (OptionalUser)
|
||||
GETSTATIC (OptionalUser$$serializer, INSTANCE, LOptionalUser$$serializer;)
|
||||
CHECKCAST (kotlinx/serialization/internal/GeneratedSerializer)
|
||||
ICONST_1
|
||||
INVOKESPECIAL (kotlinx/serialization/internal/PluginGeneratedSerialDescriptor, <init>, (Ljava/lang/String;Lkotlinx/serialization/internal/GeneratedSerializer;I)V)
|
||||
ASTORE (0)
|
||||
ALOAD (0)
|
||||
LDC (user)
|
||||
ICONST_1
|
||||
INVOKEVIRTUAL (kotlinx/serialization/internal/PluginGeneratedSerialDescriptor, addElement, (Ljava/lang/String;Z)V)
|
||||
ALOAD (0)
|
||||
CHECKCAST (kotlinx/serialization/descriptors/SerialDescriptor)
|
||||
PUTSTATIC (OptionalUser$$serializer, descriptor, Lkotlinx/serialization/descriptors/SerialDescriptor;)
|
||||
RETURN
|
||||
}
|
||||
|
||||
private void <init>() {
|
||||
LABEL (L0)
|
||||
ALOAD (0)
|
||||
INVOKESPECIAL (java/lang/Object, <init>, ()V)
|
||||
RETURN
|
||||
LABEL (L1)
|
||||
}
|
||||
|
||||
public final kotlinx.serialization.KSerializer[] childSerializers() {
|
||||
LABEL (L0)
|
||||
ICONST_1
|
||||
ANEWARRAY (kotlinx/serialization/KSerializer)
|
||||
ASTORE (1)
|
||||
ALOAD (1)
|
||||
ICONST_0
|
||||
GETSTATIC (User$$serializer, INSTANCE, LUser$$serializer;)
|
||||
AASTORE
|
||||
ALOAD (1)
|
||||
ARETURN
|
||||
LABEL (L1)
|
||||
}
|
||||
|
||||
public final OptionalUser deserialize(kotlinx.serialization.encoding.Decoder decoder) {
|
||||
LABEL (L0)
|
||||
ALOAD (1)
|
||||
LDC (decoder)
|
||||
INVOKESTATIC (kotlin/jvm/internal/Intrinsics, checkNotNullParameter, (Ljava/lang/Object;Ljava/lang/String;)V)
|
||||
GETSTATIC (OptionalUser$$serializer, descriptor, Lkotlinx/serialization/descriptors/SerialDescriptor;)
|
||||
ASTORE (2)
|
||||
ICONST_1
|
||||
ISTORE (3)
|
||||
ICONST_0
|
||||
ISTORE (5)
|
||||
ACONST_NULL
|
||||
ASTORE (6)
|
||||
ALOAD (1)
|
||||
ALOAD (2)
|
||||
INVOKEINTERFACE (kotlinx/serialization/encoding/Decoder, beginStructure, (Lkotlinx/serialization/descriptors/SerialDescriptor;)Lkotlinx/serialization/encoding/CompositeDecoder;)
|
||||
ASTORE (7)
|
||||
ALOAD (7)
|
||||
INVOKEINTERFACE (kotlinx/serialization/encoding/CompositeDecoder, decodeSequentially, ()Z)
|
||||
IFEQ (L1)
|
||||
ALOAD (7)
|
||||
ALOAD (2)
|
||||
ICONST_0
|
||||
GETSTATIC (User$$serializer, INSTANCE, LUser$$serializer;)
|
||||
CHECKCAST (kotlinx/serialization/DeserializationStrategy)
|
||||
ALOAD (6)
|
||||
INVOKEINTERFACE (kotlinx/serialization/encoding/CompositeDecoder, decodeSerializableElement, (Lkotlinx/serialization/descriptors/SerialDescriptor;ILkotlinx/serialization/DeserializationStrategy;Ljava/lang/Object;)Ljava/lang/Object;)
|
||||
ASTORE (6)
|
||||
ILOAD (5)
|
||||
ICONST_1
|
||||
IOR
|
||||
ISTORE (5)
|
||||
GOTO (L2)
|
||||
LABEL (L1)
|
||||
ILOAD (3)
|
||||
IFEQ (L2)
|
||||
ALOAD (7)
|
||||
ALOAD (2)
|
||||
INVOKEINTERFACE (kotlinx/serialization/encoding/CompositeDecoder, decodeElementIndex, (Lkotlinx/serialization/descriptors/SerialDescriptor;)I)
|
||||
ISTORE (4)
|
||||
ILOAD (4)
|
||||
TABLESWITCH
|
||||
-1: L3
|
||||
0: L4
|
||||
default: L5
|
||||
LABEL (L3)
|
||||
ICONST_0
|
||||
ISTORE (3)
|
||||
GOTO (L1)
|
||||
LABEL (L4)
|
||||
ALOAD (7)
|
||||
ALOAD (2)
|
||||
ICONST_0
|
||||
GETSTATIC (User$$serializer, INSTANCE, LUser$$serializer;)
|
||||
CHECKCAST (kotlinx/serialization/DeserializationStrategy)
|
||||
ALOAD (6)
|
||||
INVOKEINTERFACE (kotlinx/serialization/encoding/CompositeDecoder, decodeSerializableElement, (Lkotlinx/serialization/descriptors/SerialDescriptor;ILkotlinx/serialization/DeserializationStrategy;Ljava/lang/Object;)Ljava/lang/Object;)
|
||||
ASTORE (6)
|
||||
ILOAD (5)
|
||||
ICONST_1
|
||||
IOR
|
||||
ISTORE (5)
|
||||
GOTO (L1)
|
||||
LABEL (L5)
|
||||
NEW (kotlinx/serialization/UnknownFieldException)
|
||||
DUP
|
||||
ILOAD (4)
|
||||
INVOKESPECIAL (kotlinx/serialization/UnknownFieldException, <init>, (I)V)
|
||||
ATHROW
|
||||
LABEL (L2)
|
||||
ALOAD (7)
|
||||
ALOAD (2)
|
||||
INVOKEINTERFACE (kotlinx/serialization/encoding/CompositeDecoder, endStructure, (Lkotlinx/serialization/descriptors/SerialDescriptor;)V)
|
||||
NEW (OptionalUser)
|
||||
DUP
|
||||
ILOAD (5)
|
||||
ALOAD (6)
|
||||
CHECKCAST (User)
|
||||
ACONST_NULL
|
||||
INVOKESPECIAL (OptionalUser, <init>, (ILUser;Lkotlinx/serialization/internal/SerializationConstructorMarker;)V)
|
||||
ARETURN
|
||||
LABEL (L6)
|
||||
}
|
||||
|
||||
public java.lang.Object deserialize(kotlinx.serialization.encoding.Decoder decoder) {
|
||||
LABEL (L0)
|
||||
ALOAD (0)
|
||||
ALOAD (1)
|
||||
INVOKEVIRTUAL (OptionalUser$$serializer, deserialize, (Lkotlinx/serialization/encoding/Decoder;)LOptionalUser;)
|
||||
ARETURN
|
||||
LABEL (L1)
|
||||
}
|
||||
|
||||
public final kotlinx.serialization.descriptors.SerialDescriptor getDescriptor() {
|
||||
LABEL (L0)
|
||||
GETSTATIC (OptionalUser$$serializer, descriptor, Lkotlinx/serialization/descriptors/SerialDescriptor;)
|
||||
ARETURN
|
||||
LABEL (L1)
|
||||
}
|
||||
|
||||
public final void serialize(kotlinx.serialization.encoding.Encoder encoder, OptionalUser value) {
|
||||
LABEL (L0)
|
||||
ALOAD (1)
|
||||
LDC (encoder)
|
||||
INVOKESTATIC (kotlin/jvm/internal/Intrinsics, checkNotNullParameter, (Ljava/lang/Object;Ljava/lang/String;)V)
|
||||
ALOAD (2)
|
||||
LDC (value)
|
||||
INVOKESTATIC (kotlin/jvm/internal/Intrinsics, checkNotNullParameter, (Ljava/lang/Object;Ljava/lang/String;)V)
|
||||
GETSTATIC (OptionalUser$$serializer, descriptor, Lkotlinx/serialization/descriptors/SerialDescriptor;)
|
||||
ASTORE (3)
|
||||
ALOAD (1)
|
||||
ALOAD (3)
|
||||
INVOKEINTERFACE (kotlinx/serialization/encoding/Encoder, beginStructure, (Lkotlinx/serialization/descriptors/SerialDescriptor;)Lkotlinx/serialization/encoding/CompositeEncoder;)
|
||||
ASTORE (4)
|
||||
ALOAD (2)
|
||||
ALOAD (4)
|
||||
ALOAD (3)
|
||||
INVOKESTATIC (OptionalUser, write$Self, (LOptionalUser;Lkotlinx/serialization/encoding/CompositeEncoder;Lkotlinx/serialization/descriptors/SerialDescriptor;)V)
|
||||
ALOAD (4)
|
||||
ALOAD (3)
|
||||
INVOKEINTERFACE (kotlinx/serialization/encoding/CompositeEncoder, endStructure, (Lkotlinx/serialization/descriptors/SerialDescriptor;)V)
|
||||
RETURN
|
||||
LABEL (L1)
|
||||
}
|
||||
|
||||
public void serialize(kotlinx.serialization.encoding.Encoder encoder, java.lang.Object value) {
|
||||
LABEL (L0)
|
||||
ALOAD (0)
|
||||
ALOAD (1)
|
||||
ALOAD (2)
|
||||
CHECKCAST (OptionalUser)
|
||||
INVOKEVIRTUAL (OptionalUser$$serializer, serialize, (Lkotlinx/serialization/encoding/Encoder;LOptionalUser;)V)
|
||||
RETURN
|
||||
LABEL (L1)
|
||||
}
|
||||
|
||||
public kotlinx.serialization.KSerializer[] typeParametersSerializers()
|
||||
}
|
||||
|
||||
public final class OptionalUser$Companion : java/lang/Object {
|
||||
private void <init>() {
|
||||
LABEL (L0)
|
||||
ALOAD (0)
|
||||
INVOKESPECIAL (java/lang/Object, <init>, ()V)
|
||||
RETURN
|
||||
LABEL (L1)
|
||||
}
|
||||
|
||||
public void <init>(kotlin.jvm.internal.DefaultConstructorMarker $constructor_marker) {
|
||||
LABEL (L0)
|
||||
ALOAD (0)
|
||||
INVOKESPECIAL (OptionalUser$Companion, <init>, ()V)
|
||||
RETURN
|
||||
LABEL (L1)
|
||||
}
|
||||
|
||||
public final kotlinx.serialization.KSerializer serializer()
|
||||
}
|
||||
|
||||
public final class OptionalUser : java/lang/Object {
|
||||
public final static OptionalUser$Companion Companion
|
||||
|
||||
private final User user
|
||||
|
||||
static void <clinit>() {
|
||||
NEW (OptionalUser$Companion)
|
||||
DUP
|
||||
ACONST_NULL
|
||||
INVOKESPECIAL (OptionalUser$Companion, <init>, (Lkotlin/jvm/internal/DefaultConstructorMarker;)V)
|
||||
PUTSTATIC (OptionalUser, Companion, LOptionalUser$Companion;)
|
||||
RETURN
|
||||
}
|
||||
|
||||
public void <init>(User user) {
|
||||
LABEL (L0)
|
||||
ALOAD (1)
|
||||
LDC (user)
|
||||
INVOKESTATIC (kotlin/jvm/internal/Intrinsics, checkNotNullParameter, (Ljava/lang/Object;Ljava/lang/String;)V)
|
||||
LABEL (L1)
|
||||
LINENUMBER (10)
|
||||
ALOAD (0)
|
||||
INVOKESPECIAL (java/lang/Object, <init>, ()V)
|
||||
ALOAD (0)
|
||||
ALOAD (1)
|
||||
PUTFIELD (OptionalUser, user, LUser;)
|
||||
RETURN
|
||||
LABEL (L2)
|
||||
}
|
||||
|
||||
public void <init>(User p0, int p1, kotlin.jvm.internal.DefaultConstructorMarker p2) {
|
||||
LABEL (L0)
|
||||
LINENUMBER (10)
|
||||
ILOAD (2)
|
||||
ICONST_1
|
||||
IAND
|
||||
IFEQ (L1)
|
||||
NEW (User)
|
||||
DUP
|
||||
LDC ()
|
||||
LDC ()
|
||||
INVOKESPECIAL (User, <init>, (Ljava/lang/String;Ljava/lang/String;)V)
|
||||
ASTORE (1)
|
||||
LABEL (L1)
|
||||
ALOAD (0)
|
||||
ALOAD (1)
|
||||
INVOKESPECIAL (OptionalUser, <init>, (LUser;)V)
|
||||
RETURN
|
||||
}
|
||||
|
||||
public void <init>(int seen0, User user, kotlinx.serialization.internal.SerializationConstructorMarker serializationConstructorMarker) {
|
||||
LABEL (L0)
|
||||
LINENUMBER (9)
|
||||
ICONST_0
|
||||
ILOAD (1)
|
||||
IAND
|
||||
IFEQ (L1)
|
||||
ILOAD (1)
|
||||
ICONST_0
|
||||
GETSTATIC (OptionalUser$$serializer, INSTANCE, LOptionalUser$$serializer;)
|
||||
INVOKEVIRTUAL (OptionalUser$$serializer, getDescriptor, ()Lkotlinx/serialization/descriptors/SerialDescriptor;)
|
||||
INVOKESTATIC (kotlinx/serialization/internal/PluginExceptionsKt, throwMissingFieldException, (IILkotlinx/serialization/descriptors/SerialDescriptor;)V)
|
||||
LABEL (L1)
|
||||
ALOAD (0)
|
||||
INVOKESPECIAL (java/lang/Object, <init>, ()V)
|
||||
ILOAD (1)
|
||||
ICONST_1
|
||||
IAND
|
||||
IFNE (L2)
|
||||
ALOAD (0)
|
||||
LABEL (L3)
|
||||
LINENUMBER (10)
|
||||
NEW (User)
|
||||
DUP
|
||||
LDC ()
|
||||
LDC ()
|
||||
INVOKESPECIAL (User, <init>, (Ljava/lang/String;Ljava/lang/String;)V)
|
||||
LABEL (L4)
|
||||
LINENUMBER (9)
|
||||
PUTFIELD (OptionalUser, user, LUser;)
|
||||
GOTO (L5)
|
||||
LABEL (L2)
|
||||
ALOAD (0)
|
||||
ALOAD (2)
|
||||
PUTFIELD (OptionalUser, user, LUser;)
|
||||
LABEL (L5)
|
||||
RETURN
|
||||
LABEL (L6)
|
||||
}
|
||||
|
||||
public void <init>() {
|
||||
LABEL (L0)
|
||||
ALOAD (0)
|
||||
ACONST_NULL
|
||||
ICONST_1
|
||||
ACONST_NULL
|
||||
INVOKESPECIAL (OptionalUser, <init>, (LUser;ILkotlin/jvm/internal/DefaultConstructorMarker;)V)
|
||||
RETURN
|
||||
LABEL (L1)
|
||||
}
|
||||
|
||||
public final User getUser()
|
||||
|
||||
public final static void write$Self(OptionalUser self, kotlinx.serialization.encoding.CompositeEncoder output, kotlinx.serialization.descriptors.SerialDescriptor serialDesc) {
|
||||
LABEL (L0)
|
||||
LINENUMBER (9)
|
||||
ALOAD (1)
|
||||
ALOAD (2)
|
||||
ICONST_0
|
||||
INVOKEINTERFACE (kotlinx/serialization/encoding/CompositeEncoder, shouldEncodeElementDefault, (Lkotlinx/serialization/descriptors/SerialDescriptor;I)Z)
|
||||
IFEQ (L1)
|
||||
ICONST_1
|
||||
GOTO (L2)
|
||||
LABEL (L1)
|
||||
ALOAD (0)
|
||||
GETFIELD (OptionalUser, user, LUser;)
|
||||
LABEL (L3)
|
||||
LINENUMBER (10)
|
||||
NEW (User)
|
||||
DUP
|
||||
LDC ()
|
||||
LDC ()
|
||||
INVOKESPECIAL (User, <init>, (Ljava/lang/String;Ljava/lang/String;)V)
|
||||
INVOKESTATIC (kotlin/jvm/internal/Intrinsics, areEqual, (Ljava/lang/Object;Ljava/lang/Object;)Z)
|
||||
IFNE (L4)
|
||||
ICONST_1
|
||||
GOTO (L2)
|
||||
LABEL (L4)
|
||||
ICONST_0
|
||||
LABEL (L2)
|
||||
IFEQ (L5)
|
||||
LABEL (L6)
|
||||
LINENUMBER (9)
|
||||
ALOAD (1)
|
||||
ALOAD (2)
|
||||
ICONST_0
|
||||
GETSTATIC (User$$serializer, INSTANCE, LUser$$serializer;)
|
||||
CHECKCAST (kotlinx/serialization/SerializationStrategy)
|
||||
ALOAD (0)
|
||||
GETFIELD (OptionalUser, user, LUser;)
|
||||
INVOKEINTERFACE (kotlinx/serialization/encoding/CompositeEncoder, encodeSerializableElement, (Lkotlinx/serialization/descriptors/SerialDescriptor;ILkotlinx/serialization/SerializationStrategy;Ljava/lang/Object;)V)
|
||||
LABEL (L5)
|
||||
RETURN
|
||||
LABEL (L7)
|
||||
}
|
||||
}
|
||||
|
||||
public final class User$$serializer : java/lang/Object, kotlinx/serialization/internal/GeneratedSerializer {
|
||||
public final static User$$serializer INSTANCE
|
||||
|
||||
private final static kotlinx.serialization.descriptors.SerialDescriptor descriptor
|
||||
|
||||
static void <clinit>() {
|
||||
NEW (User$$serializer)
|
||||
DUP
|
||||
INVOKESPECIAL (User$$serializer, <init>, ()V)
|
||||
PUTSTATIC (User$$serializer, INSTANCE, LUser$$serializer;)
|
||||
NEW (kotlinx/serialization/internal/PluginGeneratedSerialDescriptor)
|
||||
DUP
|
||||
LDC (User)
|
||||
GETSTATIC (User$$serializer, INSTANCE, LUser$$serializer;)
|
||||
CHECKCAST (kotlinx/serialization/internal/GeneratedSerializer)
|
||||
ICONST_2
|
||||
INVOKESPECIAL (kotlinx/serialization/internal/PluginGeneratedSerialDescriptor, <init>, (Ljava/lang/String;Lkotlinx/serialization/internal/GeneratedSerializer;I)V)
|
||||
ASTORE (0)
|
||||
ALOAD (0)
|
||||
LDC (firstName)
|
||||
ICONST_0
|
||||
INVOKEVIRTUAL (kotlinx/serialization/internal/PluginGeneratedSerialDescriptor, addElement, (Ljava/lang/String;Z)V)
|
||||
ALOAD (0)
|
||||
LDC (lastName)
|
||||
ICONST_0
|
||||
INVOKEVIRTUAL (kotlinx/serialization/internal/PluginGeneratedSerialDescriptor, addElement, (Ljava/lang/String;Z)V)
|
||||
ALOAD (0)
|
||||
CHECKCAST (kotlinx/serialization/descriptors/SerialDescriptor)
|
||||
PUTSTATIC (User$$serializer, descriptor, Lkotlinx/serialization/descriptors/SerialDescriptor;)
|
||||
RETURN
|
||||
}
|
||||
|
||||
private void <init>() {
|
||||
LABEL (L0)
|
||||
ALOAD (0)
|
||||
INVOKESPECIAL (java/lang/Object, <init>, ()V)
|
||||
RETURN
|
||||
LABEL (L1)
|
||||
}
|
||||
|
||||
public final kotlinx.serialization.KSerializer[] childSerializers() {
|
||||
LABEL (L0)
|
||||
ICONST_2
|
||||
ANEWARRAY (kotlinx/serialization/KSerializer)
|
||||
ASTORE (1)
|
||||
ALOAD (1)
|
||||
ICONST_0
|
||||
GETSTATIC (kotlinx/serialization/internal/StringSerializer, INSTANCE, Lkotlinx/serialization/internal/StringSerializer;)
|
||||
AASTORE
|
||||
ALOAD (1)
|
||||
ICONST_1
|
||||
GETSTATIC (kotlinx/serialization/internal/StringSerializer, INSTANCE, Lkotlinx/serialization/internal/StringSerializer;)
|
||||
AASTORE
|
||||
ALOAD (1)
|
||||
ARETURN
|
||||
LABEL (L1)
|
||||
}
|
||||
|
||||
public final User deserialize(kotlinx.serialization.encoding.Decoder decoder) {
|
||||
LABEL (L0)
|
||||
ALOAD (1)
|
||||
LDC (decoder)
|
||||
INVOKESTATIC (kotlin/jvm/internal/Intrinsics, checkNotNullParameter, (Ljava/lang/Object;Ljava/lang/String;)V)
|
||||
GETSTATIC (User$$serializer, descriptor, Lkotlinx/serialization/descriptors/SerialDescriptor;)
|
||||
ASTORE (2)
|
||||
ICONST_1
|
||||
ISTORE (3)
|
||||
ICONST_0
|
||||
ISTORE (5)
|
||||
ACONST_NULL
|
||||
ASTORE (6)
|
||||
ACONST_NULL
|
||||
ASTORE (7)
|
||||
ALOAD (1)
|
||||
ALOAD (2)
|
||||
INVOKEINTERFACE (kotlinx/serialization/encoding/Decoder, beginStructure, (Lkotlinx/serialization/descriptors/SerialDescriptor;)Lkotlinx/serialization/encoding/CompositeDecoder;)
|
||||
ASTORE (8)
|
||||
ALOAD (8)
|
||||
INVOKEINTERFACE (kotlinx/serialization/encoding/CompositeDecoder, decodeSequentially, ()Z)
|
||||
IFEQ (L1)
|
||||
ALOAD (8)
|
||||
ALOAD (2)
|
||||
ICONST_0
|
||||
INVOKEINTERFACE (kotlinx/serialization/encoding/CompositeDecoder, decodeStringElement, (Lkotlinx/serialization/descriptors/SerialDescriptor;I)Ljava/lang/String;)
|
||||
ASTORE (6)
|
||||
ILOAD (5)
|
||||
ICONST_1
|
||||
IOR
|
||||
ISTORE (5)
|
||||
ALOAD (8)
|
||||
ALOAD (2)
|
||||
ICONST_1
|
||||
INVOKEINTERFACE (kotlinx/serialization/encoding/CompositeDecoder, decodeStringElement, (Lkotlinx/serialization/descriptors/SerialDescriptor;I)Ljava/lang/String;)
|
||||
ASTORE (7)
|
||||
ILOAD (5)
|
||||
ICONST_2
|
||||
IOR
|
||||
ISTORE (5)
|
||||
GOTO (L2)
|
||||
LABEL (L1)
|
||||
ILOAD (3)
|
||||
IFEQ (L2)
|
||||
ALOAD (8)
|
||||
ALOAD (2)
|
||||
INVOKEINTERFACE (kotlinx/serialization/encoding/CompositeDecoder, decodeElementIndex, (Lkotlinx/serialization/descriptors/SerialDescriptor;)I)
|
||||
ISTORE (4)
|
||||
ILOAD (4)
|
||||
TABLESWITCH
|
||||
-1: L3
|
||||
0: L4
|
||||
1: L5
|
||||
default: L6
|
||||
LABEL (L3)
|
||||
ICONST_0
|
||||
ISTORE (3)
|
||||
GOTO (L1)
|
||||
LABEL (L4)
|
||||
ALOAD (8)
|
||||
ALOAD (2)
|
||||
ICONST_0
|
||||
INVOKEINTERFACE (kotlinx/serialization/encoding/CompositeDecoder, decodeStringElement, (Lkotlinx/serialization/descriptors/SerialDescriptor;I)Ljava/lang/String;)
|
||||
ASTORE (6)
|
||||
ILOAD (5)
|
||||
ICONST_1
|
||||
IOR
|
||||
ISTORE (5)
|
||||
GOTO (L1)
|
||||
LABEL (L5)
|
||||
ALOAD (8)
|
||||
ALOAD (2)
|
||||
ICONST_1
|
||||
INVOKEINTERFACE (kotlinx/serialization/encoding/CompositeDecoder, decodeStringElement, (Lkotlinx/serialization/descriptors/SerialDescriptor;I)Ljava/lang/String;)
|
||||
ASTORE (7)
|
||||
ILOAD (5)
|
||||
ICONST_2
|
||||
IOR
|
||||
ISTORE (5)
|
||||
GOTO (L1)
|
||||
LABEL (L6)
|
||||
NEW (kotlinx/serialization/UnknownFieldException)
|
||||
DUP
|
||||
ILOAD (4)
|
||||
INVOKESPECIAL (kotlinx/serialization/UnknownFieldException, <init>, (I)V)
|
||||
ATHROW
|
||||
LABEL (L2)
|
||||
ALOAD (8)
|
||||
ALOAD (2)
|
||||
INVOKEINTERFACE (kotlinx/serialization/encoding/CompositeDecoder, endStructure, (Lkotlinx/serialization/descriptors/SerialDescriptor;)V)
|
||||
NEW (User)
|
||||
DUP
|
||||
ILOAD (5)
|
||||
ALOAD (6)
|
||||
ALOAD (7)
|
||||
ACONST_NULL
|
||||
INVOKESPECIAL (User, <init>, (ILjava/lang/String;Ljava/lang/String;Lkotlinx/serialization/internal/SerializationConstructorMarker;)V)
|
||||
ARETURN
|
||||
LABEL (L7)
|
||||
}
|
||||
|
||||
public java.lang.Object deserialize(kotlinx.serialization.encoding.Decoder decoder) {
|
||||
LABEL (L0)
|
||||
ALOAD (0)
|
||||
ALOAD (1)
|
||||
INVOKEVIRTUAL (User$$serializer, deserialize, (Lkotlinx/serialization/encoding/Decoder;)LUser;)
|
||||
ARETURN
|
||||
LABEL (L1)
|
||||
}
|
||||
|
||||
public final kotlinx.serialization.descriptors.SerialDescriptor getDescriptor() {
|
||||
LABEL (L0)
|
||||
GETSTATIC (User$$serializer, descriptor, Lkotlinx/serialization/descriptors/SerialDescriptor;)
|
||||
ARETURN
|
||||
LABEL (L1)
|
||||
}
|
||||
|
||||
public final void serialize(kotlinx.serialization.encoding.Encoder encoder, User value) {
|
||||
LABEL (L0)
|
||||
ALOAD (1)
|
||||
LDC (encoder)
|
||||
INVOKESTATIC (kotlin/jvm/internal/Intrinsics, checkNotNullParameter, (Ljava/lang/Object;Ljava/lang/String;)V)
|
||||
ALOAD (2)
|
||||
LDC (value)
|
||||
INVOKESTATIC (kotlin/jvm/internal/Intrinsics, checkNotNullParameter, (Ljava/lang/Object;Ljava/lang/String;)V)
|
||||
GETSTATIC (User$$serializer, descriptor, Lkotlinx/serialization/descriptors/SerialDescriptor;)
|
||||
ASTORE (3)
|
||||
ALOAD (1)
|
||||
ALOAD (3)
|
||||
INVOKEINTERFACE (kotlinx/serialization/encoding/Encoder, beginStructure, (Lkotlinx/serialization/descriptors/SerialDescriptor;)Lkotlinx/serialization/encoding/CompositeEncoder;)
|
||||
ASTORE (4)
|
||||
ALOAD (2)
|
||||
ALOAD (4)
|
||||
ALOAD (3)
|
||||
INVOKESTATIC (User, write$Self, (LUser;Lkotlinx/serialization/encoding/CompositeEncoder;Lkotlinx/serialization/descriptors/SerialDescriptor;)V)
|
||||
ALOAD (4)
|
||||
ALOAD (3)
|
||||
INVOKEINTERFACE (kotlinx/serialization/encoding/CompositeEncoder, endStructure, (Lkotlinx/serialization/descriptors/SerialDescriptor;)V)
|
||||
RETURN
|
||||
LABEL (L1)
|
||||
}
|
||||
|
||||
public void serialize(kotlinx.serialization.encoding.Encoder encoder, java.lang.Object value) {
|
||||
LABEL (L0)
|
||||
ALOAD (0)
|
||||
ALOAD (1)
|
||||
ALOAD (2)
|
||||
CHECKCAST (User)
|
||||
INVOKEVIRTUAL (User$$serializer, serialize, (Lkotlinx/serialization/encoding/Encoder;LUser;)V)
|
||||
RETURN
|
||||
LABEL (L1)
|
||||
}
|
||||
|
||||
public kotlinx.serialization.KSerializer[] typeParametersSerializers()
|
||||
}
|
||||
|
||||
public final class User$Companion : java/lang/Object {
|
||||
private void <init>() {
|
||||
LABEL (L0)
|
||||
ALOAD (0)
|
||||
INVOKESPECIAL (java/lang/Object, <init>, ()V)
|
||||
RETURN
|
||||
LABEL (L1)
|
||||
}
|
||||
|
||||
public void <init>(kotlin.jvm.internal.DefaultConstructorMarker $constructor_marker) {
|
||||
LABEL (L0)
|
||||
ALOAD (0)
|
||||
INVOKESPECIAL (User$Companion, <init>, ()V)
|
||||
RETURN
|
||||
LABEL (L1)
|
||||
}
|
||||
|
||||
public final kotlinx.serialization.KSerializer serializer()
|
||||
}
|
||||
|
||||
public final class User : java/lang/Object {
|
||||
public final static User$Companion Companion
|
||||
|
||||
private final java.lang.String firstName
|
||||
|
||||
private final java.lang.String lastName
|
||||
|
||||
static void <clinit>() {
|
||||
NEW (User$Companion)
|
||||
DUP
|
||||
ACONST_NULL
|
||||
INVOKESPECIAL (User$Companion, <init>, (Lkotlin/jvm/internal/DefaultConstructorMarker;)V)
|
||||
PUTSTATIC (User, Companion, LUser$Companion;)
|
||||
RETURN
|
||||
}
|
||||
|
||||
public void <init>(java.lang.String firstName, java.lang.String lastName) {
|
||||
LABEL (L0)
|
||||
ALOAD (1)
|
||||
LDC (firstName)
|
||||
INVOKESTATIC (kotlin/jvm/internal/Intrinsics, checkNotNullParameter, (Ljava/lang/Object;Ljava/lang/String;)V)
|
||||
ALOAD (2)
|
||||
LDC (lastName)
|
||||
INVOKESTATIC (kotlin/jvm/internal/Intrinsics, checkNotNullParameter, (Ljava/lang/Object;Ljava/lang/String;)V)
|
||||
LABEL (L1)
|
||||
LINENUMBER (7)
|
||||
ALOAD (0)
|
||||
INVOKESPECIAL (java/lang/Object, <init>, ()V)
|
||||
ALOAD (0)
|
||||
ALOAD (1)
|
||||
PUTFIELD (User, firstName, Ljava/lang/String;)
|
||||
ALOAD (0)
|
||||
ALOAD (2)
|
||||
PUTFIELD (User, lastName, Ljava/lang/String;)
|
||||
RETURN
|
||||
LABEL (L2)
|
||||
}
|
||||
|
||||
public void <init>(int seen0, java.lang.String firstName, java.lang.String lastName, kotlinx.serialization.internal.SerializationConstructorMarker serializationConstructorMarker) {
|
||||
LABEL (L0)
|
||||
LINENUMBER (6)
|
||||
ICONST_3
|
||||
ICONST_3
|
||||
ILOAD (1)
|
||||
IAND
|
||||
IF_ICMPEQ (L1)
|
||||
ILOAD (1)
|
||||
ICONST_3
|
||||
GETSTATIC (User$$serializer, INSTANCE, LUser$$serializer;)
|
||||
INVOKEVIRTUAL (User$$serializer, getDescriptor, ()Lkotlinx/serialization/descriptors/SerialDescriptor;)
|
||||
INVOKESTATIC (kotlinx/serialization/internal/PluginExceptionsKt, throwMissingFieldException, (IILkotlinx/serialization/descriptors/SerialDescriptor;)V)
|
||||
LABEL (L1)
|
||||
ALOAD (0)
|
||||
INVOKESPECIAL (java/lang/Object, <init>, ()V)
|
||||
ALOAD (0)
|
||||
ALOAD (2)
|
||||
PUTFIELD (User, firstName, Ljava/lang/String;)
|
||||
ALOAD (0)
|
||||
ALOAD (3)
|
||||
PUTFIELD (User, lastName, Ljava/lang/String;)
|
||||
RETURN
|
||||
LABEL (L2)
|
||||
}
|
||||
|
||||
public final java.lang.String getFirstName()
|
||||
|
||||
public final java.lang.String getLastName()
|
||||
|
||||
public final static void write$Self(User self, kotlinx.serialization.encoding.CompositeEncoder output, kotlinx.serialization.descriptors.SerialDescriptor serialDesc) {
|
||||
LABEL (L0)
|
||||
LINENUMBER (6)
|
||||
ALOAD (1)
|
||||
ALOAD (2)
|
||||
ICONST_0
|
||||
ALOAD (0)
|
||||
GETFIELD (User, firstName, Ljava/lang/String;)
|
||||
INVOKEINTERFACE (kotlinx/serialization/encoding/CompositeEncoder, encodeStringElement, (Lkotlinx/serialization/descriptors/SerialDescriptor;ILjava/lang/String;)V)
|
||||
ALOAD (1)
|
||||
ALOAD (2)
|
||||
ICONST_1
|
||||
ALOAD (0)
|
||||
GETFIELD (User, lastName, Ljava/lang/String;)
|
||||
INVOKEINTERFACE (kotlinx/serialization/encoding/CompositeEncoder, encodeStringElement, (Lkotlinx/serialization/descriptors/SerialDescriptor;ILjava/lang/String;)V)
|
||||
RETURN
|
||||
LABEL (L1)
|
||||
}
|
||||
}
|
||||
@@ -1,138 +0,0 @@
|
||||
public abstract interface A : java/lang/Object {
|
||||
public abstract java.lang.String getText()
|
||||
}
|
||||
|
||||
public final class DelegatedKt : java/lang/Object {
|
||||
public final static A generateImpl()
|
||||
|
||||
private final static java.lang.String generateImpl$lambda$0()
|
||||
}
|
||||
|
||||
public final class Test$$serializer : java/lang/Object, kotlinx/serialization/internal/GeneratedSerializer {
|
||||
public final static Test$$serializer INSTANCE
|
||||
|
||||
private final static kotlinx.serialization.internal.PluginGeneratedSerialDescriptor descriptor
|
||||
|
||||
static void <clinit>() {
|
||||
NEW (Test$$serializer)
|
||||
DUP
|
||||
INVOKESPECIAL (Test$$serializer, <init>, ()V)
|
||||
PUTSTATIC (Test$$serializer, INSTANCE, LTest$$serializer;)
|
||||
LABEL (L0)
|
||||
LINENUMBER (12)
|
||||
NEW (kotlinx/serialization/internal/PluginGeneratedSerialDescriptor)
|
||||
DUP
|
||||
LDC (Test)
|
||||
GETSTATIC (Test$$serializer, INSTANCE, LTest$$serializer;)
|
||||
CHECKCAST (kotlinx/serialization/internal/GeneratedSerializer)
|
||||
ICONST_0
|
||||
INVOKESPECIAL (kotlinx/serialization/internal/PluginGeneratedSerialDescriptor, <init>, (Ljava/lang/String;Lkotlinx/serialization/internal/GeneratedSerializer;I)V)
|
||||
PUTSTATIC (Test$$serializer, descriptor, Lkotlinx/serialization/internal/PluginGeneratedSerialDescriptor;)
|
||||
LABEL (L1)
|
||||
LINENUMBER (13)
|
||||
RETURN
|
||||
}
|
||||
|
||||
private void <init>() {
|
||||
LABEL (L0)
|
||||
LINENUMBER (12)
|
||||
ALOAD (0)
|
||||
INVOKESPECIAL (java/lang/Object, <init>, ()V)
|
||||
RETURN
|
||||
LABEL (L1)
|
||||
}
|
||||
|
||||
public kotlinx.serialization.KSerializer[] childSerializers()
|
||||
|
||||
public Test deserialize(kotlinx.serialization.encoding.Decoder decoder)
|
||||
|
||||
public java.lang.Object deserialize(kotlinx.serialization.encoding.Decoder decoder)
|
||||
|
||||
public kotlinx.serialization.descriptors.SerialDescriptor getDescriptor()
|
||||
|
||||
public void serialize(kotlinx.serialization.encoding.Encoder encoder, Test value)
|
||||
|
||||
public void serialize(kotlinx.serialization.encoding.Encoder encoder, java.lang.Object value)
|
||||
|
||||
public kotlinx.serialization.KSerializer[] typeParametersSerializers()
|
||||
}
|
||||
|
||||
public final class Test$Companion : java/lang/Object {
|
||||
private void <init>() {
|
||||
LABEL (L0)
|
||||
LINENUMBER (12)
|
||||
ALOAD (0)
|
||||
INVOKESPECIAL (java/lang/Object, <init>, ()V)
|
||||
RETURN
|
||||
LABEL (L1)
|
||||
}
|
||||
|
||||
public void <init>(kotlin.jvm.internal.DefaultConstructorMarker $constructor_marker) {
|
||||
LABEL (L0)
|
||||
ALOAD (0)
|
||||
INVOKESPECIAL (Test$Companion, <init>, ()V)
|
||||
RETURN
|
||||
LABEL (L1)
|
||||
}
|
||||
|
||||
public final kotlinx.serialization.KSerializer serializer()
|
||||
}
|
||||
|
||||
public final class Test : java/lang/Object, A {
|
||||
private final A $$delegate_0
|
||||
|
||||
public final static Test$Companion Companion
|
||||
|
||||
static void <clinit>() {
|
||||
NEW (Test$Companion)
|
||||
DUP
|
||||
ACONST_NULL
|
||||
INVOKESPECIAL (Test$Companion, <init>, (Lkotlin/jvm/internal/DefaultConstructorMarker;)V)
|
||||
PUTSTATIC (Test, Companion, LTest$Companion;)
|
||||
RETURN
|
||||
}
|
||||
|
||||
public void <init>() {
|
||||
LABEL (L0)
|
||||
LINENUMBER (12)
|
||||
ALOAD (0)
|
||||
INVOKESPECIAL (java/lang/Object, <init>, ()V)
|
||||
LABEL (L1)
|
||||
LINENUMBER (13)
|
||||
ALOAD (0)
|
||||
INVOKESTATIC (DelegatedKt, generateImpl, ()LA;)
|
||||
PUTFIELD (Test, $$delegate_0, LA;)
|
||||
RETURN
|
||||
LABEL (L2)
|
||||
}
|
||||
|
||||
public void <init>(int seen1, kotlinx.serialization.internal.SerializationConstructorMarker serializationConstructorMarker) {
|
||||
LABEL (L0)
|
||||
LINENUMBER (12)
|
||||
ICONST_0
|
||||
ILOAD (1)
|
||||
IAND
|
||||
IFEQ (L1)
|
||||
ILOAD (1)
|
||||
ICONST_0
|
||||
GETSTATIC (Test$$serializer, INSTANCE, LTest$$serializer;)
|
||||
INVOKEVIRTUAL (Test$$serializer, getDescriptor, ()Lkotlinx/serialization/descriptors/SerialDescriptor;)
|
||||
INVOKESTATIC (kotlinx/serialization/internal/PluginExceptionsKt, throwMissingFieldException, (IILkotlinx/serialization/descriptors/SerialDescriptor;)V)
|
||||
LABEL (L1)
|
||||
ALOAD (0)
|
||||
INVOKESPECIAL (java/lang/Object, <init>, ()V)
|
||||
ALOAD (0)
|
||||
LABEL (L2)
|
||||
LINENUMBER (13)
|
||||
INVOKESTATIC (DelegatedKt, generateImpl, ()LA;)
|
||||
LABEL (L3)
|
||||
LINENUMBER (12)
|
||||
PUTFIELD (Test, $$delegate_0, LA;)
|
||||
RETURN
|
||||
LABEL (L4)
|
||||
}
|
||||
|
||||
public java.lang.String getText()
|
||||
|
||||
public final static void write$Self(Test self, kotlinx.serialization.encoding.CompositeEncoder output, kotlinx.serialization.descriptors.SerialDescriptor serialDesc)
|
||||
}
|
||||
@@ -1,158 +0,0 @@
|
||||
public abstract interface A : java/lang/Object {
|
||||
public abstract java.lang.String getText()
|
||||
}
|
||||
|
||||
final class DelegatedKt$generateImpl$1 : java/lang/Object, A {
|
||||
public final static DelegatedKt$generateImpl$1 INSTANCE
|
||||
|
||||
static void <clinit>() {
|
||||
NEW (DelegatedKt$generateImpl$1)
|
||||
DUP
|
||||
INVOKESPECIAL (DelegatedKt$generateImpl$1, <init>, ()V)
|
||||
PUTSTATIC (DelegatedKt$generateImpl$1, INSTANCE, LDelegatedKt$generateImpl$1;)
|
||||
RETURN
|
||||
}
|
||||
|
||||
void <init>() {
|
||||
ALOAD (0)
|
||||
INVOKESPECIAL (java/lang/Object, <init>, ()V)
|
||||
RETURN
|
||||
}
|
||||
|
||||
public final java.lang.String getText()
|
||||
}
|
||||
|
||||
public final class DelegatedKt : java/lang/Object {
|
||||
public final static A generateImpl()
|
||||
}
|
||||
|
||||
public final class Test$$serializer : java/lang/Object, kotlinx/serialization/internal/GeneratedSerializer {
|
||||
private final static kotlinx.serialization.descriptors.SerialDescriptor $$serialDesc
|
||||
|
||||
public final static Test$$serializer INSTANCE
|
||||
|
||||
static void <clinit>() {
|
||||
LABEL (L0)
|
||||
LINENUMBER (13)
|
||||
NEW (Test$$serializer)
|
||||
DUP
|
||||
INVOKESPECIAL (Test$$serializer, <init>, ()V)
|
||||
ASTORE (0)
|
||||
ALOAD (0)
|
||||
PUTSTATIC (Test$$serializer, INSTANCE, LTest$$serializer;)
|
||||
NEW (kotlinx/serialization/internal/PluginGeneratedSerialDescriptor)
|
||||
DUP
|
||||
LDC (Test)
|
||||
GETSTATIC (Test$$serializer, INSTANCE, LTest$$serializer;)
|
||||
CHECKCAST (kotlinx/serialization/internal/GeneratedSerializer)
|
||||
LDC (0)
|
||||
INVOKESPECIAL (kotlinx/serialization/internal/PluginGeneratedSerialDescriptor, <init>, (Ljava/lang/String;Lkotlinx/serialization/internal/GeneratedSerializer;I)V)
|
||||
ASTORE (0)
|
||||
ALOAD (0)
|
||||
PUTSTATIC (Test$$serializer, $$serialDesc, Lkotlinx/serialization/descriptors/SerialDescriptor;)
|
||||
RETURN
|
||||
}
|
||||
|
||||
private void <init>() {
|
||||
LABEL (L0)
|
||||
LINENUMBER (13)
|
||||
ALOAD (0)
|
||||
INVOKESPECIAL (java/lang/Object, <init>, ()V)
|
||||
RETURN
|
||||
LABEL (L1)
|
||||
}
|
||||
|
||||
public kotlinx.serialization.KSerializer[] childSerializers()
|
||||
|
||||
public Test deserialize(kotlinx.serialization.encoding.Decoder decoder)
|
||||
|
||||
public java.lang.Object deserialize(kotlinx.serialization.encoding.Decoder p0)
|
||||
|
||||
public kotlinx.serialization.descriptors.SerialDescriptor getDescriptor()
|
||||
|
||||
public void serialize(kotlinx.serialization.encoding.Encoder encoder, Test value)
|
||||
|
||||
public void serialize(kotlinx.serialization.encoding.Encoder p0, java.lang.Object p1)
|
||||
|
||||
public kotlinx.serialization.KSerializer[] typeParametersSerializers()
|
||||
}
|
||||
|
||||
public final class Test$Companion : java/lang/Object {
|
||||
private void <init>() {
|
||||
LABEL (L0)
|
||||
LINENUMBER (13)
|
||||
ALOAD (0)
|
||||
INVOKESPECIAL (java/lang/Object, <init>, ()V)
|
||||
RETURN
|
||||
LABEL (L1)
|
||||
}
|
||||
|
||||
public void <init>(kotlin.jvm.internal.DefaultConstructorMarker $constructor_marker) {
|
||||
LABEL (L0)
|
||||
LINENUMBER (13)
|
||||
ALOAD (0)
|
||||
INVOKESPECIAL (Test$Companion, <init>, ()V)
|
||||
RETURN
|
||||
LABEL (L1)
|
||||
}
|
||||
|
||||
public final kotlinx.serialization.KSerializer serializer()
|
||||
}
|
||||
|
||||
public final class Test : java/lang/Object, A {
|
||||
private final A $$delegate_0
|
||||
|
||||
public final static Test$Companion Companion
|
||||
|
||||
static void <clinit>() {
|
||||
NEW (Test$Companion)
|
||||
DUP
|
||||
ACONST_NULL
|
||||
INVOKESPECIAL (Test$Companion, <init>, (Lkotlin/jvm/internal/DefaultConstructorMarker;)V)
|
||||
PUTSTATIC (Test, Companion, LTest$Companion;)
|
||||
RETURN
|
||||
}
|
||||
|
||||
public void <init>() {
|
||||
LABEL (L0)
|
||||
LINENUMBER (13)
|
||||
ALOAD (0)
|
||||
INVOKESPECIAL (java/lang/Object, <init>, ()V)
|
||||
ALOAD (0)
|
||||
LABEL (L1)
|
||||
LINENUMBER (13)
|
||||
INVOKESTATIC (DelegatedKt, generateImpl, ()LA;)
|
||||
PUTFIELD (Test, $$delegate_0, LA;)
|
||||
RETURN
|
||||
LABEL (L2)
|
||||
}
|
||||
|
||||
public void <init>(int seen1, kotlinx.serialization.internal.SerializationConstructorMarker serializationConstructorMarker) {
|
||||
LABEL (L0)
|
||||
ICONST_0
|
||||
DUP
|
||||
ILOAD (1)
|
||||
IAND
|
||||
IF_ICMPEQ (L1)
|
||||
ILOAD (1)
|
||||
ICONST_0
|
||||
GETSTATIC (Test$$serializer, INSTANCE, LTest$$serializer;)
|
||||
CHECKCAST (kotlinx/serialization/KSerializer)
|
||||
INVOKEINTERFACE (kotlinx/serialization/KSerializer, getDescriptor, ()Lkotlinx/serialization/descriptors/SerialDescriptor;)
|
||||
INVOKESTATIC (kotlinx/serialization/internal/PluginExceptionsKt, throwMissingFieldException, (IILkotlinx/serialization/descriptors/SerialDescriptor;)V)
|
||||
LABEL (L1)
|
||||
ALOAD (0)
|
||||
INVOKESPECIAL (java/lang/Object, <init>, ()V)
|
||||
ALOAD (0)
|
||||
LABEL (L2)
|
||||
LINENUMBER (13)
|
||||
INVOKESTATIC (DelegatedKt, generateImpl, ()LA;)
|
||||
PUTFIELD (Test, $$delegate_0, LA;)
|
||||
RETURN
|
||||
LABEL (L3)
|
||||
}
|
||||
|
||||
public java.lang.String getText()
|
||||
|
||||
public final static void write$Self(Test self, kotlinx.serialization.encoding.CompositeEncoder output, kotlinx.serialization.descriptors.SerialDescriptor serialDesc)
|
||||
}
|
||||
@@ -1,13 +0,0 @@
|
||||
// CURIOUS_ABOUT: <init>, <clinit>
|
||||
// WITH_STDLIB
|
||||
|
||||
import kotlinx.serialization.*
|
||||
|
||||
fun interface A {
|
||||
fun getText(): String
|
||||
}
|
||||
|
||||
fun generateImpl() = A { "Hello, world!" }
|
||||
|
||||
@Serializable
|
||||
class Test : A by generateImpl()
|
||||
@@ -0,0 +1,269 @@
|
||||
public final class Box$$serializer : java/lang/Object, kotlinx/serialization/internal/GeneratedSerializer {
|
||||
private final kotlinx.serialization.descriptors.SerialDescriptor descriptor
|
||||
|
||||
private final kotlinx.serialization.KSerializer typeSerial0
|
||||
|
||||
private void <init>()
|
||||
|
||||
private void <init>(kotlinx.serialization.KSerializer typeSerial0)
|
||||
|
||||
public void <init>(kotlinx.serialization.KSerializer typeSerial0, kotlin.jvm.internal.DefaultConstructorMarker $constructor_marker)
|
||||
|
||||
public final kotlinx.serialization.KSerializer[] childSerializers()
|
||||
|
||||
public final Box deserialize(kotlinx.serialization.encoding.Decoder decoder)
|
||||
|
||||
public java.lang.Object deserialize(kotlinx.serialization.encoding.Decoder decoder)
|
||||
|
||||
public final kotlinx.serialization.descriptors.SerialDescriptor getDescriptor()
|
||||
|
||||
private final kotlinx.serialization.KSerializer getTypeSerial0()
|
||||
|
||||
public final void serialize(kotlinx.serialization.encoding.Encoder encoder, Box value)
|
||||
|
||||
public void serialize(kotlinx.serialization.encoding.Encoder encoder, java.lang.Object value)
|
||||
|
||||
public final kotlinx.serialization.KSerializer[] typeParametersSerializers()
|
||||
}
|
||||
|
||||
public final class Box$Companion : java/lang/Object {
|
||||
private void <init>()
|
||||
|
||||
public void <init>(kotlin.jvm.internal.DefaultConstructorMarker $constructor_marker)
|
||||
|
||||
public final kotlinx.serialization.KSerializer serializer(kotlinx.serialization.KSerializer typeSerial0)
|
||||
}
|
||||
|
||||
public final class Box : java/lang/Object {
|
||||
private final static kotlinx.serialization.descriptors.SerialDescriptor $cachedDescriptor
|
||||
|
||||
public final static Box$Companion Companion
|
||||
|
||||
private final java.lang.Object boxed
|
||||
|
||||
static void <clinit>()
|
||||
|
||||
public void <init>(java.lang.Object boxed)
|
||||
|
||||
public void <init>(int seen0, java.lang.Object boxed, kotlinx.serialization.internal.SerializationConstructorMarker serializationConstructorMarker)
|
||||
|
||||
public final java.lang.Object component1()
|
||||
|
||||
public final Box copy(java.lang.Object boxed)
|
||||
|
||||
public static Box copy$default(Box p0, java.lang.Object p1, int p2, java.lang.Object p3)
|
||||
|
||||
public boolean equals(java.lang.Object other)
|
||||
|
||||
public final java.lang.Object getBoxed()
|
||||
|
||||
public int hashCode()
|
||||
|
||||
public java.lang.String toString()
|
||||
|
||||
public final static void write$Self(Box self, kotlinx.serialization.encoding.CompositeEncoder output, kotlinx.serialization.descriptors.SerialDescriptor serialDesc, kotlinx.serialization.KSerializer typeSerial0)
|
||||
}
|
||||
|
||||
public final class IntrinsicsKt : java/lang/Object {
|
||||
public final static kotlinx.serialization.KSerializer getBoxSer()
|
||||
|
||||
public final static kotlinx.serialization.KSerializer getSer()
|
||||
|
||||
public final static kotlinx.serialization.KSerializer listSer()
|
||||
|
||||
public final static void test() {
|
||||
LABEL (L0)
|
||||
LINENUMBER (28)
|
||||
GETSTATIC (Simple, Companion, LSimple$Companion;)
|
||||
INVOKEVIRTUAL (Simple$Companion, serializer, ()Lkotlinx/serialization/KSerializer;)
|
||||
POP
|
||||
LABEL (L1)
|
||||
LINENUMBER (29)
|
||||
ICONST_0
|
||||
ISTORE (0)
|
||||
LABEL (L2)
|
||||
LINENUMBER (47)
|
||||
GETSTATIC (Simple, Companion, LSimple$Companion;)
|
||||
INVOKEVIRTUAL (Simple$Companion, serializer, ()Lkotlinx/serialization/KSerializer;)
|
||||
LABEL (L3)
|
||||
POP
|
||||
LABEL (L4)
|
||||
LINENUMBER (30)
|
||||
ICONST_0
|
||||
ISTORE (0)
|
||||
LABEL (L5)
|
||||
LINENUMBER (48)
|
||||
GETSTATIC (Box, Companion, LBox$Companion;)
|
||||
GETSTATIC (Simple, Companion, LSimple$Companion;)
|
||||
INVOKEVIRTUAL (Simple$Companion, serializer, ()Lkotlinx/serialization/KSerializer;)
|
||||
INVOKEVIRTUAL (Box$Companion, serializer, (Lkotlinx/serialization/KSerializer;)Lkotlinx/serialization/KSerializer;)
|
||||
LABEL (L6)
|
||||
POP
|
||||
LABEL (L7)
|
||||
LINENUMBER (31)
|
||||
ICONST_0
|
||||
ISTORE (0)
|
||||
LABEL (L8)
|
||||
LINENUMBER (49)
|
||||
GETSTATIC (Box, Companion, LBox$Companion;)
|
||||
GETSTATIC (Simple, Companion, LSimple$Companion;)
|
||||
INVOKEVIRTUAL (Simple$Companion, serializer, ()Lkotlinx/serialization/KSerializer;)
|
||||
INVOKEVIRTUAL (Box$Companion, serializer, (Lkotlinx/serialization/KSerializer;)Lkotlinx/serialization/KSerializer;)
|
||||
LABEL (L9)
|
||||
POP
|
||||
LABEL (L10)
|
||||
LINENUMBER (32)
|
||||
ICONST_0
|
||||
ISTORE (0)
|
||||
LABEL (L11)
|
||||
LINENUMBER (50)
|
||||
NEW (kotlinx/serialization/internal/ArrayListSerializer)
|
||||
DUP
|
||||
GETSTATIC (Simple, Companion, LSimple$Companion;)
|
||||
INVOKEVIRTUAL (Simple$Companion, serializer, ()Lkotlinx/serialization/KSerializer;)
|
||||
INVOKESPECIAL (kotlinx/serialization/internal/ArrayListSerializer, <init>, (Lkotlinx/serialization/KSerializer;)V)
|
||||
LABEL (L12)
|
||||
POP
|
||||
LABEL (L13)
|
||||
LINENUMBER (34)
|
||||
GETSTATIC (Box, Companion, LBox$Companion;)
|
||||
NEW (kotlinx/serialization/internal/ArrayListSerializer)
|
||||
DUP
|
||||
GETSTATIC (Simple, Companion, LSimple$Companion;)
|
||||
INVOKEVIRTUAL (Simple$Companion, serializer, ()Lkotlinx/serialization/KSerializer;)
|
||||
INVOKESPECIAL (kotlinx/serialization/internal/ArrayListSerializer, <init>, (Lkotlinx/serialization/KSerializer;)V)
|
||||
INVOKEVIRTUAL (Box$Companion, serializer, (Lkotlinx/serialization/KSerializer;)Lkotlinx/serialization/KSerializer;)
|
||||
POP
|
||||
LABEL (L14)
|
||||
LINENUMBER (36)
|
||||
ICONST_0
|
||||
ISTORE (0)
|
||||
LABEL (L15)
|
||||
LINENUMBER (51)
|
||||
NEW (kotlinx/serialization/internal/ArrayListSerializer)
|
||||
DUP
|
||||
GETSTATIC (Box, Companion, LBox$Companion;)
|
||||
NEW (kotlinx/serialization/internal/ArrayListSerializer)
|
||||
DUP
|
||||
GETSTATIC (Simple, Companion, LSimple$Companion;)
|
||||
INVOKEVIRTUAL (Simple$Companion, serializer, ()Lkotlinx/serialization/KSerializer;)
|
||||
INVOKESPECIAL (kotlinx/serialization/internal/ArrayListSerializer, <init>, (Lkotlinx/serialization/KSerializer;)V)
|
||||
INVOKEVIRTUAL (Box$Companion, serializer, (Lkotlinx/serialization/KSerializer;)Lkotlinx/serialization/KSerializer;)
|
||||
INVOKESPECIAL (kotlinx/serialization/internal/ArrayListSerializer, <init>, (Lkotlinx/serialization/KSerializer;)V)
|
||||
LABEL (L16)
|
||||
POP
|
||||
LABEL (L17)
|
||||
LINENUMBER (38)
|
||||
GETSTATIC (kotlinx/serialization/internal/IntSerializer, INSTANCE, Lkotlinx/serialization/internal/IntSerializer;)
|
||||
POP
|
||||
LABEL (L18)
|
||||
LINENUMBER (40)
|
||||
GETSTATIC (SerializableObject, INSTANCE, LSerializableObject;)
|
||||
INVOKEVIRTUAL (SerializableObject, serializer, ()Lkotlinx/serialization/KSerializer;)
|
||||
POP
|
||||
LABEL (L19)
|
||||
LINENUMBER (42)
|
||||
ICONST_0
|
||||
ISTORE (0)
|
||||
LABEL (L20)
|
||||
LINENUMBER (52)
|
||||
NEW (kotlinx/serialization/internal/ArrayListSerializer)
|
||||
DUP
|
||||
NEW (kotlinx/serialization/internal/ArrayListSerializer)
|
||||
DUP
|
||||
GETSTATIC (Box, Companion, LBox$Companion;)
|
||||
GETSTATIC (kotlinx/serialization/internal/IntSerializer, INSTANCE, Lkotlinx/serialization/internal/IntSerializer;)
|
||||
INVOKEVIRTUAL (Box$Companion, serializer, (Lkotlinx/serialization/KSerializer;)Lkotlinx/serialization/KSerializer;)
|
||||
INVOKESPECIAL (kotlinx/serialization/internal/ArrayListSerializer, <init>, (Lkotlinx/serialization/KSerializer;)V)
|
||||
INVOKESPECIAL (kotlinx/serialization/internal/ArrayListSerializer, <init>, (Lkotlinx/serialization/KSerializer;)V)
|
||||
LABEL (L21)
|
||||
POP
|
||||
LABEL (L22)
|
||||
LINENUMBER (44)
|
||||
GETSTATIC (Simple, Companion, LSimple$Companion;)
|
||||
INVOKEVIRTUAL (Simple$Companion, serializer, ()Lkotlinx/serialization/KSerializer;)
|
||||
INVOKESTATIC (kotlinx/serialization/builtins/BuiltinSerializersKt, getNullable, (Lkotlinx/serialization/KSerializer;)Lkotlinx/serialization/KSerializer;)
|
||||
POP
|
||||
LABEL (L23)
|
||||
LINENUMBER (45)
|
||||
RETURN
|
||||
}
|
||||
}
|
||||
|
||||
final class SerializableObject$1 : kotlin/jvm/internal/Lambda, kotlin/jvm/functions/Function0 {
|
||||
public final static SerializableObject$1 INSTANCE
|
||||
|
||||
static void <clinit>()
|
||||
|
||||
void <init>()
|
||||
|
||||
public final kotlinx.serialization.KSerializer invoke()
|
||||
|
||||
public java.lang.Object invoke()
|
||||
}
|
||||
|
||||
public final class SerializableObject : java/lang/Object {
|
||||
private final static kotlin.Lazy $cachedSerializer$delegate
|
||||
|
||||
public final static SerializableObject INSTANCE
|
||||
|
||||
static void <clinit>()
|
||||
|
||||
private void <init>()
|
||||
|
||||
private final kotlinx.serialization.KSerializer get$cachedSerializer()
|
||||
|
||||
public final kotlinx.serialization.KSerializer serializer()
|
||||
}
|
||||
|
||||
public final class Simple$$serializer : java/lang/Object, kotlinx/serialization/internal/GeneratedSerializer {
|
||||
public final static Simple$$serializer INSTANCE
|
||||
|
||||
private final static kotlinx.serialization.descriptors.SerialDescriptor descriptor
|
||||
|
||||
static void <clinit>()
|
||||
|
||||
private void <init>()
|
||||
|
||||
public final kotlinx.serialization.KSerializer[] childSerializers()
|
||||
|
||||
public final Simple deserialize(kotlinx.serialization.encoding.Decoder decoder)
|
||||
|
||||
public java.lang.Object deserialize(kotlinx.serialization.encoding.Decoder decoder)
|
||||
|
||||
public final kotlinx.serialization.descriptors.SerialDescriptor getDescriptor()
|
||||
|
||||
public final void serialize(kotlinx.serialization.encoding.Encoder encoder, Simple value)
|
||||
|
||||
public void serialize(kotlinx.serialization.encoding.Encoder encoder, java.lang.Object value)
|
||||
|
||||
public kotlinx.serialization.KSerializer[] typeParametersSerializers()
|
||||
}
|
||||
|
||||
public final class Simple$Companion : java/lang/Object {
|
||||
private void <init>()
|
||||
|
||||
public void <init>(kotlin.jvm.internal.DefaultConstructorMarker $constructor_marker)
|
||||
|
||||
public final kotlinx.serialization.KSerializer serializer()
|
||||
}
|
||||
|
||||
public final class Simple : java/lang/Object {
|
||||
public final static Simple$Companion Companion
|
||||
|
||||
private final java.lang.String firstName
|
||||
|
||||
private final java.lang.String lastName
|
||||
|
||||
static void <clinit>()
|
||||
|
||||
public void <init>(java.lang.String firstName, java.lang.String lastName)
|
||||
|
||||
public void <init>(int seen0, java.lang.String firstName, java.lang.String lastName, kotlinx.serialization.internal.SerializationConstructorMarker serializationConstructorMarker)
|
||||
|
||||
public final java.lang.String getFirstName()
|
||||
|
||||
public final java.lang.String getLastName()
|
||||
|
||||
public final static void write$Self(Simple self, kotlinx.serialization.encoding.CompositeEncoder output, kotlinx.serialization.descriptors.SerialDescriptor serialDesc)
|
||||
}
|
||||
+209
@@ -0,0 +1,209 @@
|
||||
public final class IntrinsicsAdvancedKt : java/lang/Object {
|
||||
private final static kotlinx.serialization.modules.SerializersModule module
|
||||
|
||||
static void <clinit>()
|
||||
|
||||
public final static kotlinx.serialization.modules.SerializersModule getModule()
|
||||
|
||||
public final static kotlinx.serialization.KSerializer getSer(kotlinx.serialization.modules.SerializersModule module) {
|
||||
LABEL (L0)
|
||||
ALOAD (0)
|
||||
LDC (module)
|
||||
INVOKESTATIC (kotlin/jvm/internal/Intrinsics, checkNotNullParameter, (Ljava/lang/Object;Ljava/lang/String;)V)
|
||||
ICONST_0
|
||||
ISTORE (1)
|
||||
LABEL (L1)
|
||||
LINENUMBER (18)
|
||||
ALOAD (0)
|
||||
ASTORE (2)
|
||||
BIPUSH (6)
|
||||
LDC (T)
|
||||
INVOKESTATIC (kotlin/jvm/internal/Intrinsics, reifiedOperationMarker, (ILjava/lang/String;)V)
|
||||
ACONST_NULL
|
||||
LDC (kotlinx.serialization.serializer.withModule)
|
||||
INVOKESTATIC (kotlin/jvm/internal/MagicApiIntrinsics, voidMagicApiCall, (Ljava/lang/Object;)V)
|
||||
ALOAD (2)
|
||||
SWAP
|
||||
INVOKESTATIC (kotlinx/serialization/SerializersKt, serializer, (Lkotlinx/serialization/modules/SerializersModule;Lkotlin/reflect/KType;)Lkotlinx/serialization/KSerializer;)
|
||||
ARETURN
|
||||
LABEL (L2)
|
||||
}
|
||||
|
||||
public final static void test() {
|
||||
LABEL (L0)
|
||||
LINENUMBER (22)
|
||||
GETSTATIC (IntrinsicsAdvancedKt, module, Lkotlinx/serialization/modules/SerializersModule;)
|
||||
POP
|
||||
GETSTATIC (Simple, Companion, LSimple$Companion;)
|
||||
INVOKEVIRTUAL (Simple$Companion, serializer, ()Lkotlinx/serialization/KSerializer;)
|
||||
POP
|
||||
LABEL (L1)
|
||||
LINENUMBER (23)
|
||||
GETSTATIC (IntrinsicsAdvancedKt, module, Lkotlinx/serialization/modules/SerializersModule;)
|
||||
LDC (LNoSer;)
|
||||
INVOKESTATIC (kotlin/jvm/internal/Reflection, getOrCreateKotlinClass, (Ljava/lang/Class;)Lkotlin/reflect/KClass;)
|
||||
INVOKESTATIC (kotlinx/serialization/SerializersKt, noCompiledSerializer, (Lkotlinx/serialization/modules/SerializersModule;Lkotlin/reflect/KClass;)Lkotlinx/serialization/KSerializer;)
|
||||
POP
|
||||
LABEL (L2)
|
||||
LINENUMBER (24)
|
||||
GETSTATIC (IntrinsicsAdvancedKt, module, Lkotlinx/serialization/modules/SerializersModule;)
|
||||
POP
|
||||
NEW (kotlinx/serialization/internal/ArrayListSerializer)
|
||||
DUP
|
||||
GETSTATIC (Simple, Companion, LSimple$Companion;)
|
||||
INVOKEVIRTUAL (Simple$Companion, serializer, ()Lkotlinx/serialization/KSerializer;)
|
||||
INVOKESPECIAL (kotlinx/serialization/internal/ArrayListSerializer, <init>, (Lkotlinx/serialization/KSerializer;)V)
|
||||
POP
|
||||
LABEL (L3)
|
||||
LINENUMBER (25)
|
||||
GETSTATIC (IntrinsicsAdvancedKt, module, Lkotlinx/serialization/modules/SerializersModule;)
|
||||
ASTORE (0)
|
||||
NEW (kotlinx/serialization/internal/ArrayListSerializer)
|
||||
DUP
|
||||
ALOAD (0)
|
||||
LDC (LNoSer;)
|
||||
INVOKESTATIC (kotlin/jvm/internal/Reflection, getOrCreateKotlinClass, (Ljava/lang/Class;)Lkotlin/reflect/KClass;)
|
||||
INVOKESTATIC (kotlinx/serialization/SerializersKt, noCompiledSerializer, (Lkotlinx/serialization/modules/SerializersModule;Lkotlin/reflect/KClass;)Lkotlinx/serialization/KSerializer;)
|
||||
INVOKESPECIAL (kotlinx/serialization/internal/ArrayListSerializer, <init>, (Lkotlinx/serialization/KSerializer;)V)
|
||||
POP
|
||||
LABEL (L4)
|
||||
LINENUMBER (27)
|
||||
GETSTATIC (IntrinsicsAdvancedKt, module, Lkotlinx/serialization/modules/SerializersModule;)
|
||||
ASTORE (0)
|
||||
LABEL (L5)
|
||||
ICONST_0
|
||||
ISTORE (1)
|
||||
LABEL (L6)
|
||||
LINENUMBER (34)
|
||||
GETSTATIC (Simple, Companion, LSimple$Companion;)
|
||||
INVOKEVIRTUAL (Simple$Companion, serializer, ()Lkotlinx/serialization/KSerializer;)
|
||||
LABEL (L7)
|
||||
POP
|
||||
LABEL (L8)
|
||||
LINENUMBER (28)
|
||||
GETSTATIC (IntrinsicsAdvancedKt, module, Lkotlinx/serialization/modules/SerializersModule;)
|
||||
ASTORE (0)
|
||||
LABEL (L9)
|
||||
ICONST_0
|
||||
ISTORE (1)
|
||||
LABEL (L10)
|
||||
LINENUMBER (35)
|
||||
ALOAD (0)
|
||||
LDC (LNoSer;)
|
||||
INVOKESTATIC (kotlin/jvm/internal/Reflection, getOrCreateKotlinClass, (Ljava/lang/Class;)Lkotlin/reflect/KClass;)
|
||||
INVOKESTATIC (kotlinx/serialization/SerializersKt, noCompiledSerializer, (Lkotlinx/serialization/modules/SerializersModule;Lkotlin/reflect/KClass;)Lkotlinx/serialization/KSerializer;)
|
||||
LABEL (L11)
|
||||
POP
|
||||
LABEL (L12)
|
||||
LINENUMBER (30)
|
||||
GETSTATIC (IntrinsicsAdvancedKt, module, Lkotlinx/serialization/modules/SerializersModule;)
|
||||
ASTORE (0)
|
||||
LABEL (L13)
|
||||
ICONST_0
|
||||
ISTORE (1)
|
||||
LABEL (L14)
|
||||
LINENUMBER (36)
|
||||
ALOAD (0)
|
||||
LDC (LNoSerGeneric;)
|
||||
INVOKESTATIC (kotlin/jvm/internal/Reflection, getOrCreateKotlinClass, (Ljava/lang/Class;)Lkotlin/reflect/KClass;)
|
||||
ICONST_1
|
||||
ANEWARRAY (kotlinx/serialization/KSerializer)
|
||||
DUP
|
||||
ICONST_0
|
||||
GETSTATIC (Simple, Companion, LSimple$Companion;)
|
||||
INVOKEVIRTUAL (Simple$Companion, serializer, ()Lkotlinx/serialization/KSerializer;)
|
||||
AASTORE
|
||||
INVOKESTATIC (kotlinx/serialization/SerializersKt, noCompiledSerializer, (Lkotlinx/serialization/modules/SerializersModule;Lkotlin/reflect/KClass;[Lkotlinx/serialization/KSerializer;)Lkotlinx/serialization/KSerializer;)
|
||||
LABEL (L15)
|
||||
POP
|
||||
LABEL (L16)
|
||||
LINENUMBER (31)
|
||||
GETSTATIC (IntrinsicsAdvancedKt, module, Lkotlinx/serialization/modules/SerializersModule;)
|
||||
ASTORE (0)
|
||||
LABEL (L17)
|
||||
ICONST_0
|
||||
ISTORE (1)
|
||||
LABEL (L18)
|
||||
LINENUMBER (37)
|
||||
ALOAD (0)
|
||||
ASTORE (2)
|
||||
ALOAD (2)
|
||||
LDC (LNoSerGeneric;)
|
||||
INVOKESTATIC (kotlin/jvm/internal/Reflection, getOrCreateKotlinClass, (Ljava/lang/Class;)Lkotlin/reflect/KClass;)
|
||||
ICONST_1
|
||||
ANEWARRAY (kotlinx/serialization/KSerializer)
|
||||
DUP
|
||||
ICONST_0
|
||||
ALOAD (2)
|
||||
LDC (LNoSer;)
|
||||
INVOKESTATIC (kotlin/jvm/internal/Reflection, getOrCreateKotlinClass, (Ljava/lang/Class;)Lkotlin/reflect/KClass;)
|
||||
INVOKESTATIC (kotlinx/serialization/SerializersKt, noCompiledSerializer, (Lkotlinx/serialization/modules/SerializersModule;Lkotlin/reflect/KClass;)Lkotlinx/serialization/KSerializer;)
|
||||
AASTORE
|
||||
INVOKESTATIC (kotlinx/serialization/SerializersKt, noCompiledSerializer, (Lkotlinx/serialization/modules/SerializersModule;Lkotlin/reflect/KClass;[Lkotlinx/serialization/KSerializer;)Lkotlinx/serialization/KSerializer;)
|
||||
LABEL (L19)
|
||||
POP
|
||||
LABEL (L20)
|
||||
LINENUMBER (32)
|
||||
RETURN
|
||||
}
|
||||
}
|
||||
|
||||
public final class NoSer : java/lang/Object {
|
||||
public void <init>()
|
||||
}
|
||||
|
||||
public final class NoSerGeneric : java/lang/Object {
|
||||
public void <init>()
|
||||
}
|
||||
|
||||
public final class Simple$$serializer : java/lang/Object, kotlinx/serialization/internal/GeneratedSerializer {
|
||||
public final static Simple$$serializer INSTANCE
|
||||
|
||||
private final static kotlinx.serialization.descriptors.SerialDescriptor descriptor
|
||||
|
||||
static void <clinit>()
|
||||
|
||||
private void <init>()
|
||||
|
||||
public final kotlinx.serialization.KSerializer[] childSerializers()
|
||||
|
||||
public final Simple deserialize(kotlinx.serialization.encoding.Decoder decoder)
|
||||
|
||||
public java.lang.Object deserialize(kotlinx.serialization.encoding.Decoder decoder)
|
||||
|
||||
public final kotlinx.serialization.descriptors.SerialDescriptor getDescriptor()
|
||||
|
||||
public final void serialize(kotlinx.serialization.encoding.Encoder encoder, Simple value)
|
||||
|
||||
public void serialize(kotlinx.serialization.encoding.Encoder encoder, java.lang.Object value)
|
||||
|
||||
public kotlinx.serialization.KSerializer[] typeParametersSerializers()
|
||||
}
|
||||
|
||||
public final class Simple$Companion : java/lang/Object {
|
||||
private void <init>()
|
||||
|
||||
public void <init>(kotlin.jvm.internal.DefaultConstructorMarker $constructor_marker)
|
||||
|
||||
public final kotlinx.serialization.KSerializer serializer()
|
||||
}
|
||||
|
||||
public final class Simple : java/lang/Object {
|
||||
public final static Simple$Companion Companion
|
||||
|
||||
private final java.lang.String firstName
|
||||
|
||||
private final java.lang.String lastName
|
||||
|
||||
static void <clinit>()
|
||||
|
||||
public void <init>(java.lang.String firstName, java.lang.String lastName)
|
||||
|
||||
public void <init>(int seen0, java.lang.String firstName, java.lang.String lastName, kotlinx.serialization.internal.SerializationConstructorMarker serializationConstructorMarker)
|
||||
|
||||
public final java.lang.String getFirstName()
|
||||
|
||||
public final java.lang.String getLastName()
|
||||
|
||||
public final static void write$Self(Simple self, kotlinx.serialization.encoding.CompositeEncoder output, kotlinx.serialization.descriptors.SerialDescriptor serialDesc)
|
||||
}
|
||||
@@ -0,0 +1,854 @@
|
||||
public final class Container$$serializer : java/lang/Object, kotlinx/serialization/internal/GeneratedSerializer {
|
||||
public final static Container$$serializer INSTANCE
|
||||
|
||||
private final static kotlinx.serialization.descriptors.SerialDescriptor descriptor
|
||||
|
||||
static void <clinit>() {
|
||||
NEW (Container$$serializer)
|
||||
DUP
|
||||
INVOKESPECIAL (Container$$serializer, <init>, ()V)
|
||||
PUTSTATIC (Container$$serializer, INSTANCE, LContainer$$serializer;)
|
||||
NEW (kotlinx/serialization/internal/PluginGeneratedSerialDescriptor)
|
||||
DUP
|
||||
LDC (Container)
|
||||
GETSTATIC (Container$$serializer, INSTANCE, LContainer$$serializer;)
|
||||
CHECKCAST (kotlinx/serialization/internal/GeneratedSerializer)
|
||||
ICONST_1
|
||||
INVOKESPECIAL (kotlinx/serialization/internal/PluginGeneratedSerialDescriptor, <init>, (Ljava/lang/String;Lkotlinx/serialization/internal/GeneratedSerializer;I)V)
|
||||
ASTORE (0)
|
||||
ALOAD (0)
|
||||
LDC (r)
|
||||
ICONST_0
|
||||
INVOKEVIRTUAL (kotlinx/serialization/internal/PluginGeneratedSerialDescriptor, addElement, (Ljava/lang/String;Z)V)
|
||||
ALOAD (0)
|
||||
CHECKCAST (kotlinx/serialization/descriptors/SerialDescriptor)
|
||||
PUTSTATIC (Container$$serializer, descriptor, Lkotlinx/serialization/descriptors/SerialDescriptor;)
|
||||
RETURN
|
||||
}
|
||||
|
||||
private void <init>() {
|
||||
LABEL (L0)
|
||||
ALOAD (0)
|
||||
INVOKESPECIAL (java/lang/Object, <init>, ()V)
|
||||
RETURN
|
||||
LABEL (L1)
|
||||
}
|
||||
|
||||
public final kotlinx.serialization.KSerializer[] childSerializers() {
|
||||
LABEL (L0)
|
||||
INVOKESTATIC (Container, access$get$childSerializers$cp, ()[Lkotlinx/serialization/KSerializer;)
|
||||
ASTORE (1)
|
||||
ICONST_1
|
||||
ANEWARRAY (kotlinx/serialization/KSerializer)
|
||||
ASTORE (2)
|
||||
ALOAD (2)
|
||||
ICONST_0
|
||||
ALOAD (1)
|
||||
ICONST_0
|
||||
AALOAD
|
||||
AASTORE
|
||||
ALOAD (2)
|
||||
ARETURN
|
||||
LABEL (L1)
|
||||
}
|
||||
|
||||
public final Container deserialize(kotlinx.serialization.encoding.Decoder decoder) {
|
||||
LABEL (L0)
|
||||
ALOAD (1)
|
||||
LDC (decoder)
|
||||
INVOKESTATIC (kotlin/jvm/internal/Intrinsics, checkNotNullParameter, (Ljava/lang/Object;Ljava/lang/String;)V)
|
||||
GETSTATIC (Container$$serializer, descriptor, Lkotlinx/serialization/descriptors/SerialDescriptor;)
|
||||
ASTORE (2)
|
||||
ICONST_1
|
||||
ISTORE (3)
|
||||
ICONST_0
|
||||
ISTORE (5)
|
||||
ACONST_NULL
|
||||
ASTORE (6)
|
||||
ALOAD (1)
|
||||
ALOAD (2)
|
||||
INVOKEINTERFACE (kotlinx/serialization/encoding/Decoder, beginStructure, (Lkotlinx/serialization/descriptors/SerialDescriptor;)Lkotlinx/serialization/encoding/CompositeDecoder;)
|
||||
ASTORE (7)
|
||||
INVOKESTATIC (Container, access$get$childSerializers$cp, ()[Lkotlinx/serialization/KSerializer;)
|
||||
ASTORE (8)
|
||||
ALOAD (7)
|
||||
INVOKEINTERFACE (kotlinx/serialization/encoding/CompositeDecoder, decodeSequentially, ()Z)
|
||||
IFEQ (L1)
|
||||
ALOAD (7)
|
||||
ALOAD (2)
|
||||
ICONST_0
|
||||
ALOAD (8)
|
||||
ICONST_0
|
||||
AALOAD
|
||||
CHECKCAST (kotlinx/serialization/DeserializationStrategy)
|
||||
ALOAD (6)
|
||||
INVOKEINTERFACE (kotlinx/serialization/encoding/CompositeDecoder, decodeSerializableElement, (Lkotlinx/serialization/descriptors/SerialDescriptor;ILkotlinx/serialization/DeserializationStrategy;Ljava/lang/Object;)Ljava/lang/Object;)
|
||||
ASTORE (6)
|
||||
ILOAD (5)
|
||||
ICONST_1
|
||||
IOR
|
||||
ISTORE (5)
|
||||
GOTO (L2)
|
||||
LABEL (L1)
|
||||
ILOAD (3)
|
||||
IFEQ (L2)
|
||||
ALOAD (7)
|
||||
ALOAD (2)
|
||||
INVOKEINTERFACE (kotlinx/serialization/encoding/CompositeDecoder, decodeElementIndex, (Lkotlinx/serialization/descriptors/SerialDescriptor;)I)
|
||||
ISTORE (4)
|
||||
ILOAD (4)
|
||||
TABLESWITCH
|
||||
-1: L3
|
||||
0: L4
|
||||
default: L5
|
||||
LABEL (L3)
|
||||
ICONST_0
|
||||
ISTORE (3)
|
||||
GOTO (L1)
|
||||
LABEL (L4)
|
||||
ALOAD (7)
|
||||
ALOAD (2)
|
||||
ICONST_0
|
||||
ALOAD (8)
|
||||
ICONST_0
|
||||
AALOAD
|
||||
CHECKCAST (kotlinx/serialization/DeserializationStrategy)
|
||||
ALOAD (6)
|
||||
INVOKEINTERFACE (kotlinx/serialization/encoding/CompositeDecoder, decodeSerializableElement, (Lkotlinx/serialization/descriptors/SerialDescriptor;ILkotlinx/serialization/DeserializationStrategy;Ljava/lang/Object;)Ljava/lang/Object;)
|
||||
ASTORE (6)
|
||||
ILOAD (5)
|
||||
ICONST_1
|
||||
IOR
|
||||
ISTORE (5)
|
||||
GOTO (L1)
|
||||
LABEL (L5)
|
||||
NEW (kotlinx/serialization/UnknownFieldException)
|
||||
DUP
|
||||
ILOAD (4)
|
||||
INVOKESPECIAL (kotlinx/serialization/UnknownFieldException, <init>, (I)V)
|
||||
ATHROW
|
||||
LABEL (L2)
|
||||
ALOAD (7)
|
||||
ALOAD (2)
|
||||
INVOKEINTERFACE (kotlinx/serialization/encoding/CompositeDecoder, endStructure, (Lkotlinx/serialization/descriptors/SerialDescriptor;)V)
|
||||
NEW (Container)
|
||||
DUP
|
||||
ILOAD (5)
|
||||
ALOAD (6)
|
||||
CHECKCAST (Result)
|
||||
ACONST_NULL
|
||||
INVOKESPECIAL (Container, <init>, (ILResult;Lkotlinx/serialization/internal/SerializationConstructorMarker;)V)
|
||||
ARETURN
|
||||
LABEL (L6)
|
||||
}
|
||||
|
||||
public java.lang.Object deserialize(kotlinx.serialization.encoding.Decoder decoder) {
|
||||
LABEL (L0)
|
||||
ALOAD (0)
|
||||
ALOAD (1)
|
||||
INVOKEVIRTUAL (Container$$serializer, deserialize, (Lkotlinx/serialization/encoding/Decoder;)LContainer;)
|
||||
ARETURN
|
||||
LABEL (L1)
|
||||
}
|
||||
|
||||
public final kotlinx.serialization.descriptors.SerialDescriptor getDescriptor()
|
||||
|
||||
public final void serialize(kotlinx.serialization.encoding.Encoder encoder, Container value)
|
||||
|
||||
public void serialize(kotlinx.serialization.encoding.Encoder encoder, java.lang.Object value)
|
||||
|
||||
public kotlinx.serialization.KSerializer[] typeParametersSerializers()
|
||||
}
|
||||
|
||||
public final class Container$Companion : java/lang/Object {
|
||||
private void <init>() {
|
||||
LABEL (L0)
|
||||
ALOAD (0)
|
||||
INVOKESPECIAL (java/lang/Object, <init>, ()V)
|
||||
RETURN
|
||||
LABEL (L1)
|
||||
}
|
||||
|
||||
public void <init>(kotlin.jvm.internal.DefaultConstructorMarker $constructor_marker) {
|
||||
LABEL (L0)
|
||||
ALOAD (0)
|
||||
INVOKESPECIAL (Container$Companion, <init>, ()V)
|
||||
RETURN
|
||||
LABEL (L1)
|
||||
}
|
||||
|
||||
public final kotlinx.serialization.KSerializer serializer() {
|
||||
LABEL (L0)
|
||||
GETSTATIC (Container$$serializer, INSTANCE, LContainer$$serializer;)
|
||||
CHECKCAST (kotlinx/serialization/KSerializer)
|
||||
ARETURN
|
||||
LABEL (L1)
|
||||
}
|
||||
}
|
||||
|
||||
public final class Container : java/lang/Object {
|
||||
private final static kotlinx.serialization.KSerializer[] $childSerializers
|
||||
|
||||
public final static Container$Companion Companion
|
||||
|
||||
private final Result r
|
||||
|
||||
static void <clinit>() {
|
||||
NEW (Container$Companion)
|
||||
DUP
|
||||
ACONST_NULL
|
||||
INVOKESPECIAL (Container$Companion, <init>, (Lkotlin/jvm/internal/DefaultConstructorMarker;)V)
|
||||
PUTSTATIC (Container, Companion, LContainer$Companion;)
|
||||
ICONST_1
|
||||
ANEWARRAY (kotlinx/serialization/KSerializer)
|
||||
ASTORE (0)
|
||||
ALOAD (0)
|
||||
ICONST_0
|
||||
GETSTATIC (Result, Companion, LResult$Companion;)
|
||||
INVOKEVIRTUAL (Result$Companion, serializer, ()Lkotlinx/serialization/KSerializer;)
|
||||
AASTORE
|
||||
ALOAD (0)
|
||||
PUTSTATIC (Container, $childSerializers, [Lkotlinx/serialization/KSerializer;)
|
||||
RETURN
|
||||
}
|
||||
|
||||
public void <init>(Result r) {
|
||||
LABEL (L0)
|
||||
ALOAD (1)
|
||||
LDC (r)
|
||||
INVOKESTATIC (kotlin/jvm/internal/Intrinsics, checkNotNullParameter, (Ljava/lang/Object;Ljava/lang/String;)V)
|
||||
LABEL (L1)
|
||||
LINENUMBER (19)
|
||||
ALOAD (0)
|
||||
INVOKESPECIAL (java/lang/Object, <init>, ()V)
|
||||
ALOAD (0)
|
||||
ALOAD (1)
|
||||
PUTFIELD (Container, r, LResult;)
|
||||
RETURN
|
||||
LABEL (L2)
|
||||
}
|
||||
|
||||
public void <init>(int seen0, Result r, kotlinx.serialization.internal.SerializationConstructorMarker serializationConstructorMarker) {
|
||||
LABEL (L0)
|
||||
LINENUMBER (18)
|
||||
ICONST_1
|
||||
ICONST_1
|
||||
ILOAD (1)
|
||||
IAND
|
||||
IF_ICMPEQ (L1)
|
||||
ILOAD (1)
|
||||
ICONST_1
|
||||
GETSTATIC (Container$$serializer, INSTANCE, LContainer$$serializer;)
|
||||
INVOKEVIRTUAL (Container$$serializer, getDescriptor, ()Lkotlinx/serialization/descriptors/SerialDescriptor;)
|
||||
INVOKESTATIC (kotlinx/serialization/internal/PluginExceptionsKt, throwMissingFieldException, (IILkotlinx/serialization/descriptors/SerialDescriptor;)V)
|
||||
LABEL (L1)
|
||||
ALOAD (0)
|
||||
INVOKESPECIAL (java/lang/Object, <init>, ()V)
|
||||
ALOAD (0)
|
||||
ALOAD (2)
|
||||
PUTFIELD (Container, r, LResult;)
|
||||
RETURN
|
||||
LABEL (L2)
|
||||
}
|
||||
|
||||
public final static kotlinx.serialization.KSerializer[] access$get$childSerializers$cp()
|
||||
|
||||
public final Result getR()
|
||||
|
||||
public final static void write$Self(Container self, kotlinx.serialization.encoding.CompositeEncoder output, kotlinx.serialization.descriptors.SerialDescriptor serialDesc) {
|
||||
LABEL (L0)
|
||||
LINENUMBER (18)
|
||||
GETSTATIC (Container, $childSerializers, [Lkotlinx/serialization/KSerializer;)
|
||||
ASTORE (3)
|
||||
ALOAD (1)
|
||||
ALOAD (2)
|
||||
ICONST_0
|
||||
ALOAD (3)
|
||||
ICONST_0
|
||||
AALOAD
|
||||
CHECKCAST (kotlinx/serialization/SerializationStrategy)
|
||||
ALOAD (0)
|
||||
GETFIELD (Container, r, LResult;)
|
||||
INVOKEINTERFACE (kotlinx/serialization/encoding/CompositeEncoder, encodeSerializableElement, (Lkotlinx/serialization/descriptors/SerialDescriptor;ILkotlinx/serialization/SerializationStrategy;Ljava/lang/Object;)V)
|
||||
RETURN
|
||||
LABEL (L1)
|
||||
}
|
||||
}
|
||||
|
||||
final class Result$Companion$1 : kotlin/jvm/internal/Lambda, kotlin/jvm/functions/Function0 {
|
||||
public final static Result$Companion$1 INSTANCE
|
||||
|
||||
static void <clinit>() {
|
||||
NEW (Result$Companion$1)
|
||||
DUP
|
||||
INVOKESPECIAL (Result$Companion$1, <init>, ()V)
|
||||
PUTSTATIC (Result$Companion$1, INSTANCE, LResult$Companion$1;)
|
||||
RETURN
|
||||
}
|
||||
|
||||
void <init>() {
|
||||
LABEL (L0)
|
||||
ALOAD (0)
|
||||
ICONST_0
|
||||
INVOKESPECIAL (kotlin/jvm/internal/Lambda, <init>, (I)V)
|
||||
RETURN
|
||||
LABEL (L1)
|
||||
}
|
||||
|
||||
public final kotlinx.serialization.KSerializer invoke() {
|
||||
LABEL (L0)
|
||||
NEW (kotlinx/serialization/SealedClassSerializer)
|
||||
DUP
|
||||
LDC (Result)
|
||||
LDC (LResult;)
|
||||
INVOKESTATIC (kotlin/jvm/internal/Reflection, getOrCreateKotlinClass, (Ljava/lang/Class;)Lkotlin/reflect/KClass;)
|
||||
ICONST_2
|
||||
ANEWARRAY (kotlin/reflect/KClass)
|
||||
ASTORE (1)
|
||||
ALOAD (1)
|
||||
ICONST_0
|
||||
LDC (LResult$Err;)
|
||||
INVOKESTATIC (kotlin/jvm/internal/Reflection, getOrCreateKotlinClass, (Ljava/lang/Class;)Lkotlin/reflect/KClass;)
|
||||
AASTORE
|
||||
ALOAD (1)
|
||||
ICONST_1
|
||||
LDC (LResult$OK;)
|
||||
INVOKESTATIC (kotlin/jvm/internal/Reflection, getOrCreateKotlinClass, (Ljava/lang/Class;)Lkotlin/reflect/KClass;)
|
||||
AASTORE
|
||||
ALOAD (1)
|
||||
ICONST_2
|
||||
ANEWARRAY (kotlinx/serialization/KSerializer)
|
||||
ASTORE (1)
|
||||
ALOAD (1)
|
||||
ICONST_0
|
||||
NEW (kotlinx/serialization/internal/ObjectSerializer)
|
||||
DUP
|
||||
LDC (Result.Err)
|
||||
GETSTATIC (Result$Err, INSTANCE, LResult$Err;)
|
||||
ICONST_0
|
||||
ANEWARRAY (java/lang/annotation/Annotation)
|
||||
INVOKESPECIAL (kotlinx/serialization/internal/ObjectSerializer, <init>, (Ljava/lang/String;Ljava/lang/Object;[Ljava/lang/annotation/Annotation;)V)
|
||||
AASTORE
|
||||
ALOAD (1)
|
||||
ICONST_1
|
||||
GETSTATIC (Result$OK$$serializer, INSTANCE, LResult$OK$$serializer;)
|
||||
AASTORE
|
||||
ALOAD (1)
|
||||
ICONST_0
|
||||
ANEWARRAY (java/lang/annotation/Annotation)
|
||||
INVOKESPECIAL (kotlinx/serialization/SealedClassSerializer, <init>, (Ljava/lang/String;Lkotlin/reflect/KClass;[Lkotlin/reflect/KClass;[Lkotlinx/serialization/KSerializer;[Ljava/lang/annotation/Annotation;)V)
|
||||
CHECKCAST (kotlinx/serialization/KSerializer)
|
||||
ARETURN
|
||||
LABEL (L1)
|
||||
}
|
||||
|
||||
public java.lang.Object invoke() {
|
||||
LABEL (L0)
|
||||
ALOAD (0)
|
||||
INVOKEVIRTUAL (Result$Companion$1, invoke, ()Lkotlinx/serialization/KSerializer;)
|
||||
ARETURN
|
||||
LABEL (L1)
|
||||
}
|
||||
}
|
||||
|
||||
public final class Result$Companion : java/lang/Object {
|
||||
private void <init>() {
|
||||
LABEL (L0)
|
||||
ALOAD (0)
|
||||
INVOKESPECIAL (java/lang/Object, <init>, ()V)
|
||||
RETURN
|
||||
LABEL (L1)
|
||||
}
|
||||
|
||||
public void <init>(kotlin.jvm.internal.DefaultConstructorMarker $constructor_marker) {
|
||||
LABEL (L0)
|
||||
ALOAD (0)
|
||||
INVOKESPECIAL (Result$Companion, <init>, ()V)
|
||||
RETURN
|
||||
LABEL (L1)
|
||||
}
|
||||
|
||||
private final kotlinx.serialization.KSerializer get$cachedSerializer()
|
||||
|
||||
public final kotlinx.serialization.KSerializer serializer() {
|
||||
LABEL (L0)
|
||||
ALOAD (0)
|
||||
INVOKESPECIAL (Result$Companion, get$cachedSerializer, ()Lkotlinx/serialization/KSerializer;)
|
||||
ARETURN
|
||||
LABEL (L1)
|
||||
}
|
||||
}
|
||||
|
||||
final class Result$Err$1 : kotlin/jvm/internal/Lambda, kotlin/jvm/functions/Function0 {
|
||||
public final static Result$Err$1 INSTANCE
|
||||
|
||||
static void <clinit>() {
|
||||
NEW (Result$Err$1)
|
||||
DUP
|
||||
INVOKESPECIAL (Result$Err$1, <init>, ()V)
|
||||
PUTSTATIC (Result$Err$1, INSTANCE, LResult$Err$1;)
|
||||
RETURN
|
||||
}
|
||||
|
||||
void <init>() {
|
||||
LABEL (L0)
|
||||
ALOAD (0)
|
||||
ICONST_0
|
||||
INVOKESPECIAL (kotlin/jvm/internal/Lambda, <init>, (I)V)
|
||||
RETURN
|
||||
LABEL (L1)
|
||||
}
|
||||
|
||||
public final kotlinx.serialization.KSerializer invoke() {
|
||||
LABEL (L0)
|
||||
LINENUMBER (15)
|
||||
NEW (kotlinx/serialization/internal/ObjectSerializer)
|
||||
DUP
|
||||
LDC (Result.Err)
|
||||
GETSTATIC (Result$Err, INSTANCE, LResult$Err;)
|
||||
ICONST_0
|
||||
ANEWARRAY (java/lang/annotation/Annotation)
|
||||
INVOKESPECIAL (kotlinx/serialization/internal/ObjectSerializer, <init>, (Ljava/lang/String;Ljava/lang/Object;[Ljava/lang/annotation/Annotation;)V)
|
||||
CHECKCAST (kotlinx/serialization/KSerializer)
|
||||
ARETURN
|
||||
LABEL (L1)
|
||||
}
|
||||
|
||||
public java.lang.Object invoke() {
|
||||
LABEL (L0)
|
||||
LINENUMBER (15)
|
||||
ALOAD (0)
|
||||
INVOKEVIRTUAL (Result$Err$1, invoke, ()Lkotlinx/serialization/KSerializer;)
|
||||
ARETURN
|
||||
LABEL (L1)
|
||||
}
|
||||
}
|
||||
|
||||
public final class Result$Err : Result {
|
||||
private final static kotlin.Lazy $cachedSerializer$delegate
|
||||
|
||||
public final static Result$Err INSTANCE
|
||||
|
||||
static void <clinit>() {
|
||||
NEW (Result$Err)
|
||||
DUP
|
||||
INVOKESPECIAL (Result$Err, <init>, ()V)
|
||||
PUTSTATIC (Result$Err, INSTANCE, LResult$Err;)
|
||||
LABEL (L0)
|
||||
LINENUMBER (15)
|
||||
GETSTATIC (kotlin/LazyThreadSafetyMode, PUBLICATION, Lkotlin/LazyThreadSafetyMode;)
|
||||
GETSTATIC (Result$Err$1, INSTANCE, LResult$Err$1;)
|
||||
CHECKCAST (kotlin/jvm/functions/Function0)
|
||||
INVOKESTATIC (kotlin/LazyKt, lazy, (Lkotlin/LazyThreadSafetyMode;Lkotlin/jvm/functions/Function0;)Lkotlin/Lazy;)
|
||||
PUTSTATIC (Result$Err, $cachedSerializer$delegate, Lkotlin/Lazy;)
|
||||
RETURN
|
||||
}
|
||||
|
||||
private void <init>() {
|
||||
LABEL (L0)
|
||||
LINENUMBER (15)
|
||||
ALOAD (0)
|
||||
ACONST_NULL
|
||||
INVOKESPECIAL (Result, <init>, (Lkotlin/jvm/internal/DefaultConstructorMarker;)V)
|
||||
RETURN
|
||||
LABEL (L1)
|
||||
}
|
||||
|
||||
private final kotlinx.serialization.KSerializer get$cachedSerializer()
|
||||
|
||||
public final kotlinx.serialization.KSerializer serializer() {
|
||||
LABEL (L0)
|
||||
LINENUMBER (15)
|
||||
ALOAD (0)
|
||||
INVOKESPECIAL (Result$Err, get$cachedSerializer, ()Lkotlinx/serialization/KSerializer;)
|
||||
ARETURN
|
||||
LABEL (L1)
|
||||
}
|
||||
}
|
||||
|
||||
public final class Result$OK$$serializer : java/lang/Object, kotlinx/serialization/internal/GeneratedSerializer {
|
||||
public final static Result$OK$$serializer INSTANCE
|
||||
|
||||
private final static kotlinx.serialization.descriptors.SerialDescriptor descriptor
|
||||
|
||||
static void <clinit>() {
|
||||
NEW (Result$OK$$serializer)
|
||||
DUP
|
||||
INVOKESPECIAL (Result$OK$$serializer, <init>, ()V)
|
||||
PUTSTATIC (Result$OK$$serializer, INSTANCE, LResult$OK$$serializer;)
|
||||
NEW (kotlinx/serialization/internal/PluginGeneratedSerialDescriptor)
|
||||
DUP
|
||||
LDC (Result.OK)
|
||||
GETSTATIC (Result$OK$$serializer, INSTANCE, LResult$OK$$serializer;)
|
||||
CHECKCAST (kotlinx/serialization/internal/GeneratedSerializer)
|
||||
ICONST_1
|
||||
INVOKESPECIAL (kotlinx/serialization/internal/PluginGeneratedSerialDescriptor, <init>, (Ljava/lang/String;Lkotlinx/serialization/internal/GeneratedSerializer;I)V)
|
||||
ASTORE (0)
|
||||
ALOAD (0)
|
||||
LDC (s)
|
||||
ICONST_0
|
||||
INVOKEVIRTUAL (kotlinx/serialization/internal/PluginGeneratedSerialDescriptor, addElement, (Ljava/lang/String;Z)V)
|
||||
ALOAD (0)
|
||||
CHECKCAST (kotlinx/serialization/descriptors/SerialDescriptor)
|
||||
PUTSTATIC (Result$OK$$serializer, descriptor, Lkotlinx/serialization/descriptors/SerialDescriptor;)
|
||||
RETURN
|
||||
}
|
||||
|
||||
private void <init>() {
|
||||
LABEL (L0)
|
||||
ALOAD (0)
|
||||
INVOKESPECIAL (java/lang/Object, <init>, ()V)
|
||||
RETURN
|
||||
LABEL (L1)
|
||||
}
|
||||
|
||||
public final kotlinx.serialization.KSerializer[] childSerializers() {
|
||||
LABEL (L0)
|
||||
ICONST_1
|
||||
ANEWARRAY (kotlinx/serialization/KSerializer)
|
||||
ASTORE (1)
|
||||
ALOAD (1)
|
||||
ICONST_0
|
||||
GETSTATIC (kotlinx/serialization/internal/StringSerializer, INSTANCE, Lkotlinx/serialization/internal/StringSerializer;)
|
||||
AASTORE
|
||||
ALOAD (1)
|
||||
ARETURN
|
||||
LABEL (L1)
|
||||
}
|
||||
|
||||
public final Result$OK deserialize(kotlinx.serialization.encoding.Decoder decoder) {
|
||||
LABEL (L0)
|
||||
ALOAD (1)
|
||||
LDC (decoder)
|
||||
INVOKESTATIC (kotlin/jvm/internal/Intrinsics, checkNotNullParameter, (Ljava/lang/Object;Ljava/lang/String;)V)
|
||||
GETSTATIC (Result$OK$$serializer, descriptor, Lkotlinx/serialization/descriptors/SerialDescriptor;)
|
||||
ASTORE (2)
|
||||
ICONST_1
|
||||
ISTORE (3)
|
||||
ICONST_0
|
||||
ISTORE (5)
|
||||
ACONST_NULL
|
||||
ASTORE (6)
|
||||
ALOAD (1)
|
||||
ALOAD (2)
|
||||
INVOKEINTERFACE (kotlinx/serialization/encoding/Decoder, beginStructure, (Lkotlinx/serialization/descriptors/SerialDescriptor;)Lkotlinx/serialization/encoding/CompositeDecoder;)
|
||||
ASTORE (7)
|
||||
ALOAD (7)
|
||||
INVOKEINTERFACE (kotlinx/serialization/encoding/CompositeDecoder, decodeSequentially, ()Z)
|
||||
IFEQ (L1)
|
||||
ALOAD (7)
|
||||
ALOAD (2)
|
||||
ICONST_0
|
||||
INVOKEINTERFACE (kotlinx/serialization/encoding/CompositeDecoder, decodeStringElement, (Lkotlinx/serialization/descriptors/SerialDescriptor;I)Ljava/lang/String;)
|
||||
ASTORE (6)
|
||||
ILOAD (5)
|
||||
ICONST_1
|
||||
IOR
|
||||
ISTORE (5)
|
||||
GOTO (L2)
|
||||
LABEL (L1)
|
||||
ILOAD (3)
|
||||
IFEQ (L2)
|
||||
ALOAD (7)
|
||||
ALOAD (2)
|
||||
INVOKEINTERFACE (kotlinx/serialization/encoding/CompositeDecoder, decodeElementIndex, (Lkotlinx/serialization/descriptors/SerialDescriptor;)I)
|
||||
ISTORE (4)
|
||||
ILOAD (4)
|
||||
TABLESWITCH
|
||||
-1: L3
|
||||
0: L4
|
||||
default: L5
|
||||
LABEL (L3)
|
||||
ICONST_0
|
||||
ISTORE (3)
|
||||
GOTO (L1)
|
||||
LABEL (L4)
|
||||
ALOAD (7)
|
||||
ALOAD (2)
|
||||
ICONST_0
|
||||
INVOKEINTERFACE (kotlinx/serialization/encoding/CompositeDecoder, decodeStringElement, (Lkotlinx/serialization/descriptors/SerialDescriptor;I)Ljava/lang/String;)
|
||||
ASTORE (6)
|
||||
ILOAD (5)
|
||||
ICONST_1
|
||||
IOR
|
||||
ISTORE (5)
|
||||
GOTO (L1)
|
||||
LABEL (L5)
|
||||
NEW (kotlinx/serialization/UnknownFieldException)
|
||||
DUP
|
||||
ILOAD (4)
|
||||
INVOKESPECIAL (kotlinx/serialization/UnknownFieldException, <init>, (I)V)
|
||||
ATHROW
|
||||
LABEL (L2)
|
||||
ALOAD (7)
|
||||
ALOAD (2)
|
||||
INVOKEINTERFACE (kotlinx/serialization/encoding/CompositeDecoder, endStructure, (Lkotlinx/serialization/descriptors/SerialDescriptor;)V)
|
||||
NEW (Result$OK)
|
||||
DUP
|
||||
ILOAD (5)
|
||||
ALOAD (6)
|
||||
ACONST_NULL
|
||||
INVOKESPECIAL (Result$OK, <init>, (ILjava/lang/String;Lkotlinx/serialization/internal/SerializationConstructorMarker;)V)
|
||||
ARETURN
|
||||
LABEL (L6)
|
||||
}
|
||||
|
||||
public java.lang.Object deserialize(kotlinx.serialization.encoding.Decoder decoder) {
|
||||
LABEL (L0)
|
||||
ALOAD (0)
|
||||
ALOAD (1)
|
||||
INVOKEVIRTUAL (Result$OK$$serializer, deserialize, (Lkotlinx/serialization/encoding/Decoder;)LResult$OK;)
|
||||
ARETURN
|
||||
LABEL (L1)
|
||||
}
|
||||
|
||||
public final kotlinx.serialization.descriptors.SerialDescriptor getDescriptor()
|
||||
|
||||
public final void serialize(kotlinx.serialization.encoding.Encoder encoder, Result$OK value)
|
||||
|
||||
public void serialize(kotlinx.serialization.encoding.Encoder encoder, java.lang.Object value)
|
||||
|
||||
public kotlinx.serialization.KSerializer[] typeParametersSerializers()
|
||||
}
|
||||
|
||||
public final class Result$OK$Companion : java/lang/Object {
|
||||
private void <init>() {
|
||||
LABEL (L0)
|
||||
ALOAD (0)
|
||||
INVOKESPECIAL (java/lang/Object, <init>, ()V)
|
||||
RETURN
|
||||
LABEL (L1)
|
||||
}
|
||||
|
||||
public void <init>(kotlin.jvm.internal.DefaultConstructorMarker $constructor_marker) {
|
||||
LABEL (L0)
|
||||
ALOAD (0)
|
||||
INVOKESPECIAL (Result$OK$Companion, <init>, ()V)
|
||||
RETURN
|
||||
LABEL (L1)
|
||||
}
|
||||
|
||||
public final kotlinx.serialization.KSerializer serializer() {
|
||||
LABEL (L0)
|
||||
GETSTATIC (Result$OK$$serializer, INSTANCE, LResult$OK$$serializer;)
|
||||
CHECKCAST (kotlinx/serialization/KSerializer)
|
||||
ARETURN
|
||||
LABEL (L1)
|
||||
}
|
||||
}
|
||||
|
||||
public final class Result$OK : Result {
|
||||
public final static Result$OK$Companion Companion
|
||||
|
||||
private final java.lang.String s
|
||||
|
||||
static void <clinit>() {
|
||||
NEW (Result$OK$Companion)
|
||||
DUP
|
||||
ACONST_NULL
|
||||
INVOKESPECIAL (Result$OK$Companion, <init>, (Lkotlin/jvm/internal/DefaultConstructorMarker;)V)
|
||||
PUTSTATIC (Result$OK, Companion, LResult$OK$Companion;)
|
||||
RETURN
|
||||
}
|
||||
|
||||
public void <init>(java.lang.String s) {
|
||||
LABEL (L0)
|
||||
ALOAD (1)
|
||||
LDC (s)
|
||||
INVOKESTATIC (kotlin/jvm/internal/Intrinsics, checkNotNullParameter, (Ljava/lang/Object;Ljava/lang/String;)V)
|
||||
LABEL (L1)
|
||||
LINENUMBER (14)
|
||||
ALOAD (0)
|
||||
ACONST_NULL
|
||||
INVOKESPECIAL (Result, <init>, (Lkotlin/jvm/internal/DefaultConstructorMarker;)V)
|
||||
ALOAD (0)
|
||||
ALOAD (1)
|
||||
PUTFIELD (Result$OK, s, Ljava/lang/String;)
|
||||
RETURN
|
||||
LABEL (L2)
|
||||
}
|
||||
|
||||
public void <init>(int seen0, java.lang.String s, kotlinx.serialization.internal.SerializationConstructorMarker serializationConstructorMarker) {
|
||||
LABEL (L0)
|
||||
LINENUMBER (14)
|
||||
ICONST_1
|
||||
ICONST_1
|
||||
ILOAD (1)
|
||||
IAND
|
||||
IF_ICMPEQ (L1)
|
||||
ILOAD (1)
|
||||
ICONST_1
|
||||
GETSTATIC (Result$OK$$serializer, INSTANCE, LResult$OK$$serializer;)
|
||||
INVOKEVIRTUAL (Result$OK$$serializer, getDescriptor, ()Lkotlinx/serialization/descriptors/SerialDescriptor;)
|
||||
INVOKESTATIC (kotlinx/serialization/internal/PluginExceptionsKt, throwMissingFieldException, (IILkotlinx/serialization/descriptors/SerialDescriptor;)V)
|
||||
LABEL (L1)
|
||||
ALOAD (0)
|
||||
ILOAD (1)
|
||||
ALOAD (3)
|
||||
INVOKESPECIAL (Result, <init>, (ILkotlinx/serialization/internal/SerializationConstructorMarker;)V)
|
||||
ALOAD (0)
|
||||
ALOAD (2)
|
||||
PUTFIELD (Result$OK, s, Ljava/lang/String;)
|
||||
RETURN
|
||||
LABEL (L2)
|
||||
}
|
||||
|
||||
public final java.lang.String getS()
|
||||
|
||||
public final static void write$Self(Result$OK self, kotlinx.serialization.encoding.CompositeEncoder output, kotlinx.serialization.descriptors.SerialDescriptor serialDesc) {
|
||||
LABEL (L0)
|
||||
LINENUMBER (14)
|
||||
ALOAD (0)
|
||||
CHECKCAST (Result)
|
||||
ALOAD (1)
|
||||
ALOAD (2)
|
||||
INVOKESTATIC (Result, write$Self, (LResult;Lkotlinx/serialization/encoding/CompositeEncoder;Lkotlinx/serialization/descriptors/SerialDescriptor;)V)
|
||||
ALOAD (1)
|
||||
ALOAD (2)
|
||||
ICONST_0
|
||||
ALOAD (0)
|
||||
GETFIELD (Result$OK, s, Ljava/lang/String;)
|
||||
INVOKEINTERFACE (kotlinx/serialization/encoding/CompositeEncoder, encodeStringElement, (Lkotlinx/serialization/descriptors/SerialDescriptor;ILjava/lang/String;)V)
|
||||
RETURN
|
||||
LABEL (L1)
|
||||
}
|
||||
}
|
||||
|
||||
public abstract class Result : java/lang/Object, X {
|
||||
private final static kotlin.Lazy $cachedSerializer$delegate
|
||||
|
||||
public final static Result$Companion Companion
|
||||
|
||||
static void <clinit>() {
|
||||
NEW (Result$Companion)
|
||||
DUP
|
||||
ACONST_NULL
|
||||
INVOKESPECIAL (Result$Companion, <init>, (Lkotlin/jvm/internal/DefaultConstructorMarker;)V)
|
||||
PUTSTATIC (Result, Companion, LResult$Companion;)
|
||||
GETSTATIC (kotlin/LazyThreadSafetyMode, PUBLICATION, Lkotlin/LazyThreadSafetyMode;)
|
||||
GETSTATIC (Result$Companion$1, INSTANCE, LResult$Companion$1;)
|
||||
CHECKCAST (kotlin/jvm/functions/Function0)
|
||||
INVOKESTATIC (kotlin/LazyKt, lazy, (Lkotlin/LazyThreadSafetyMode;Lkotlin/jvm/functions/Function0;)Lkotlin/Lazy;)
|
||||
PUTSTATIC (Result, $cachedSerializer$delegate, Lkotlin/Lazy;)
|
||||
RETURN
|
||||
}
|
||||
|
||||
private void <init>() {
|
||||
LABEL (L0)
|
||||
LINENUMBER (12)
|
||||
ALOAD (0)
|
||||
INVOKESPECIAL (java/lang/Object, <init>, ()V)
|
||||
RETURN
|
||||
LABEL (L1)
|
||||
}
|
||||
|
||||
public void <init>(int seen0, kotlinx.serialization.internal.SerializationConstructorMarker serializationConstructorMarker) {
|
||||
LABEL (L0)
|
||||
LINENUMBER (12)
|
||||
ALOAD (0)
|
||||
INVOKESPECIAL (java/lang/Object, <init>, ()V)
|
||||
RETURN
|
||||
LABEL (L1)
|
||||
}
|
||||
|
||||
public void <init>(kotlin.jvm.internal.DefaultConstructorMarker $constructor_marker) {
|
||||
LABEL (L0)
|
||||
ALOAD (0)
|
||||
INVOKESPECIAL (Result, <init>, ()V)
|
||||
RETURN
|
||||
LABEL (L1)
|
||||
}
|
||||
|
||||
public final static kotlin.Lazy access$get$cachedSerializer$delegate$cp()
|
||||
|
||||
public void def()
|
||||
|
||||
public final static void write$Self(Result self, kotlinx.serialization.encoding.CompositeEncoder output, kotlinx.serialization.descriptors.SerialDescriptor serialDesc) {
|
||||
LABEL (L0)
|
||||
RETURN
|
||||
LABEL (L1)
|
||||
}
|
||||
}
|
||||
|
||||
public final class X$Companion : java/lang/Object {
|
||||
final static X$Companion $$INSTANCE
|
||||
|
||||
static void <clinit>() {
|
||||
NEW (X$Companion)
|
||||
DUP
|
||||
INVOKESPECIAL (X$Companion, <init>, ()V)
|
||||
PUTSTATIC (X$Companion, $$INSTANCE, LX$Companion;)
|
||||
RETURN
|
||||
}
|
||||
|
||||
private void <init>() {
|
||||
LABEL (L0)
|
||||
ALOAD (0)
|
||||
INVOKESPECIAL (java/lang/Object, <init>, ()V)
|
||||
RETURN
|
||||
LABEL (L1)
|
||||
}
|
||||
|
||||
public final kotlinx.serialization.KSerializer serializer() {
|
||||
LABEL (L0)
|
||||
NEW (kotlinx/serialization/SealedClassSerializer)
|
||||
DUP
|
||||
LDC (X)
|
||||
LDC (LX;)
|
||||
INVOKESTATIC (kotlin/jvm/internal/Reflection, getOrCreateKotlinClass, (Ljava/lang/Class;)Lkotlin/reflect/KClass;)
|
||||
ICONST_2
|
||||
ANEWARRAY (kotlin/reflect/KClass)
|
||||
ASTORE (1)
|
||||
ALOAD (1)
|
||||
ICONST_0
|
||||
LDC (LResult$Err;)
|
||||
INVOKESTATIC (kotlin/jvm/internal/Reflection, getOrCreateKotlinClass, (Ljava/lang/Class;)Lkotlin/reflect/KClass;)
|
||||
AASTORE
|
||||
ALOAD (1)
|
||||
ICONST_1
|
||||
LDC (LResult$OK;)
|
||||
INVOKESTATIC (kotlin/jvm/internal/Reflection, getOrCreateKotlinClass, (Ljava/lang/Class;)Lkotlin/reflect/KClass;)
|
||||
AASTORE
|
||||
ALOAD (1)
|
||||
ICONST_2
|
||||
ANEWARRAY (kotlinx/serialization/KSerializer)
|
||||
ASTORE (1)
|
||||
ALOAD (1)
|
||||
ICONST_0
|
||||
NEW (kotlinx/serialization/internal/ObjectSerializer)
|
||||
DUP
|
||||
LDC (Result.Err)
|
||||
GETSTATIC (Result$Err, INSTANCE, LResult$Err;)
|
||||
ICONST_0
|
||||
ANEWARRAY (java/lang/annotation/Annotation)
|
||||
INVOKESPECIAL (kotlinx/serialization/internal/ObjectSerializer, <init>, (Ljava/lang/String;Ljava/lang/Object;[Ljava/lang/annotation/Annotation;)V)
|
||||
AASTORE
|
||||
ALOAD (1)
|
||||
ICONST_1
|
||||
GETSTATIC (Result$OK$$serializer, INSTANCE, LResult$OK$$serializer;)
|
||||
AASTORE
|
||||
ALOAD (1)
|
||||
ICONST_0
|
||||
ANEWARRAY (java/lang/annotation/Annotation)
|
||||
INVOKESPECIAL (kotlinx/serialization/SealedClassSerializer, <init>, (Ljava/lang/String;Lkotlin/reflect/KClass;[Lkotlin/reflect/KClass;[Lkotlinx/serialization/KSerializer;[Ljava/lang/annotation/Annotation;)V)
|
||||
CHECKCAST (kotlinx/serialization/KSerializer)
|
||||
ARETURN
|
||||
LABEL (L1)
|
||||
}
|
||||
}
|
||||
|
||||
public final class X$DefaultImpls : java/lang/Object {
|
||||
public static void def(X $this)
|
||||
}
|
||||
|
||||
public abstract interface X : java/lang/Object {
|
||||
public final static X$Companion Companion
|
||||
|
||||
static void <clinit>() {
|
||||
GETSTATIC (X$Companion, $$INSTANCE, LX$Companion;)
|
||||
PUTSTATIC (X, Companion, LX$Companion;)
|
||||
RETURN
|
||||
}
|
||||
|
||||
public abstract void def()
|
||||
}
|
||||
-6
@@ -31,12 +31,6 @@ public class SerializationAsmLikeInstructionsListingTestGenerated extends Abstra
|
||||
runTest("plugins/kotlinx-serialization/testData/codegen/Basic.kt");
|
||||
}
|
||||
|
||||
@Test
|
||||
@TestMetadata("Delegated.kt")
|
||||
public void testDelegated() throws Exception {
|
||||
runTest("plugins/kotlinx-serialization/testData/codegen/Delegated.kt");
|
||||
}
|
||||
|
||||
@Test
|
||||
@TestMetadata("Intrinsics.kt")
|
||||
public void testIntrinsics() throws Exception {
|
||||
|
||||
+51
@@ -0,0 +1,51 @@
|
||||
/*
|
||||
* Copyright 2010-2023 JetBrains s.r.o. and Kotlin Programming Language contributors.
|
||||
* Use of this source code is governed by the Apache 2.0 license that can be found in the license/LICENSE.txt file.
|
||||
*/
|
||||
|
||||
package org.jetbrains.kotlinx.serialization.runners;
|
||||
|
||||
import com.intellij.testFramework.TestDataPath;
|
||||
import org.jetbrains.kotlin.test.util.KtTestUtil;
|
||||
import org.jetbrains.kotlin.test.TargetBackend;
|
||||
import org.jetbrains.kotlin.test.TestMetadata;
|
||||
import org.junit.jupiter.api.Nested;
|
||||
import org.junit.jupiter.api.Test;
|
||||
|
||||
import java.io.File;
|
||||
import java.util.regex.Pattern;
|
||||
|
||||
/** This class is generated by {@link org.jetbrains.kotlinx.serialization.TestGeneratorKt}. DO NOT MODIFY MANUALLY */
|
||||
@SuppressWarnings("all")
|
||||
@TestMetadata("plugins/kotlinx-serialization/testData/codegen")
|
||||
@TestDataPath("$PROJECT_ROOT")
|
||||
public class SerializationFir2IrAsmLikeInstructionsListingTestGenerated extends AbstractSerializationFir2IrAsmLikeInstructionsListingTest {
|
||||
@Test
|
||||
public void testAllFilesPresentInCodegen() throws Exception {
|
||||
KtTestUtil.assertAllTestsPresentByMetadataWithExcluded(this.getClass(), new File("plugins/kotlinx-serialization/testData/codegen"), Pattern.compile("^(.+)\\.kt$"), null, TargetBackend.JVM_IR, true);
|
||||
}
|
||||
|
||||
@Test
|
||||
@TestMetadata("Basic.kt")
|
||||
public void testBasic() throws Exception {
|
||||
runTest("plugins/kotlinx-serialization/testData/codegen/Basic.kt");
|
||||
}
|
||||
|
||||
@Test
|
||||
@TestMetadata("Intrinsics.kt")
|
||||
public void testIntrinsics() throws Exception {
|
||||
runTest("plugins/kotlinx-serialization/testData/codegen/Intrinsics.kt");
|
||||
}
|
||||
|
||||
@Test
|
||||
@TestMetadata("IntrinsicsAdvanced.kt")
|
||||
public void testIntrinsicsAdvanced() throws Exception {
|
||||
runTest("plugins/kotlinx-serialization/testData/codegen/IntrinsicsAdvanced.kt");
|
||||
}
|
||||
|
||||
@Test
|
||||
@TestMetadata("Sealed.kt")
|
||||
public void testSealed() throws Exception {
|
||||
runTest("plugins/kotlinx-serialization/testData/codegen/Sealed.kt");
|
||||
}
|
||||
}
|
||||
-6
@@ -31,12 +31,6 @@ public class SerializationIrAsmLikeInstructionsListingTestGenerated extends Abst
|
||||
runTest("plugins/kotlinx-serialization/testData/codegen/Basic.kt");
|
||||
}
|
||||
|
||||
@Test
|
||||
@TestMetadata("Delegated.kt")
|
||||
public void testDelegated() throws Exception {
|
||||
runTest("plugins/kotlinx-serialization/testData/codegen/Delegated.kt");
|
||||
}
|
||||
|
||||
@Test
|
||||
@TestMetadata("Intrinsics.kt")
|
||||
public void testIntrinsics() throws Exception {
|
||||
|
||||
+5
-1
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright 2010-2021 JetBrains s.r.o. and Kotlin Programming Language contributors.
|
||||
* Copyright 2010-2023 JetBrains s.r.o. and Kotlin Programming Language contributors.
|
||||
* Use of this source code is governed by the Apache 2.0 license that can be found in the license/LICENSE.txt file.
|
||||
*/
|
||||
|
||||
@@ -38,6 +38,10 @@ fun main(args: Array<String>) {
|
||||
model("codegen")
|
||||
}
|
||||
|
||||
testClass<AbstractSerializationFir2IrAsmLikeInstructionsListingTest> {
|
||||
model("codegen")
|
||||
}
|
||||
|
||||
// ------------------------------- box -------------------------------
|
||||
|
||||
testClass<AbstractSerializationIrBoxTest> {
|
||||
|
||||
+11
-1
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright 2010-2022 JetBrains s.r.o. and Kotlin Programming Language contributors.
|
||||
* Copyright 2010-2023 JetBrains s.r.o. and Kotlin Programming Language contributors.
|
||||
* Use of this source code is governed by the Apache 2.0 license that can be found in the license/LICENSE.txt file.
|
||||
*/
|
||||
|
||||
@@ -28,6 +28,16 @@ open class AbstractSerializationIrAsmLikeInstructionsListingTest : AbstractIrAsm
|
||||
}
|
||||
}
|
||||
|
||||
open class AbstractSerializationFir2IrAsmLikeInstructionsListingTest : AbstractFirAsmLikeInstructionListingTest() {
|
||||
override fun configure(builder: TestConfigurationBuilder) {
|
||||
super.configure(builder)
|
||||
builder.defaultDirectives {
|
||||
+AsmLikeInstructionListingDirectives.FIR_DIFFERENCE
|
||||
}
|
||||
builder.configureForKotlinxSerialization()
|
||||
}
|
||||
}
|
||||
|
||||
private fun TestConfigurationBuilder.enableDifference() {
|
||||
defaultDirectives {
|
||||
+AsmLikeInstructionListingDirectives.IR_DIFFERENCE
|
||||
|
||||
Reference in New Issue
Block a user