mirror of
https://github.com/InsanusMokrassar/MicroUtils.git
synced 2025-10-05 15:19:27 +00:00
upgrade MapperSerializer
This commit is contained in:
@@ -16,11 +16,16 @@ import kotlinx.serialization.encoding.Encoder
|
||||
*/
|
||||
open class MapperDeserializationStrategy<I, O>(
|
||||
private val base: DeserializationStrategy<I>,
|
||||
private val deserialize: (I) -> O
|
||||
private val deserialize: (Decoder, I) -> O
|
||||
) : DeserializationStrategy<O> {
|
||||
override val descriptor: SerialDescriptor = base.descriptor
|
||||
|
||||
constructor(
|
||||
base: DeserializationStrategy<I>,
|
||||
deserialize: (I) -> O
|
||||
) : this(base, { _, i -> deserialize(i) })
|
||||
|
||||
override fun deserialize(decoder: Decoder): O {
|
||||
return deserialize(base.deserialize(decoder))
|
||||
return deserialize(decoder, base.deserialize(decoder))
|
||||
}
|
||||
}
|
||||
|
Reference in New Issue
Block a user