Răsfoiți Sursa

Fix serial formats

Him188 5 ani în urmă
părinte
comite
e423b927a2

+ 1 - 2
mirai-core-qqandroid/src/commonMain/kotlin/net/mamoe/mirai/qqandroid/utils/io/serialization/ProtoBufWithNullableSupport.kt

@@ -58,8 +58,7 @@ internal class ProtoBufWithNullableSupport(override val serializersModule: Seria
 
         @Suppress("OverridingDeprecatedMember")
         override fun beginStructure(
-            descriptor: SerialDescriptor,
-            vararg typeSerializers: KSerializer<*>
+            descriptor: SerialDescriptor
         ): CompositeEncoder = when (descriptor.kind) {
             StructureKind.LIST -> RepeatedWriter(encoder, currentTag)
             StructureKind.CLASS, StructureKind.OBJECT, is PolymorphicKind -> ObjectWriter(currentTagOrNull, encoder)

+ 7 - 6
mirai-core-qqandroid/src/commonMain/kotlin/net/mamoe/mirai/qqandroid/utils/io/serialization/tars/internal/TarsDecoder.kt

@@ -44,9 +44,10 @@ internal class TarsDecoder(
 
     }
 
-    private val SimpleByteArrayReader: SimpleByteArrayReaderImpl = SimpleByteArrayReaderImpl()
+    private val SimpleByteArrayReader: SimpleByteArrayReaderImpl = SimpleByteArrayReaderImpl(serializersModule)
 
-    private inner class SimpleByteArrayReaderImpl : AbstractDecoder() {
+    private inner class SimpleByteArrayReaderImpl(override val serializersModule: SerializersModule) :
+        AbstractDecoder() {
         override fun decodeSequentially(): Boolean = true
 
         override fun endStructure(descriptor: SerialDescriptor) {
@@ -79,9 +80,9 @@ internal class TarsDecoder(
         }
     }
 
-    private val ListReader: ListReaderImpl = ListReaderImpl()
+    private val ListReader: ListReaderImpl = ListReaderImpl(serializersModule)
 
-    private inner class ListReaderImpl : AbstractDecoder() {
+    private inner class ListReaderImpl(override val serializersModule: SerializersModule) : AbstractDecoder() {
         override fun decodeSequentially(): Boolean = true
         override fun decodeElementIndex(descriptor: SerialDescriptor): Int = error("should not be reached")
         override fun endStructure(descriptor: SerialDescriptor) {
@@ -113,9 +114,9 @@ internal class TarsDecoder(
     }
 
 
-    private val MapReader: MapReaderImpl = MapReaderImpl()
+    private val MapReader: MapReaderImpl = MapReaderImpl(serializersModule)
 
-    private inner class MapReaderImpl : AbstractDecoder() {
+    private inner class MapReaderImpl(override val serializersModule: SerializersModule) : AbstractDecoder() {
         override fun decodeSequentially(): Boolean = true
         override fun decodeElementIndex(descriptor: SerialDescriptor): Int = error("stub")