[FIR] Introduce the PluginGenerated source kind
Make parcelize work consistently with `FirOverrideChecker`. Actually, there is a philosophical question about what to do when a plugin generates a class in a new package, and this class is red code (for instance, doesn't implement an abstract member from a supertype). There's no source to report such an error, but we probably do want to run checkers to avoid trying to compile red code to binaries (because it may crash in backend, or it may silently work).
This commit is contained in:
committed by
Space Team
parent
694029d67f
commit
afd8895e51
+4
-4
@@ -46,7 +46,7 @@ KtFunctionSymbol:
|
||||
type: test/FirstTarget
|
||||
symbolKind: LOCAL
|
||||
typeParameters: []
|
||||
getContainingFileSymbol: null
|
||||
getContainingFileSymbol: KtFileSymbol(customSerlializable.kt)
|
||||
getContainingJvmClassName: test.Serializer
|
||||
getContainingModule: KtSourceModule "Sources of main"
|
||||
deprecationStatus: null
|
||||
@@ -56,7 +56,7 @@ KtFunctionSymbol:
|
||||
annotationsList: []
|
||||
ownTypeArguments: []
|
||||
type: test/Serializer
|
||||
getContainingFileSymbol: null
|
||||
getContainingFileSymbol: KtFileSymbol(customSerlializable.kt)
|
||||
getContainingJvmClassName: test.Serializer
|
||||
getContainingModule: KtSourceModule "Sources of main"
|
||||
deprecationStatus: null
|
||||
@@ -109,7 +109,7 @@ KtFunctionSymbol:
|
||||
type: test/SecondTarget
|
||||
symbolKind: LOCAL
|
||||
typeParameters: []
|
||||
getContainingFileSymbol: null
|
||||
getContainingFileSymbol: KtFileSymbol(customSerlializable.kt)
|
||||
getContainingJvmClassName: test.Serializer
|
||||
getContainingModule: KtSourceModule "Sources of main"
|
||||
deprecationStatus: null
|
||||
@@ -119,7 +119,7 @@ KtFunctionSymbol:
|
||||
annotationsList: []
|
||||
ownTypeArguments: []
|
||||
type: test/Serializer
|
||||
getContainingFileSymbol: null
|
||||
getContainingFileSymbol: KtFileSymbol(customSerlializable.kt)
|
||||
getContainingJvmClassName: test.Serializer
|
||||
getContainingModule: KtSourceModule "Sources of main"
|
||||
deprecationStatus: null
|
||||
|
||||
+1
-1
@@ -31,7 +31,7 @@ KtFunctionSymbol:
|
||||
annotationsList: []
|
||||
ownTypeArguments: []
|
||||
type: test/WithGeneratedCompanion.Companion
|
||||
getContainingFileSymbol: null
|
||||
getContainingFileSymbol: KtFileSymbol(generatedCompanionWithFoo.kt)
|
||||
getContainingJvmClassName: test.WithGeneratedCompanion.Companion
|
||||
getContainingModule: KtSourceModule "Sources of main"
|
||||
deprecationStatus: null
|
||||
|
||||
+2
-2
@@ -31,7 +31,7 @@ KtFunctionSymbol:
|
||||
annotationsList: []
|
||||
ownTypeArguments: []
|
||||
type: test/MyClass
|
||||
getContainingFileSymbol: null
|
||||
getContainingFileSymbol: KtFileSymbol(nestedClassAndMaterializeMember.kt)
|
||||
getContainingJvmClassName: test.MyClass
|
||||
getContainingModule: KtSourceModule "Sources of main"
|
||||
deprecationStatus: null
|
||||
@@ -200,7 +200,7 @@ KtNamedClassOrObjectSymbol:
|
||||
symbolKind: CLASS_MEMBER
|
||||
typeParameters: []
|
||||
visibility: Public
|
||||
getContainingFileSymbol: null
|
||||
getContainingFileSymbol: KtFileSymbol(nestedClassAndMaterializeMember.kt)
|
||||
getContainingModule: KtSourceModule "Sources of main"
|
||||
annotationApplicableTargets: null
|
||||
deprecationStatus: null
|
||||
|
||||
+1
-1
@@ -23,7 +23,7 @@ KtNamedClassOrObjectSymbol:
|
||||
symbolKind: CLASS_MEMBER
|
||||
typeParameters: []
|
||||
visibility: Public
|
||||
getContainingFileSymbol: null
|
||||
getContainingFileSymbol: KtFileSymbol(generatedCompanionWorksAsValue.kt)
|
||||
getContainingModule: KtSourceModule "Sources of main"
|
||||
annotationApplicableTargets: null
|
||||
deprecationStatus: null
|
||||
|
||||
@@ -6,8 +6,10 @@
|
||||
package org.jetbrains.kotlin.fir.plugin
|
||||
|
||||
import org.jetbrains.kotlin.GeneratedDeclarationKey
|
||||
import org.jetbrains.kotlin.KtFakeSourceElementKind
|
||||
import org.jetbrains.kotlin.descriptors.ClassKind
|
||||
import org.jetbrains.kotlin.descriptors.Modality
|
||||
import org.jetbrains.kotlin.fakeElement
|
||||
import org.jetbrains.kotlin.fir.FirSession
|
||||
import org.jetbrains.kotlin.fir.containingClassForLocalAttr
|
||||
import org.jetbrains.kotlin.fir.declarations.FirRegularClass
|
||||
@@ -68,6 +70,7 @@ public class ClassBuildingContext(
|
||||
classKind = this@ClassBuildingContext.classKind
|
||||
scopeProvider = session.kotlinScopeProvider
|
||||
status = generateStatus()
|
||||
source = owner?.source?.fakeElement(KtFakeSourceElementKind.PluginGenerated)
|
||||
name = classId.shortClassName
|
||||
symbol = FirRegularClassSymbol(classId)
|
||||
|
||||
|
||||
+4
@@ -6,8 +6,10 @@
|
||||
package org.jetbrains.kotlin.fir.plugin
|
||||
|
||||
import org.jetbrains.kotlin.GeneratedDeclarationKey
|
||||
import org.jetbrains.kotlin.KtFakeSourceElementKind
|
||||
import org.jetbrains.kotlin.descriptors.Modality
|
||||
import org.jetbrains.kotlin.descriptors.Visibility
|
||||
import org.jetbrains.kotlin.fakeElement
|
||||
import org.jetbrains.kotlin.fir.FirSession
|
||||
import org.jetbrains.kotlin.fir.declarations.*
|
||||
import org.jetbrains.kotlin.fir.declarations.builder.buildProperty
|
||||
@@ -69,6 +71,8 @@ public class PropertyBuildingContext(
|
||||
moduleData = session.moduleData
|
||||
origin = key.origin
|
||||
|
||||
source = owner?.source?.fakeElement(KtFakeSourceElementKind.PluginGenerated)
|
||||
|
||||
symbol = FirPropertySymbol(callableId)
|
||||
name = callableId.callableName
|
||||
|
||||
|
||||
+4
@@ -6,6 +6,8 @@
|
||||
package org.jetbrains.kotlin.fir.plugin
|
||||
|
||||
import org.jetbrains.kotlin.GeneratedDeclarationKey
|
||||
import org.jetbrains.kotlin.KtFakeSourceElementKind
|
||||
import org.jetbrains.kotlin.fakeElement
|
||||
import org.jetbrains.kotlin.fir.FirSession
|
||||
import org.jetbrains.kotlin.fir.declarations.FirResolvePhase
|
||||
import org.jetbrains.kotlin.fir.declarations.FirSimpleFunction
|
||||
@@ -57,6 +59,8 @@ public class SimpleFunctionBuildingContext(
|
||||
moduleData = session.moduleData
|
||||
origin = key.origin
|
||||
|
||||
source = owner?.source?.fakeElement(KtFakeSourceElementKind.PluginGenerated)
|
||||
|
||||
symbol = FirNamedFunctionSymbol(callableId)
|
||||
name = callableId.callableName
|
||||
|
||||
|
||||
@@ -309,6 +309,9 @@ sealed class KtFakeSourceElementKind(final override val shouldSkipErrorTypeRepor
|
||||
|
||||
// For it.functionFromAny() calls on a stub type
|
||||
object CastToAnyForStubTypes : KtFakeSourceElementKind()
|
||||
|
||||
// For plugin-generated things
|
||||
object PluginGenerated : KtFakeSourceElementKind()
|
||||
}
|
||||
|
||||
sealed class AbstractKtSourceElement {
|
||||
|
||||
+159
-118
@@ -8,6 +8,8 @@ public final class ListOfUsers$$serializer : java/lang/Object, kotlinx/serializa
|
||||
DUP
|
||||
INVOKESPECIAL (ListOfUsers$$serializer, <init>, ()V)
|
||||
PUTSTATIC (ListOfUsers$$serializer, INSTANCE, LListOfUsers$$serializer;)
|
||||
LABEL (L0)
|
||||
LINENUMBER (12)
|
||||
NEW (kotlinx/serialization/internal/PluginGeneratedSerialDescriptor)
|
||||
DUP
|
||||
LDC (ListOfUsers)
|
||||
@@ -23,6 +25,8 @@ public final class ListOfUsers$$serializer : java/lang/Object, kotlinx/serializa
|
||||
ALOAD (0)
|
||||
CHECKCAST (kotlinx/serialization/descriptors/SerialDescriptor)
|
||||
PUTSTATIC (ListOfUsers$$serializer, descriptor, Lkotlinx/serialization/descriptors/SerialDescriptor;)
|
||||
LABEL (L1)
|
||||
LINENUMBER (13)
|
||||
RETURN
|
||||
}
|
||||
|
||||
@@ -36,6 +40,7 @@ public final class ListOfUsers$$serializer : java/lang/Object, kotlinx/serializa
|
||||
|
||||
public final kotlinx.serialization.KSerializer[] childSerializers() {
|
||||
LABEL (L0)
|
||||
LINENUMBER (12)
|
||||
INVOKESTATIC (ListOfUsers, access$get$childSerializers$cp, ()[Lkotlinx/serialization/KSerializer;)
|
||||
ASTORE (1)
|
||||
ICONST_1
|
||||
@@ -57,6 +62,8 @@ public final class ListOfUsers$$serializer : java/lang/Object, kotlinx/serializa
|
||||
ALOAD (1)
|
||||
LDC (decoder)
|
||||
INVOKESTATIC (kotlin/jvm/internal/Intrinsics, checkNotNullParameter, (Ljava/lang/Object;Ljava/lang/String;)V)
|
||||
LABEL (L1)
|
||||
LINENUMBER (12)
|
||||
GETSTATIC (ListOfUsers$$serializer, descriptor, Lkotlinx/serialization/descriptors/SerialDescriptor;)
|
||||
ASTORE (2)
|
||||
ICONST_1
|
||||
@@ -73,7 +80,40 @@ public final class ListOfUsers$$serializer : java/lang/Object, kotlinx/serializa
|
||||
ASTORE (8)
|
||||
ALOAD (7)
|
||||
INVOKEINTERFACE (kotlinx/serialization/encoding/CompositeDecoder, decodeSequentially, ()Z)
|
||||
IFEQ (L1)
|
||||
IFEQ (L2)
|
||||
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;)
|
||||
CHECKCAST (java/util/List)
|
||||
ASTORE (6)
|
||||
ILOAD (5)
|
||||
ICONST_1
|
||||
IOR
|
||||
ISTORE (5)
|
||||
GOTO (L3)
|
||||
LABEL (L2)
|
||||
ILOAD (3)
|
||||
IFEQ (L3)
|
||||
ALOAD (7)
|
||||
ALOAD (2)
|
||||
INVOKEINTERFACE (kotlinx/serialization/encoding/CompositeDecoder, decodeElementIndex, (Lkotlinx/serialization/descriptors/SerialDescriptor;)I)
|
||||
ISTORE (4)
|
||||
ILOAD (4)
|
||||
TABLESWITCH
|
||||
-1: L4
|
||||
0: L5
|
||||
default: L6
|
||||
LABEL (L4)
|
||||
ICONST_0
|
||||
ISTORE (3)
|
||||
GOTO (L2)
|
||||
LABEL (L5)
|
||||
ALOAD (7)
|
||||
ALOAD (2)
|
||||
ICONST_0
|
||||
@@ -90,46 +130,13 @@ public final class ListOfUsers$$serializer : java/lang/Object, kotlinx/serializa
|
||||
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;)
|
||||
CHECKCAST (java/util/List)
|
||||
ASTORE (6)
|
||||
ILOAD (5)
|
||||
ICONST_1
|
||||
IOR
|
||||
ISTORE (5)
|
||||
GOTO (L1)
|
||||
LABEL (L5)
|
||||
LABEL (L6)
|
||||
NEW (kotlinx/serialization/UnknownFieldException)
|
||||
DUP
|
||||
ILOAD (4)
|
||||
INVOKESPECIAL (kotlinx/serialization/UnknownFieldException, <init>, (I)V)
|
||||
ATHROW
|
||||
LABEL (L2)
|
||||
LABEL (L3)
|
||||
ALOAD (7)
|
||||
ALOAD (2)
|
||||
INVOKEINTERFACE (kotlinx/serialization/encoding/CompositeDecoder, endStructure, (Lkotlinx/serialization/descriptors/SerialDescriptor;)V)
|
||||
@@ -140,11 +147,12 @@ public final class ListOfUsers$$serializer : java/lang/Object, kotlinx/serializa
|
||||
ACONST_NULL
|
||||
INVOKESPECIAL (ListOfUsers, <init>, (ILjava/util/List;Lkotlinx/serialization/internal/SerializationConstructorMarker;)V)
|
||||
ARETURN
|
||||
LABEL (L6)
|
||||
LABEL (L7)
|
||||
}
|
||||
|
||||
public java.lang.Object deserialize(kotlinx.serialization.encoding.Decoder decoder) {
|
||||
LABEL (L0)
|
||||
LINENUMBER (12)
|
||||
ALOAD (0)
|
||||
ALOAD (1)
|
||||
INVOKEVIRTUAL (ListOfUsers$$serializer, deserialize, (Lkotlinx/serialization/encoding/Decoder;)LListOfUsers;)
|
||||
@@ -167,6 +175,8 @@ public final class ListOfUsers$$serializer : java/lang/Object, kotlinx/serializa
|
||||
ALOAD (2)
|
||||
LDC (value)
|
||||
INVOKESTATIC (kotlin/jvm/internal/Intrinsics, checkNotNullParameter, (Ljava/lang/Object;Ljava/lang/String;)V)
|
||||
LABEL (L1)
|
||||
LINENUMBER (12)
|
||||
GETSTATIC (ListOfUsers$$serializer, descriptor, Lkotlinx/serialization/descriptors/SerialDescriptor;)
|
||||
ASTORE (3)
|
||||
ALOAD (1)
|
||||
@@ -180,12 +190,15 @@ public final class ListOfUsers$$serializer : java/lang/Object, kotlinx/serializa
|
||||
ALOAD (4)
|
||||
ALOAD (3)
|
||||
INVOKEINTERFACE (kotlinx/serialization/encoding/CompositeEncoder, endStructure, (Lkotlinx/serialization/descriptors/SerialDescriptor;)V)
|
||||
LABEL (L2)
|
||||
LINENUMBER (13)
|
||||
RETURN
|
||||
LABEL (L1)
|
||||
LABEL (L3)
|
||||
}
|
||||
|
||||
public void serialize(kotlinx.serialization.encoding.Encoder encoder, java.lang.Object value) {
|
||||
LABEL (L0)
|
||||
LINENUMBER (12)
|
||||
ALOAD (0)
|
||||
ALOAD (1)
|
||||
ALOAD (2)
|
||||
@@ -231,6 +244,8 @@ public final class ListOfUsers : java/lang/Object {
|
||||
ACONST_NULL
|
||||
INVOKESPECIAL (ListOfUsers$Companion, <init>, (Lkotlin/jvm/internal/DefaultConstructorMarker;)V)
|
||||
PUTSTATIC (ListOfUsers, Companion, LListOfUsers$Companion;)
|
||||
LABEL (L0)
|
||||
LINENUMBER (12)
|
||||
ICONST_1
|
||||
ANEWARRAY (kotlinx/serialization/KSerializer)
|
||||
ASTORE (0)
|
||||
@@ -320,6 +335,8 @@ public final class OptionalUser$$serializer : java/lang/Object, kotlinx/serializ
|
||||
DUP
|
||||
INVOKESPECIAL (OptionalUser$$serializer, <init>, ()V)
|
||||
PUTSTATIC (OptionalUser$$serializer, INSTANCE, LOptionalUser$$serializer;)
|
||||
LABEL (L0)
|
||||
LINENUMBER (9)
|
||||
NEW (kotlinx/serialization/internal/PluginGeneratedSerialDescriptor)
|
||||
DUP
|
||||
LDC (OptionalUser)
|
||||
@@ -335,6 +352,8 @@ public final class OptionalUser$$serializer : java/lang/Object, kotlinx/serializ
|
||||
ALOAD (0)
|
||||
CHECKCAST (kotlinx/serialization/descriptors/SerialDescriptor)
|
||||
PUTSTATIC (OptionalUser$$serializer, descriptor, Lkotlinx/serialization/descriptors/SerialDescriptor;)
|
||||
LABEL (L1)
|
||||
LINENUMBER (10)
|
||||
RETURN
|
||||
}
|
||||
|
||||
@@ -348,6 +367,7 @@ public final class OptionalUser$$serializer : java/lang/Object, kotlinx/serializ
|
||||
|
||||
public final kotlinx.serialization.KSerializer[] childSerializers() {
|
||||
LABEL (L0)
|
||||
LINENUMBER (9)
|
||||
ICONST_1
|
||||
ANEWARRAY (kotlinx/serialization/KSerializer)
|
||||
ASTORE (1)
|
||||
@@ -365,6 +385,8 @@ public final class OptionalUser$$serializer : java/lang/Object, kotlinx/serializ
|
||||
ALOAD (1)
|
||||
LDC (decoder)
|
||||
INVOKESTATIC (kotlin/jvm/internal/Intrinsics, checkNotNullParameter, (Ljava/lang/Object;Ljava/lang/String;)V)
|
||||
LABEL (L1)
|
||||
LINENUMBER (9)
|
||||
GETSTATIC (OptionalUser$$serializer, descriptor, Lkotlinx/serialization/descriptors/SerialDescriptor;)
|
||||
ASTORE (2)
|
||||
ICONST_1
|
||||
@@ -379,7 +401,38 @@ public final class OptionalUser$$serializer : java/lang/Object, kotlinx/serializ
|
||||
ASTORE (7)
|
||||
ALOAD (7)
|
||||
INVOKEINTERFACE (kotlinx/serialization/encoding/CompositeDecoder, decodeSequentially, ()Z)
|
||||
IFEQ (L1)
|
||||
IFEQ (L2)
|
||||
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;)
|
||||
CHECKCAST (User)
|
||||
ASTORE (6)
|
||||
ILOAD (5)
|
||||
ICONST_1
|
||||
IOR
|
||||
ISTORE (5)
|
||||
GOTO (L3)
|
||||
LABEL (L2)
|
||||
ILOAD (3)
|
||||
IFEQ (L3)
|
||||
ALOAD (7)
|
||||
ALOAD (2)
|
||||
INVOKEINTERFACE (kotlinx/serialization/encoding/CompositeDecoder, decodeElementIndex, (Lkotlinx/serialization/descriptors/SerialDescriptor;)I)
|
||||
ISTORE (4)
|
||||
ILOAD (4)
|
||||
TABLESWITCH
|
||||
-1: L4
|
||||
0: L5
|
||||
default: L6
|
||||
LABEL (L4)
|
||||
ICONST_0
|
||||
ISTORE (3)
|
||||
GOTO (L2)
|
||||
LABEL (L5)
|
||||
ALOAD (7)
|
||||
ALOAD (2)
|
||||
ICONST_0
|
||||
@@ -394,44 +447,13 @@ public final class OptionalUser$$serializer : java/lang/Object, kotlinx/serializ
|
||||
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;)
|
||||
CHECKCAST (User)
|
||||
ASTORE (6)
|
||||
ILOAD (5)
|
||||
ICONST_1
|
||||
IOR
|
||||
ISTORE (5)
|
||||
GOTO (L1)
|
||||
LABEL (L5)
|
||||
LABEL (L6)
|
||||
NEW (kotlinx/serialization/UnknownFieldException)
|
||||
DUP
|
||||
ILOAD (4)
|
||||
INVOKESPECIAL (kotlinx/serialization/UnknownFieldException, <init>, (I)V)
|
||||
ATHROW
|
||||
LABEL (L2)
|
||||
LABEL (L3)
|
||||
ALOAD (7)
|
||||
ALOAD (2)
|
||||
INVOKEINTERFACE (kotlinx/serialization/encoding/CompositeDecoder, endStructure, (Lkotlinx/serialization/descriptors/SerialDescriptor;)V)
|
||||
@@ -442,11 +464,12 @@ public final class OptionalUser$$serializer : java/lang/Object, kotlinx/serializ
|
||||
ACONST_NULL
|
||||
INVOKESPECIAL (OptionalUser, <init>, (ILUser;Lkotlinx/serialization/internal/SerializationConstructorMarker;)V)
|
||||
ARETURN
|
||||
LABEL (L6)
|
||||
LABEL (L7)
|
||||
}
|
||||
|
||||
public java.lang.Object deserialize(kotlinx.serialization.encoding.Decoder decoder) {
|
||||
LABEL (L0)
|
||||
LINENUMBER (9)
|
||||
ALOAD (0)
|
||||
ALOAD (1)
|
||||
INVOKEVIRTUAL (OptionalUser$$serializer, deserialize, (Lkotlinx/serialization/encoding/Decoder;)LOptionalUser;)
|
||||
@@ -469,6 +492,8 @@ public final class OptionalUser$$serializer : java/lang/Object, kotlinx/serializ
|
||||
ALOAD (2)
|
||||
LDC (value)
|
||||
INVOKESTATIC (kotlin/jvm/internal/Intrinsics, checkNotNullParameter, (Ljava/lang/Object;Ljava/lang/String;)V)
|
||||
LABEL (L1)
|
||||
LINENUMBER (9)
|
||||
GETSTATIC (OptionalUser$$serializer, descriptor, Lkotlinx/serialization/descriptors/SerialDescriptor;)
|
||||
ASTORE (3)
|
||||
ALOAD (1)
|
||||
@@ -482,12 +507,15 @@ public final class OptionalUser$$serializer : java/lang/Object, kotlinx/serializ
|
||||
ALOAD (4)
|
||||
ALOAD (3)
|
||||
INVOKEINTERFACE (kotlinx/serialization/encoding/CompositeEncoder, endStructure, (Lkotlinx/serialization/descriptors/SerialDescriptor;)V)
|
||||
LABEL (L2)
|
||||
LINENUMBER (10)
|
||||
RETURN
|
||||
LABEL (L1)
|
||||
LABEL (L3)
|
||||
}
|
||||
|
||||
public void serialize(kotlinx.serialization.encoding.Encoder encoder, java.lang.Object value) {
|
||||
LABEL (L0)
|
||||
LINENUMBER (9)
|
||||
ALOAD (0)
|
||||
ALOAD (1)
|
||||
ALOAD (2)
|
||||
@@ -677,6 +705,8 @@ public final class User$$serializer : java/lang/Object, kotlinx/serialization/in
|
||||
DUP
|
||||
INVOKESPECIAL (User$$serializer, <init>, ()V)
|
||||
PUTSTATIC (User$$serializer, INSTANCE, LUser$$serializer;)
|
||||
LABEL (L0)
|
||||
LINENUMBER (6)
|
||||
NEW (kotlinx/serialization/internal/PluginGeneratedSerialDescriptor)
|
||||
DUP
|
||||
LDC (User)
|
||||
@@ -696,6 +726,8 @@ public final class User$$serializer : java/lang/Object, kotlinx/serialization/in
|
||||
ALOAD (0)
|
||||
CHECKCAST (kotlinx/serialization/descriptors/SerialDescriptor)
|
||||
PUTSTATIC (User$$serializer, descriptor, Lkotlinx/serialization/descriptors/SerialDescriptor;)
|
||||
LABEL (L1)
|
||||
LINENUMBER (7)
|
||||
RETURN
|
||||
}
|
||||
|
||||
@@ -709,6 +741,7 @@ public final class User$$serializer : java/lang/Object, kotlinx/serialization/in
|
||||
|
||||
public final kotlinx.serialization.KSerializer[] childSerializers() {
|
||||
LABEL (L0)
|
||||
LINENUMBER (6)
|
||||
ICONST_2
|
||||
ANEWARRAY (kotlinx/serialization/KSerializer)
|
||||
ASTORE (1)
|
||||
@@ -730,6 +763,8 @@ public final class User$$serializer : java/lang/Object, kotlinx/serialization/in
|
||||
ALOAD (1)
|
||||
LDC (decoder)
|
||||
INVOKESTATIC (kotlin/jvm/internal/Intrinsics, checkNotNullParameter, (Ljava/lang/Object;Ljava/lang/String;)V)
|
||||
LABEL (L1)
|
||||
LINENUMBER (6)
|
||||
GETSTATIC (User$$serializer, descriptor, Lkotlinx/serialization/descriptors/SerialDescriptor;)
|
||||
ASTORE (2)
|
||||
ICONST_1
|
||||
@@ -746,7 +781,7 @@ public final class User$$serializer : java/lang/Object, kotlinx/serialization/in
|
||||
ASTORE (8)
|
||||
ALOAD (8)
|
||||
INVOKEINTERFACE (kotlinx/serialization/encoding/CompositeDecoder, decodeSequentially, ()Z)
|
||||
IFEQ (L1)
|
||||
IFEQ (L2)
|
||||
ALOAD (8)
|
||||
ALOAD (2)
|
||||
ICONST_0
|
||||
@@ -756,6 +791,45 @@ public final class User$$serializer : java/lang/Object, kotlinx/serialization/in
|
||||
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 (L3)
|
||||
LABEL (L2)
|
||||
ILOAD (3)
|
||||
IFEQ (L3)
|
||||
ALOAD (8)
|
||||
ALOAD (2)
|
||||
INVOKEINTERFACE (kotlinx/serialization/encoding/CompositeDecoder, decodeElementIndex, (Lkotlinx/serialization/descriptors/SerialDescriptor;)I)
|
||||
ISTORE (4)
|
||||
ILOAD (4)
|
||||
TABLESWITCH
|
||||
-1: L4
|
||||
0: L5
|
||||
1: L6
|
||||
default: L7
|
||||
LABEL (L4)
|
||||
ICONST_0
|
||||
ISTORE (3)
|
||||
GOTO (L2)
|
||||
LABEL (L5)
|
||||
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 (L2)
|
||||
LABEL (L6)
|
||||
ALOAD (8)
|
||||
ALOAD (2)
|
||||
ICONST_1
|
||||
@@ -766,52 +840,13 @@ public final class User$$serializer : java/lang/Object, kotlinx/serialization/in
|
||||
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)
|
||||
LABEL (L7)
|
||||
NEW (kotlinx/serialization/UnknownFieldException)
|
||||
DUP
|
||||
ILOAD (4)
|
||||
INVOKESPECIAL (kotlinx/serialization/UnknownFieldException, <init>, (I)V)
|
||||
ATHROW
|
||||
LABEL (L2)
|
||||
LABEL (L3)
|
||||
ALOAD (8)
|
||||
ALOAD (2)
|
||||
INVOKEINTERFACE (kotlinx/serialization/encoding/CompositeDecoder, endStructure, (Lkotlinx/serialization/descriptors/SerialDescriptor;)V)
|
||||
@@ -823,11 +858,12 @@ public final class User$$serializer : java/lang/Object, kotlinx/serialization/in
|
||||
ACONST_NULL
|
||||
INVOKESPECIAL (User, <init>, (ILjava/lang/String;Ljava/lang/String;Lkotlinx/serialization/internal/SerializationConstructorMarker;)V)
|
||||
ARETURN
|
||||
LABEL (L7)
|
||||
LABEL (L8)
|
||||
}
|
||||
|
||||
public java.lang.Object deserialize(kotlinx.serialization.encoding.Decoder decoder) {
|
||||
LABEL (L0)
|
||||
LINENUMBER (6)
|
||||
ALOAD (0)
|
||||
ALOAD (1)
|
||||
INVOKEVIRTUAL (User$$serializer, deserialize, (Lkotlinx/serialization/encoding/Decoder;)LUser;)
|
||||
@@ -850,6 +886,8 @@ public final class User$$serializer : java/lang/Object, kotlinx/serialization/in
|
||||
ALOAD (2)
|
||||
LDC (value)
|
||||
INVOKESTATIC (kotlin/jvm/internal/Intrinsics, checkNotNullParameter, (Ljava/lang/Object;Ljava/lang/String;)V)
|
||||
LABEL (L1)
|
||||
LINENUMBER (6)
|
||||
GETSTATIC (User$$serializer, descriptor, Lkotlinx/serialization/descriptors/SerialDescriptor;)
|
||||
ASTORE (3)
|
||||
ALOAD (1)
|
||||
@@ -863,12 +901,15 @@ public final class User$$serializer : java/lang/Object, kotlinx/serialization/in
|
||||
ALOAD (4)
|
||||
ALOAD (3)
|
||||
INVOKEINTERFACE (kotlinx/serialization/encoding/CompositeEncoder, endStructure, (Lkotlinx/serialization/descriptors/SerialDescriptor;)V)
|
||||
LABEL (L2)
|
||||
LINENUMBER (7)
|
||||
RETURN
|
||||
LABEL (L1)
|
||||
LABEL (L3)
|
||||
}
|
||||
|
||||
public void serialize(kotlinx.serialization.encoding.Encoder encoder, java.lang.Object value) {
|
||||
LABEL (L0)
|
||||
LINENUMBER (6)
|
||||
ALOAD (0)
|
||||
ALOAD (1)
|
||||
ALOAD (2)
|
||||
|
||||
@@ -8,6 +8,8 @@ public final class Container$$serializer : java/lang/Object, kotlinx/serializati
|
||||
DUP
|
||||
INVOKESPECIAL (Container$$serializer, <init>, ()V)
|
||||
PUTSTATIC (Container$$serializer, INSTANCE, LContainer$$serializer;)
|
||||
LABEL (L0)
|
||||
LINENUMBER (18)
|
||||
NEW (kotlinx/serialization/internal/PluginGeneratedSerialDescriptor)
|
||||
DUP
|
||||
LDC (Container)
|
||||
@@ -23,6 +25,8 @@ public final class Container$$serializer : java/lang/Object, kotlinx/serializati
|
||||
ALOAD (0)
|
||||
CHECKCAST (kotlinx/serialization/descriptors/SerialDescriptor)
|
||||
PUTSTATIC (Container$$serializer, descriptor, Lkotlinx/serialization/descriptors/SerialDescriptor;)
|
||||
LABEL (L1)
|
||||
LINENUMBER (19)
|
||||
RETURN
|
||||
}
|
||||
|
||||
@@ -36,6 +40,7 @@ public final class Container$$serializer : java/lang/Object, kotlinx/serializati
|
||||
|
||||
public final kotlinx.serialization.KSerializer[] childSerializers() {
|
||||
LABEL (L0)
|
||||
LINENUMBER (18)
|
||||
INVOKESTATIC (Container, access$get$childSerializers$cp, ()[Lkotlinx/serialization/KSerializer;)
|
||||
ASTORE (1)
|
||||
ICONST_1
|
||||
@@ -57,6 +62,8 @@ public final class Container$$serializer : java/lang/Object, kotlinx/serializati
|
||||
ALOAD (1)
|
||||
LDC (decoder)
|
||||
INVOKESTATIC (kotlin/jvm/internal/Intrinsics, checkNotNullParameter, (Ljava/lang/Object;Ljava/lang/String;)V)
|
||||
LABEL (L1)
|
||||
LINENUMBER (18)
|
||||
GETSTATIC (Container$$serializer, descriptor, Lkotlinx/serialization/descriptors/SerialDescriptor;)
|
||||
ASTORE (2)
|
||||
ICONST_1
|
||||
@@ -73,7 +80,40 @@ public final class Container$$serializer : java/lang/Object, kotlinx/serializati
|
||||
ASTORE (8)
|
||||
ALOAD (7)
|
||||
INVOKEINTERFACE (kotlinx/serialization/encoding/CompositeDecoder, decodeSequentially, ()Z)
|
||||
IFEQ (L1)
|
||||
IFEQ (L2)
|
||||
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;)
|
||||
CHECKCAST (Result)
|
||||
ASTORE (6)
|
||||
ILOAD (5)
|
||||
ICONST_1
|
||||
IOR
|
||||
ISTORE (5)
|
||||
GOTO (L3)
|
||||
LABEL (L2)
|
||||
ILOAD (3)
|
||||
IFEQ (L3)
|
||||
ALOAD (7)
|
||||
ALOAD (2)
|
||||
INVOKEINTERFACE (kotlinx/serialization/encoding/CompositeDecoder, decodeElementIndex, (Lkotlinx/serialization/descriptors/SerialDescriptor;)I)
|
||||
ISTORE (4)
|
||||
ILOAD (4)
|
||||
TABLESWITCH
|
||||
-1: L4
|
||||
0: L5
|
||||
default: L6
|
||||
LABEL (L4)
|
||||
ICONST_0
|
||||
ISTORE (3)
|
||||
GOTO (L2)
|
||||
LABEL (L5)
|
||||
ALOAD (7)
|
||||
ALOAD (2)
|
||||
ICONST_0
|
||||
@@ -90,46 +130,13 @@ public final class Container$$serializer : java/lang/Object, kotlinx/serializati
|
||||
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;)
|
||||
CHECKCAST (Result)
|
||||
ASTORE (6)
|
||||
ILOAD (5)
|
||||
ICONST_1
|
||||
IOR
|
||||
ISTORE (5)
|
||||
GOTO (L1)
|
||||
LABEL (L5)
|
||||
LABEL (L6)
|
||||
NEW (kotlinx/serialization/UnknownFieldException)
|
||||
DUP
|
||||
ILOAD (4)
|
||||
INVOKESPECIAL (kotlinx/serialization/UnknownFieldException, <init>, (I)V)
|
||||
ATHROW
|
||||
LABEL (L2)
|
||||
LABEL (L3)
|
||||
ALOAD (7)
|
||||
ALOAD (2)
|
||||
INVOKEINTERFACE (kotlinx/serialization/encoding/CompositeDecoder, endStructure, (Lkotlinx/serialization/descriptors/SerialDescriptor;)V)
|
||||
@@ -140,11 +147,12 @@ public final class Container$$serializer : java/lang/Object, kotlinx/serializati
|
||||
ACONST_NULL
|
||||
INVOKESPECIAL (Container, <init>, (ILResult;Lkotlinx/serialization/internal/SerializationConstructorMarker;)V)
|
||||
ARETURN
|
||||
LABEL (L6)
|
||||
LABEL (L7)
|
||||
}
|
||||
|
||||
public java.lang.Object deserialize(kotlinx.serialization.encoding.Decoder decoder) {
|
||||
LABEL (L0)
|
||||
LINENUMBER (18)
|
||||
ALOAD (0)
|
||||
ALOAD (1)
|
||||
INVOKEVIRTUAL (Container$$serializer, deserialize, (Lkotlinx/serialization/encoding/Decoder;)LContainer;)
|
||||
@@ -180,6 +188,7 @@ public final class Container$Companion : java/lang/Object {
|
||||
|
||||
public final kotlinx.serialization.KSerializer serializer() {
|
||||
LABEL (L0)
|
||||
LINENUMBER (18)
|
||||
GETSTATIC (Container$$serializer, INSTANCE, LContainer$$serializer;)
|
||||
CHECKCAST (kotlinx/serialization/KSerializer)
|
||||
ARETURN
|
||||
@@ -200,6 +209,8 @@ public final class Container : java/lang/Object {
|
||||
ACONST_NULL
|
||||
INVOKESPECIAL (Container$Companion, <init>, (Lkotlin/jvm/internal/DefaultConstructorMarker;)V)
|
||||
PUTSTATIC (Container, Companion, LContainer$Companion;)
|
||||
LABEL (L0)
|
||||
LINENUMBER (18)
|
||||
ICONST_1
|
||||
ANEWARRAY (kotlinx/serialization/KSerializer)
|
||||
ASTORE (0)
|
||||
@@ -297,6 +308,7 @@ public final class Result$Companion : java/lang/Object {
|
||||
|
||||
public final kotlinx.serialization.KSerializer serializer() {
|
||||
LABEL (L0)
|
||||
LINENUMBER (12)
|
||||
ALOAD (0)
|
||||
INVOKESPECIAL (Result$Companion, get$cachedSerializer, ()Lkotlinx/serialization/KSerializer;)
|
||||
ARETURN
|
||||
@@ -357,6 +369,8 @@ public final class Result$OK$$serializer : java/lang/Object, kotlinx/serializati
|
||||
DUP
|
||||
INVOKESPECIAL (Result$OK$$serializer, <init>, ()V)
|
||||
PUTSTATIC (Result$OK$$serializer, INSTANCE, LResult$OK$$serializer;)
|
||||
LABEL (L0)
|
||||
LINENUMBER (14)
|
||||
NEW (kotlinx/serialization/internal/PluginGeneratedSerialDescriptor)
|
||||
DUP
|
||||
LDC (Result.OK)
|
||||
@@ -385,6 +399,7 @@ public final class Result$OK$$serializer : java/lang/Object, kotlinx/serializati
|
||||
|
||||
public final kotlinx.serialization.KSerializer[] childSerializers() {
|
||||
LABEL (L0)
|
||||
LINENUMBER (14)
|
||||
ICONST_1
|
||||
ANEWARRAY (kotlinx/serialization/KSerializer)
|
||||
ASTORE (1)
|
||||
@@ -402,6 +417,8 @@ public final class Result$OK$$serializer : java/lang/Object, kotlinx/serializati
|
||||
ALOAD (1)
|
||||
LDC (decoder)
|
||||
INVOKESTATIC (kotlin/jvm/internal/Intrinsics, checkNotNullParameter, (Ljava/lang/Object;Ljava/lang/String;)V)
|
||||
LABEL (L1)
|
||||
LINENUMBER (14)
|
||||
GETSTATIC (Result$OK$$serializer, descriptor, Lkotlinx/serialization/descriptors/SerialDescriptor;)
|
||||
ASTORE (2)
|
||||
ICONST_1
|
||||
@@ -416,7 +433,34 @@ public final class Result$OK$$serializer : java/lang/Object, kotlinx/serializati
|
||||
ASTORE (7)
|
||||
ALOAD (7)
|
||||
INVOKEINTERFACE (kotlinx/serialization/encoding/CompositeDecoder, decodeSequentially, ()Z)
|
||||
IFEQ (L1)
|
||||
IFEQ (L2)
|
||||
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 (L3)
|
||||
LABEL (L2)
|
||||
ILOAD (3)
|
||||
IFEQ (L3)
|
||||
ALOAD (7)
|
||||
ALOAD (2)
|
||||
INVOKEINTERFACE (kotlinx/serialization/encoding/CompositeDecoder, decodeElementIndex, (Lkotlinx/serialization/descriptors/SerialDescriptor;)I)
|
||||
ISTORE (4)
|
||||
ILOAD (4)
|
||||
TABLESWITCH
|
||||
-1: L4
|
||||
0: L5
|
||||
default: L6
|
||||
LABEL (L4)
|
||||
ICONST_0
|
||||
ISTORE (3)
|
||||
GOTO (L2)
|
||||
LABEL (L5)
|
||||
ALOAD (7)
|
||||
ALOAD (2)
|
||||
ICONST_0
|
||||
@@ -427,40 +471,13 @@ public final class Result$OK$$serializer : java/lang/Object, kotlinx/serializati
|
||||
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)
|
||||
LABEL (L6)
|
||||
NEW (kotlinx/serialization/UnknownFieldException)
|
||||
DUP
|
||||
ILOAD (4)
|
||||
INVOKESPECIAL (kotlinx/serialization/UnknownFieldException, <init>, (I)V)
|
||||
ATHROW
|
||||
LABEL (L2)
|
||||
LABEL (L3)
|
||||
ALOAD (7)
|
||||
ALOAD (2)
|
||||
INVOKEINTERFACE (kotlinx/serialization/encoding/CompositeDecoder, endStructure, (Lkotlinx/serialization/descriptors/SerialDescriptor;)V)
|
||||
@@ -471,11 +488,12 @@ public final class Result$OK$$serializer : java/lang/Object, kotlinx/serializati
|
||||
ACONST_NULL
|
||||
INVOKESPECIAL (Result$OK, <init>, (ILjava/lang/String;Lkotlinx/serialization/internal/SerializationConstructorMarker;)V)
|
||||
ARETURN
|
||||
LABEL (L6)
|
||||
LABEL (L7)
|
||||
}
|
||||
|
||||
public java.lang.Object deserialize(kotlinx.serialization.encoding.Decoder decoder) {
|
||||
LABEL (L0)
|
||||
LINENUMBER (14)
|
||||
ALOAD (0)
|
||||
ALOAD (1)
|
||||
INVOKEVIRTUAL (Result$OK$$serializer, deserialize, (Lkotlinx/serialization/encoding/Decoder;)LResult$OK;)
|
||||
@@ -511,6 +529,7 @@ public final class Result$OK$Companion : java/lang/Object {
|
||||
|
||||
public final kotlinx.serialization.KSerializer serializer() {
|
||||
LABEL (L0)
|
||||
LINENUMBER (14)
|
||||
GETSTATIC (Result$OK$$serializer, INSTANCE, LResult$OK$$serializer;)
|
||||
CHECKCAST (kotlinx/serialization/KSerializer)
|
||||
ARETURN
|
||||
@@ -606,10 +625,14 @@ public abstract class Result : java/lang/Object, X {
|
||||
ACONST_NULL
|
||||
INVOKESPECIAL (Result$Companion, <init>, (Lkotlin/jvm/internal/DefaultConstructorMarker;)V)
|
||||
PUTSTATIC (Result, Companion, LResult$Companion;)
|
||||
LABEL (L0)
|
||||
LINENUMBER (12)
|
||||
GETSTATIC (kotlin/LazyThreadSafetyMode, PUBLICATION, Lkotlin/LazyThreadSafetyMode;)
|
||||
INVOKEDYNAMIC (invoke, ()Lkotlin/jvm/functions/Function0;, java/lang/invoke/LambdaMetafactory.metafactory(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite; (6), ()Ljava/lang/Object;, Result._init_$_anonymous_()Lkotlinx/serialization/KSerializer; (6), ()Lkotlinx/serialization/KSerializer;)
|
||||
INVOKESTATIC (kotlin/LazyKt, lazy, (Lkotlin/LazyThreadSafetyMode;Lkotlin/jvm/functions/Function0;)Lkotlin/Lazy;)
|
||||
PUTSTATIC (Result, $cachedSerializer$delegate, Lkotlin/Lazy;)
|
||||
LABEL (L1)
|
||||
LINENUMBER (16)
|
||||
RETURN
|
||||
}
|
||||
|
||||
@@ -673,6 +696,7 @@ public final class X$Companion : java/lang/Object {
|
||||
|
||||
public final kotlinx.serialization.KSerializer serializer() {
|
||||
LABEL (L0)
|
||||
LINENUMBER (6)
|
||||
NEW (kotlinx/serialization/SealedClassSerializer)
|
||||
DUP
|
||||
LDC (X)
|
||||
|
||||
Vendored
+20
@@ -0,0 +1,20 @@
|
||||
package test
|
||||
|
||||
import kotlinx.parcelize.Parcelize
|
||||
import android.os.Parcelable
|
||||
|
||||
@Parcelize
|
||||
class <!NOTHING_TO_OVERRIDE, NOTHING_TO_OVERRIDE, NO_PARCELABLE_SUPERTYPE!>Without<!>(val firstName: String, val secondName: String, val age: Int)
|
||||
|
||||
@Parcelize
|
||||
class With(val firstName: String, val secondName: String, val age: Int) : Parcelable
|
||||
|
||||
interface MyParcelableIntf : Parcelable
|
||||
|
||||
abstract class MyParcelableCl : Parcelable
|
||||
|
||||
@Parcelize
|
||||
class WithIntfSubtype(val firstName: String, val secondName: String, val age: Int) : MyParcelableIntf
|
||||
|
||||
@Parcelize
|
||||
class WithClSubtype(val firstName: String, val secondName: String, val age: Int) : MyParcelableCl()
|
||||
-1
@@ -1,4 +1,3 @@
|
||||
// FIR_IDENTICAL
|
||||
package test
|
||||
|
||||
import kotlinx.parcelize.Parcelize
|
||||
|
||||
+25
@@ -0,0 +1,25 @@
|
||||
package test
|
||||
|
||||
import kotlinx.parcelize.Parcelize
|
||||
import android.os.Parcelable
|
||||
|
||||
@Parcelize
|
||||
interface <!PARCELABLE_SHOULD_BE_CLASS!>Intf<!> : Parcelable
|
||||
|
||||
@Parcelize
|
||||
object <!NOTHING_TO_OVERRIDE, NOTHING_TO_OVERRIDE, NO_PARCELABLE_SUPERTYPE!>Obj<!>
|
||||
|
||||
class A {
|
||||
@Parcelize
|
||||
companion <!NOTHING_TO_OVERRIDE, NOTHING_TO_OVERRIDE, NO_PARCELABLE_SUPERTYPE!>object<!> {
|
||||
fun foo() {}
|
||||
}
|
||||
}
|
||||
|
||||
@Parcelize
|
||||
enum class <!NOTHING_TO_OVERRIDE, NOTHING_TO_OVERRIDE, NO_PARCELABLE_SUPERTYPE!>Enum<!> {
|
||||
WHITE, BLACK
|
||||
}
|
||||
|
||||
@Parcelize
|
||||
annotation class <!NOTHING_TO_OVERRIDE, NOTHING_TO_OVERRIDE, PARCELABLE_SHOULD_BE_CLASS!>Anno<!>
|
||||
-1
@@ -1,4 +1,3 @@
|
||||
// FIR_IDENTICAL
|
||||
package test
|
||||
|
||||
import kotlinx.parcelize.Parcelize
|
||||
|
||||
Reference in New Issue
Block a user