@@ -77,15 +77,15 @@ internal class KotlinSerializers : Serializers.Base() {
77
77
// The getter generated for the value class is special,
78
78
// so this class will not work properly when added to the Serializers
79
79
// (it is configured from KotlinAnnotationIntrospector.findSerializer).
80
- internal class ValueClassBoxSerializer (
81
- outerClazz : KClass < Any >, innerClazz : Class <* >
82
- ) : StdSerializer<Any>(outerClazz.java ) {
83
- private val boxMethod = _handledType .getMethod(" box-impl" , innerClazz)
80
+ internal class ValueClassBoxSerializer < T : Any > (
81
+ private val outerClazz : Class < out Any >, innerClazz : Class <T >
82
+ ) : StdSerializer<T>(innerClazz ) {
83
+ private val boxMethod = outerClazz .getMethod(" box-impl" , innerClazz)
84
84
85
- override fun serialize (value : Any ? , gen : JsonGenerator , provider : SerializerProvider ) {
85
+ override fun serialize (value : T ? , gen : JsonGenerator , provider : SerializerProvider ) {
86
86
// Values retrieved from getter are considered validated and constructor-impl is not executed.
87
87
val boxed = boxMethod.invoke(null , value)
88
88
89
- provider.findValueSerializer(_handledType ).serialize(boxed, gen, provider)
89
+ provider.findValueSerializer(outerClazz ).serialize(boxed, gen, provider)
90
90
}
91
91
}
0 commit comments