johnaqel
08/11/2021, 1:32 AMephemient
08/11/2021, 1:45 AMephemient
08/11/2021, 1:48 AMephemient
08/11/2021, 1:52 AMobject LocalDateSerializer : KSerializer<LocalDate> {
override val descriptor: SerialDescriptor =
PrimitiveSerialDescriptor("LocalDateSerializer", PrimitiveKind.STRING)
override fun serialize(encoder: Encoder, value: LocalDate) {
encoder.encodeString(DateTimeFormatter.ISO_DATE.format(value))
}
override fun deserialize(decoder: Decoder): LocalDate =
LocalDate.parse(decoder.decodeString())
}
etc. pretty easily, and @file:UseSerializaers(LocalDateSerializer::class, ...)
at the top of files where you define your serializable data types that use java.time.*
ephemient
08/11/2021, 1:54 AMjohnaqel
08/11/2021, 2:06 AM