11package io.github.projectmapk.jackson.module.kogera
22
3+ import kotlinx.metadata.ClassKind
34import kotlinx.metadata.ClassName
45import kotlinx.metadata.ExperimentalContextReceivers
56import kotlinx.metadata.Flags
@@ -18,14 +19,14 @@ import kotlinx.metadata.KmTypeParameterVisitor
1819import kotlinx.metadata.KmTypeVisitor
1920import kotlinx.metadata.KmVariance
2021import kotlinx.metadata.KmVersionRequirementVisitor
21- import kotlinx.metadata.flagsOf
2222import kotlinx.metadata.internal.accept
2323import kotlinx.metadata.internal.metadata.jvm.deserialization.JvmProtoBufUtil
2424import kotlinx.metadata.jvm.getterSignature
2525import kotlinx.metadata.jvm.signature
2626import java.lang.reflect.Constructor
2727import java.lang.reflect.Field
2828import java.lang.reflect.Method
29+ import kotlinx.metadata.internal.metadata.deserialization.Flags as ProtoFlags
2930
3031// KmClassVisitor with all processing disabled as much as possible to reduce load
3132internal sealed class ReducedKmClassVisitor : KmClassVisitor () {
@@ -95,7 +96,7 @@ internal sealed interface JmClass {
9596 }
9697 }
9798
98- val flags : Flags
99+ val kind : ClassKind
99100 val constructors: List <KmConstructor >
100101 val sealedSubclasses: List <ClassName >
101102 val inlineClassUnderlyingType: KmType ?
@@ -120,7 +121,7 @@ private class JmClassImpl(
120121 override val properties: List <KmProperty >
121122
122123 private var companionPropName: String? = null
123- override var flags : Flags = flagsOf()
124+ override lateinit var kind : ClassKind
124125 override val constructors: MutableList <KmConstructor > = mutableListOf ()
125126 override val sealedSubclasses: MutableList <ClassName > = mutableListOf ()
126127 override var inlineClassUnderlyingType: KmType ? = null
@@ -181,7 +182,7 @@ private class JmClassImpl(
181182
182183 // KmClassVisitor
183184 override fun visit (flags : Flags , name : ClassName ) {
184- this .flags = flags
185+ kind = ClassKind .values()[ ProtoFlags . CLASS_KIND .get( flags).number]
185186 }
186187
187188 override fun visitProperty (flags : Flags , name : String , getterFlags : Flags , setterFlags : Flags ): KmPropertyVisitor =
0 commit comments