Ayfri
03/11/2023, 10:43 PM"type": "kotlin.collections.ArrayList
even with a custom serializer :
object PredicateConditionsSerializer : KSerializer<List<Predicate>> by ListSerializer(Predicate.Companion.Predicate) {
override fun serialize(encoder: Encoder, value: List<Predicate>) {
require(encoder is JsonEncoder) { "Predicate can only be serialized with Json" }
val element = buildJsonArray {
value.forEach { condition ->
add(Json.encodeToJsonElement(Predicate.Companion.Predicate, condition))
}
}
encoder.encodeJsonElement(element)
}
}
Even when element
is replaced with a simple array of one string : buildJsonArray { add("test") }
I get this :
[
"type": "kotlin.collections.ArrayList",
"test"
]
Ben Woodworth
03/13/2023, 4:34 AM