// This file was automatically generated from polymorphism.md by Knit tool. Do not edit. package example.examplePoly10 import kotlinx.serialization.* import kotlinx.serialization.json.* import kotlinx.serialization.modules.* val module = SerializersModule { polymorphic(Project::class) { subclass(OwnedProject::class) } } val format = Json { serializersModule = module } interface Project { val name: String } @Serializable @SerialName("owned") class OwnedProject(override val name: String, val owner: String) : Project fun main() { val data: Project = OwnedProject("kotlinx.coroutines", "kotlin") println(format.encodeToString(data)) }