EntitySchema

abstract class EntitySchema(name: String, version: Int = 0, serializer: KSerializer<Entity<*>>? = null, readSafety: <Error class: unknown class> = DynoReadSafety.SYNCHRONIZED) : AbstractDynoSchema<Entity<*>>

Constructors

Link copied to clipboard
constructor(name: String, version: Int = 0, serializer: KSerializer<Entity<*>>? = null, readSafety: <Error class: unknown class> = DynoReadSafety.SYNCHRONIZED)

Functions

Link copied to clipboard

Returns a new DynoSchema that includes all properties from both the original schema and the other schema. If there are conflicting property names between the two schemas, an exception is thrown.

Link copied to clipboard
override fun deserialize(decoder: Decoder): Entity<*>
Link copied to clipboard
inline fun <S2 : AbstractDynoSchema<M>, M> dynoKey(schema: S2): SchemaPropertySpec<M>
inline fun <S2 : EntitySchema> dynoKey(schema: S2): SchemaPropertySpec<Entity<S2>>

inline fun <T> dynoKey(name: String? = null, serializer: KSerializer<T & Any> = kotlinx.serialization.serializer<T>().unsafeCast()): SchemaPropertySpec<T>

Creates a SchemaPropertySpec for type T with an optional name.

Link copied to clipboard
open override fun getKey(serializersModule: SerializersModule, name: String): <Error class: unknown class><out <Error class: unknown class>>?

Retrieves a DynoKey instance corresponding to the given key name within the specified SerializersModule, or null if not found.

Link copied to clipboard
open override fun keyCount(): Int

Number of keys registered in this schema

Link copied to clipboard
open override fun keys(): Collection<<Error class: unknown class><out <Error class: unknown class>>>
Link copied to clipboard
override fun name(): String
Link copied to clipboard
override fun serialize(encoder: Encoder, value: Entity<*>)
Link copied to clipboard
fun <S : EntitySchema> serializer(): KSerializer<Entity<S>>
Link copied to clipboard
override fun version(): Int