Skip to content

External generated sealed class serializer returns empty json. #970

Open
@Dominaezzz

Description

@Dominaezzz

Describe the bug
Serializer returns {} when deserializing

To Reproduce
Attach a code snippet or test data if possible.

    @Serializable(AnimalSerializer::class)
    sealed class Animal {
        @Serializable
        data class Dog(val breed: String) : Animal()
        @Serializable
        data class Cat(val color: String) : Animal()
    }

    @Serializer(forClass = Animal::class)
    object AnimalSerializer

    @Test
    fun testReproduce() {
        println(Json.encodeToString(Animal.serializer(), Animal.Dog("German Shephard")))
    }

Expected behavior

{"type":"io.github.matrixkt.EventTypeTests.Animal.Dog","breed":"German Shephard"} instead of {}

Environment

  • Kotlin version: 1.4.0
  • Library version: 1.0.0-RC
  • Kotlin platforms: At least on JVM.
  • Gradle version: 6.3
  • Other relevant context: Arch Linux, JDK 11

Metadata

Metadata

Assignees

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions