JsonSupport
Utility object for JSON serialization and deserialization support with configurable strategies.
The primary goals of this object include:
Providing a default configured instance of
Jsonwith common settings suitable for most use cases.Registering value encoders for handling serialization and deserialization of given types.
Supporting
@SerializableKotlin classes for JSON transformation through theValueEncoderinterface.
The default JSON configuration includes:
Snake-case naming strategy for property names.
Ignoring unknown keys during deserialization.
Encoding default values, omitting explicit nulls while encoding.
Functions:
encoders: Creates aValueEncoderRegistryby generating encoders for a set of classes.encoders: Generates encoders for a specific class and its optional sealed subclasses.encoder: Constructs a singleValueEncoderfor serialization and deserialization of a specific class.
Functions
Generates and registers encoders for a set of types, including their sealed subclasses, with a given JSON serializer.
Generates encoders for a given class and its optional subclasses using the specified JSON configuration.