Open amirabiri opened 2 years ago
Yamlkt's polymorphism was not being tested, as stated in README that yamlkt does not support polymorohism. The current behavior may be some kind of fallback strategy implemented by kotlunx.serialization for custom formats that does not support polymorphism well. Note that ProtoBuf also uses this format ('type' with proto number 1, 'value' with proto number 2).
The library appears to be adding a redundant
value:
to members of a polymorphic collection.This code:
Produces the following result:
This does not appear to be inline with
kotlinx.serialization
documentation: https://github.com/Kotlin/kotlinx.serialization/blob/master/docs/polymorphism.md#sealed-classesIf using
Json
the result is as expected: