uhe
05/07/2019, 9:52 AM// Library code
fun <T> parse(json: String, serializer: KSerializer<T>): T {
val list: JsonArray = Json.parse(JsonArraySerializer, json)
val libraryRelevantData = list[0]
// do something with libraryRelevantData
// and return the deserialized payload
return Json.plain.fromJson(serializer, list[1])
}
// User code
@Serializable
data class Payload(val color: String, val sizes: List<Int>)
fun main() {
val json = """[36, {"color": "orange", "sizes": [23, 42, 7]}]"""
println("Payload = ${parse(json, Payload.serializer())}")
}