eygraber
02/19/2021, 1:33 AMfun persist(foo: ???) {
Json.encodeToString(foo)
}
edenman
02/19/2021, 1:44 AMjw
02/19/2021, 2:01 AMedenman
02/19/2021, 2:14 AMedenman
02/19/2021, 2:14 AMeygraber
02/19/2021, 2:33 AMKClass.serializer
is marked as InternalSerializationApi
. Is there any other way to get a KSerializer?eygraber
02/19/2021, 2:34 AMedenman
02/19/2021, 2:45 AMFoo.serializer()
is probably your best betjw
02/19/2021, 3:16 AMfun <T> persist(foo: T, serializer: KSerializer<T>) { .. }
eygraber
02/19/2021, 3:17 AMinterface RenderStateSerializer {
fun <D> serialize(data: D, serializer: KSerializer<D>): ByteArray?
fun <D> deserialize(data: ByteArray, deserializer: KSerializer<D>): D
}
edenman
02/19/2021, 3:19 AMInternalSerializationApi
then there’s nothing to prevent this from happening:
data class Foo(val bar: String)
fun taco() {
val foo = Foo("foo")
persist(foo, Foo:class.serializer())
}
edenman
02/19/2021, 3:20 AMjw
02/19/2021, 3:24 AMBinaryFormat
eygraber
02/19/2021, 3:32 AMBinaryFormat
I would need a `serializersModule`which I don't believe I need for my use case