summaryrefslogtreecommitdiff
path: root/formats/cbor
diff options
context:
space:
mode:
authorVsevolod Tolstopyatov <qwwdfsad@gmail.com>2020-07-08 18:07:58 +0300
committerVsevolod Tolstopyatov <qwwdfsad@gmail.com>2020-07-12 12:50:57 -0700
commite772f37367c252e59ab08b0b4c7613f0d8053d9d (patch)
treed14c63e8882412717cbb688a6637db71b5720aa0 /formats/cbor
parent5a991a6d6e768e678eefba159796aef0a4a8b396 (diff)
downloadkotlinx.serialization-e772f37367c252e59ab08b0b4c7613f0d8053d9d.tar.gz
[API stabilization] Encoder and Decoder
* Deprecate potentially dangerous extensions * Rename context to serializersModule to align with modules rework * Remove decode/encodeUnit * Rename READ_DONE to DECODE_DONE
Diffstat (limited to 'formats/cbor')
-rw-r--r--formats/cbor/commonMain/src/kotlinx/serialization/cbor/Cbor.kt15
1 files changed, 8 insertions, 7 deletions
diff --git a/formats/cbor/commonMain/src/kotlinx/serialization/cbor/Cbor.kt b/formats/cbor/commonMain/src/kotlinx/serialization/cbor/Cbor.kt
index ccb0c1c3..291919e0 100644
--- a/formats/cbor/commonMain/src/kotlinx/serialization/cbor/Cbor.kt
+++ b/formats/cbor/commonMain/src/kotlinx/serialization/cbor/Cbor.kt
@@ -5,7 +5,8 @@
package kotlinx.serialization.cbor
import kotlinx.serialization.*
-import kotlinx.serialization.CompositeDecoder.Companion.READ_DONE
+import kotlinx.serialization.CompositeDecoder.Companion.DECODE_DONE
+import kotlinx.serialization.builtins.*
import kotlinx.serialization.cbor.internal.ByteArrayInput
import kotlinx.serialization.cbor.internal.ByteArrayOutput
import kotlinx.serialization.encoding.*
@@ -45,7 +46,7 @@ public class Cbor(
// Writes class as map [fieldName, fieldValue]
private open inner class CborWriter(val encoder: CborEncoder) : AbstractEncoder() {
- override val context: SerialModule
+ override val serializersModule: SerialModule
get() = this@Cbor.context
override fun shouldEncodeElementDefault(descriptor: SerialDescriptor, index: Int): Boolean = encodeDefaults
@@ -169,7 +170,7 @@ public class Cbor(
override fun skipBeginToken() = setSize(decoder.startArray())
- override fun decodeElementIndex(descriptor: SerialDescriptor) = if (!finiteMode && decoder.isEnd() || (finiteMode && ind >= size)) READ_DONE else ind++
+ override fun decodeElementIndex(descriptor: SerialDescriptor) = if (!finiteMode && decoder.isEnd() || (finiteMode && ind >= size)) DECODE_DONE else ind++
}
private open inner class CborReader(val decoder: CborDecoder) : AbstractDecoder() {
@@ -187,7 +188,7 @@ public class Cbor(
}
}
- override val context: SerialModule
+ override val serializersModule: SerialModule
get() = this@Cbor.context
protected open fun skipBeginToken() = setSize(decoder.startMap())
@@ -207,7 +208,7 @@ public class Cbor(
}
override fun decodeElementIndex(descriptor: SerialDescriptor): Int {
- if (!finiteMode && decoder.isEnd() || (finiteMode && readProperties >= size)) return READ_DONE
+ if (!finiteMode && decoder.isEnd() || (finiteMode && readProperties >= size)) return DECODE_DONE
val elemName = decoder.nextString()
readProperties++
return descriptor.getElementIndexOrThrow(elemName)
@@ -396,13 +397,13 @@ public class Cbor(
override fun <T> encodeToByteArray(serializer: SerializationStrategy<T>, value: T): ByteArray {
val output = ByteArrayOutput()
val dumper = CborWriter(CborEncoder(output))
- dumper.encode(serializer, value)
+ dumper.encodeSerializableValue(serializer, value)
return output.toByteArray()
}
override fun <T> decodeFromByteArray(deserializer: DeserializationStrategy<T>, bytes: ByteArray): T {
val stream = ByteArrayInput(bytes)
val reader = CborReader(CborDecoder(stream))
- return reader.decode(deserializer)
+ return reader.decodeSerializableValue(deserializer)
}
}