Package-level declarations

Types

Link copied to clipboard
interface BinarySerializer<T : Any>

A serializer for T to a binary format.

Link copied to clipboard

A factory for creating BinarySerializer instances based on a given KType.

Link copied to clipboard

A BinarySerializer for an unversioned format of T, supporting nulls. Every value is prefixed with an unsigned byte, where 0 indicates a null value and 1 indicates a non-null value.

Link copied to clipboard
abstract class VersionedBinarySerializer<T : Any>(currentVersion: UByte) : BinarySerializer<T>

A BinarySerializer for a versioned format of T, supporting nulls. Every value is prefixed with an unsigned byte, where 0 indicates a null value and any other value indicates a non-null value in a specific version. A VersionedBinarySerializer can only write data in the current version, but can also read data serialized in previous versions.

Functions

Link copied to clipboard
fun <T : Any> BinarySerializer<T>.read(bytes: ByteArray, strict: Boolean = true): T?

Reads a value of type T from bytes.

Link copied to clipboard

Writes the given obj of type T to a ByteArray.