BuiltinSerializers

Provides built-in TypeSerializer implementations for Kotlin's standard primitive and string types.

Supported types and their coercion rules:

Target typeAccepted raw typesCoercion notes
StringAnyCalls toString()
IntNumber, StringNumeric narrowing via toInt(); string parsed with toIntOrNull()
LongNumber, StringNumeric widening via toLong(); string parsed with toLongOrNull()
DoubleNumber, StringNumeric widening via toDouble(); string parsed with toDoubleOrNull()
FloatNumber, StringNumeric narrowing via toFloat(); string parsed with toFloatOrNull()
BooleanBoolean, String, NumberStrings must be "true" / "false" (case-insensitive); numbers use != 0

Example:

val registry = SerializerRegistry()
BuiltinSerializers.registerAll(registry)

val intSer = registry.get(Int::class)!!
intSer.deserialize("42") // 42
intSer.deserialize(42L) // 42 (Long → Int coercion)

val boolSer = registry.get(Boolean::class)!!
boolSer.deserialize("true") // true
boolSer.deserialize(1) // true (non-zero → true)

Since

1.0

See also

Types

Link copied to clipboard

Serializer for Boolean values.

Link copied to clipboard

Serializer for Double values.

Link copied to clipboard

Serializer for Float values.

Link copied to clipboard

Serializer for Int values.

Link copied to clipboard

Serializer for Long values.

Link copied to clipboard

Serializer for String values.

Functions

Link copied to clipboard