All Downloads are FREE. Search and download functionalities are using the official Maven repository.

ru.astrainteractive.astralibs.string.StringDescSerializer.kt Maven / Gradle / Ivy

There is a newer version: 3.14.1
Show newest version
package ru.astrainteractive.astralibs.string

import kotlinx.serialization.KSerializer
import kotlinx.serialization.descriptors.PrimitiveKind
import kotlinx.serialization.descriptors.PrimitiveSerialDescriptor
import kotlinx.serialization.descriptors.SerialDescriptor
import kotlinx.serialization.encoding.Decoder
import kotlinx.serialization.encoding.Encoder

object StringDescSerializer : KSerializer {
    override val descriptor: SerialDescriptor = PrimitiveSerialDescriptor("StringDesc", PrimitiveKind.STRING)

    override fun serialize(encoder: Encoder, value: StringDesc.Raw) {
        val string = value.raw
        encoder.encodeString(string)
    }

    override fun deserialize(decoder: Decoder): StringDesc.Raw {
        val string = decoder.decodeString()
        return StringDesc.Raw(string)
    }
}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy