Cbor

Implements encoding and decoding classes to/from bytes using CBOR specification. It is typically used by constructing an application-specific instance, with configured behaviour, and, if necessary, registered custom serializers (in SerializersModule provided by serializersModule constructor parameter).

Known caveats and limitations:

Supports reading collections of both definite and indefinite lengths; however, serialization always writes maps and lists as indefinite-length ones. Does not support optional tags representing datetime, bignums, etc. Fully support CBOR maps, which, unlike JSON ones, may contain keys of non-primitive types, and may produce such maps from corresponding Kotlin objects. However, other 3rd-party parsers (e.g. jackson-dataformat-cbor) may not accept such maps.

Parameters

encodeDefaults

specifies whether default values of Kotlin properties are encoded. False by default; meaning that properties with values equal to defaults will be elided.

ignoreUnknownKeys

specifies if unknown CBOR elements should be ignored (skipped) when decoding.

Inheritors

Types

Link copied to clipboard
object Default : Cbor

The default instance of Cbor

Properties

Link copied to clipboard

Functions

Link copied to clipboard
open override fun <T> decodeFromByteArray(deserializer: DeserializationStrategy<T>, bytes: ByteArray): T
Link copied to clipboard
open override fun <T> encodeToByteArray(serializer: SerializationStrategy<T>, value: T): ByteArray