<lambda>null1*57b5a4a6SAndroid Build Coastguard Worker// This file was automatically generated from json.md by Knit tool. Do not edit. 2*57b5a4a6SAndroid Build Coastguard Worker package example.exampleJson25 3*57b5a4a6SAndroid Build Coastguard Worker 4*57b5a4a6SAndroid Build Coastguard Worker import kotlinx.serialization.* 5*57b5a4a6SAndroid Build Coastguard Worker import kotlinx.serialization.json.* 6*57b5a4a6SAndroid Build Coastguard Worker 7*57b5a4a6SAndroid Build Coastguard Worker @Serializable 8*57b5a4a6SAndroid Build Coastguard Worker class Project(val name: String, val language: String) 9*57b5a4a6SAndroid Build Coastguard Worker 10*57b5a4a6SAndroid Build Coastguard Worker object ProjectSerializer : JsonTransformingSerializer<Project>(Project.serializer()) { 11*57b5a4a6SAndroid Build Coastguard Worker override fun transformSerialize(element: JsonElement): JsonElement = 12*57b5a4a6SAndroid Build Coastguard Worker // Filter out top-level key value pair with the key "language" and the value "Kotlin" 13*57b5a4a6SAndroid Build Coastguard Worker JsonObject(element.jsonObject.filterNot { 14*57b5a4a6SAndroid Build Coastguard Worker (k, v) -> k == "language" && v.jsonPrimitive.content == "Kotlin" 15*57b5a4a6SAndroid Build Coastguard Worker }) 16*57b5a4a6SAndroid Build Coastguard Worker } 17*57b5a4a6SAndroid Build Coastguard Worker mainnull18*57b5a4a6SAndroid Build Coastguard Workerfun main() { 19*57b5a4a6SAndroid Build Coastguard Worker val data = Project("kotlinx.serialization", "Kotlin") 20*57b5a4a6SAndroid Build Coastguard Worker println(Json.encodeToString(data)) // using plugin-generated serializer 21*57b5a4a6SAndroid Build Coastguard Worker println(Json.encodeToString(ProjectSerializer, data)) // using custom serializer 22*57b5a4a6SAndroid Build Coastguard Worker } 23