dmcg
11/18/2023, 3:34 PMdata class Root(val places: List<Place>)
data class Place(val displayName: DisplayName)
data class DisplayName(val text: String)
I can use
object JRoot : JAny<Root>() {
val places by array(JPlace, Root::places)
override fun JsonNodeObject.deserializeOrThrow() = Root(+places)
}
object JPlace : JAny<Place>() {
val displayName by obj(JDisplayName, Place::displayName)
override fun JsonNodeObject.deserializeOrThrow() = Place(displayName = +displayName)
}
object JDisplayName : JAny<DisplayName>() {
val text: JsonProperty<String> by str(DisplayName::text)
override fun JsonNodeObject.deserializeOrThrow() = DisplayName(+text)
}