[kxSerialization] Added diagnostic on useless Serializer annotation

Resolves Kotlin/kotlinx.serialization#2182

Merge-request: KT-MR-8718
Merged-by: Sergey Shanshin <Sergey.Shanshin@jetbrains.com>
This commit is contained in:
Sergey.Shanshin
2023-02-14 22:00:33 +00:00
committed by Space Team
parent 3124154aef
commit c9b8160f1e
10 changed files with 93 additions and 4 deletions
@@ -4,8 +4,26 @@
// FILE: test.kt
import kotlinx.serialization.*
import kotlinx.serialization.descriptors.*
import kotlinx.serialization.encoding.*
class Foo(i: Int, val j: Int)
<!EXTERNAL_CLASS_NOT_SERIALIZABLE!>@Serializer(forClass = Foo::class)<!>
object ExternalSerializer
<!EXTERNAL_SERIALIZER_USELESS!>@Serializer(forClass = Foo::class)<!>
object UselessExternalSerializer : KSerializer<Foo> {
override val descriptor: SerialDescriptor
get() {
TODO()
}
override fun serialize(encoder: Encoder, value: Foo) {
TODO()
}
override fun deserialize(decoder: Decoder): Foo {
TODO()
}
}