jackson-module-kotlin
jackson-module-kotlin copied to clipboard
Module that adds support for serialization/deserialization of Kotlin (http://kotlinlang.org) classes and data classes.
Currently, annotations given to constructor parameters containing `value class` as an argument are ignored. ```kotlin data class Data(@JsonProperty("prop") val ui: UInt = UInt.MAX_VALUE) println(jacksonObjectMapper().writeValueAsString(Data())) // -> {"ui":4294967295} ``` The cause...
The name of the annotation to be introduced are currently under discussion. `JsonKUnbox` is the current first choice. Please refer to the exchange in the comments for restrictions on naming....
There is a discussion in `Kotlin` about `value class` with multiple fields(`MFVC`). https://github.com/Kotlin/KEEP/pull/339 This issue summarizes the `MFVC` support in `jackson-module-kotlin`. Please note that `MFVC` has not yet been formalized...
### Describe the bug This will become a problem after deserialization support for `value class` is realized in the future. The cause is `kotlin-reflect`, which is difficult to fix in...
### Use case On calling `mapper.convertValue(null, String::class.java)`, can we return a nullable type T instead of T through a wrapper? This will enhance type safety in Kotlin. ### Describe the...
When you create a type reference for a generic class with a reified type parameter, this type parameter is still generic, not the inlined type. That prevents deserialization of properties...
### Search before asking - [X] I searched in the [issues](https://github.com/FasterXML/jackson-module-kotlin/issues) and found nothing similar. ### Describe the bug I was serializing an object into xml and the object is...
This change was originally scheduled to take place in 2.16, but later discussions postponed the decision to the 2.17 transition. --- If the work on removing `kotlin-reflect` is reflected in...
As described in [this blog post](https://medium.com/@foxjstephen/how-to-actually-parse-xml-in-java-kotlin-221a9309e6e8) it has been possible to deserialize this: ``` 1056.38 Simple ``` ... into a collaped list like this: ``` data class LedgerActivityDetail( @set:JsonProperty("TransactionType") var...
### Use case Currently, if the `strictNullChecks` option is enabled, the deserialization performance of collections is significantly degraded. It also reduces the performance of all deserialization, although very slightly. The...