Igor Kolomiets
07/20/2022, 2:58 PMencodeU...
/ decodeU...
methods for unsigned types, so generic encodeSerializable…
/ decodeSerializable…
methods that require explicit serializer for the value have to be used when dealing with unsigned values?Igor Kolomiets
07/20/2022, 3:56 PMoverride fun <T> decodeSerializableElement(
descriptor: SerialDescriptor,
index: Int,
deserializer: DeserializationStrategy<T>,
previousValue: T?,
): T = when (descriptor.getElementDescriptor(index).serialName) {
"kotlin.UShort" -> parser.parseUINT16().toUShort() as T
"kotlin.UInt" -> parser.parseUINT32().toUInt() as T
"kotlin.ULong" -> parser.parseUINT64().toULong() as T
else -> super.decodeSerializableElement(descriptor, index, deserializer, previousValue)
}