NullableSerializedField

class NullableSerializedField<T, V : Any>(val name: String, val keyName: String, val meta: SettingMeta?, getter: (T) -> V?, setter: (T, V?) -> T, serializer: KSerializer<V>, json: Json = SerializedField.DefaultJson) : SettingField<T, V?>

Constructors

Link copied to clipboard
constructor(name: String, keyName: String, meta: SettingMeta?, getter: (T) -> V?, setter: (T, V?) -> T, serializer: KSerializer<V>, json: Json = SerializedField.DefaultJson)

Types

Link copied to clipboard
object Companion

Properties

Link copied to clipboard
open override val keyName: String

DataStore key name

Link copied to clipboard
open override val meta: SettingMeta?

UI metadata (null for @Persisted-only fields)

Link copied to clipboard
open override val name: String

Property name in the data class

Functions

Link copied to clipboard
open override fun get(model: T): V?

Get value from model

Link copied to clipboard
open override fun read(prefs: Preferences): V?

Read from preferences

Link copied to clipboard
open override fun set(model: T, value: V?): T

Set value in model (returns new model)

Link copied to clipboard
open override fun write(prefs: MutablePreferences, value: V?)

Write to preferences