1

Given the following Kotlin enum:

@kotlinx.serialization.Serializable
enum class MyEnum {
    @SerialName("One") ONE,
    @SerialName("Two") TWO,
    @SerialName("Three") THREE
}

I can call the following generated function:

MyEnum.serialize()

Sometimes I need to pipe this through an kotlinx.serialization.builtins.ArraySerializer:

ArraySerializer(MyEnum.serializer())

Which could be wrapped in an extension function:

inline fun <reified T : Any> KSerializer<T>.asArray(): KSerializer<Array<T>> {
    return ArraySerializer(this)
}

as used like this:

MyEnum.serialize().asArray()

How can I write a generic extension function to do ...?

MyEnum.serializeAsArray()
JJD
  • 50,076
  • 60
  • 203
  • 339

0 Answers0