ribesg
06/24/2022, 4:04 PMclass Generic<T : Any>(
private val clazz: KClass<out T>,
) {
init {
require(clazz.hasAnnotation<Serializable>())
}
fun serialize(value: T): String {
val type = clazz.createType()
val serializer = Json.serializersModule.serializer(type)
return Json.encodeToString(serializer, value)
}
}
ephemient
06/25/2022, 2:07 AMclass Generic<T : Any>(
private val clazz: KClass<T>,
private val serializer: KSerializer<T>,
)