Package-level declarations

Types

Link copied to clipboard
typealias Decoder<T> = String.() -> T
Link copied to clipboard
typealias Encoder<T> = T.() -> String
Link copied to clipboard
data class Encoders<T>(val encoders: List<Encoder<T>>, val decoders: List<Decoder<T>>)

Functions

Link copied to clipboard
inline fun <T> Json.decoders(serializer: KSerializer<T>): List<Decoder<T>>
Link copied to clipboard
inline fun <T> Json.encoders(serializer: KSerializer<T>): List<Encoder<T>>
Link copied to clipboard
inline fun <T> Json.generateEncoders(serializer: KSerializer<T>): Encoders<T>
Link copied to clipboard
inline fun <T> generateSerializerTests(serializer: KSerializer<T>, generator: Gen<T>, crossinline nameFn: () -> String = { "Encodes and decodes values back to original form" }, crossinline assertion: T.(T) -> Unit = { original -> this shouldBe original }): TestFactory