NullableEnumField

class NullableEnumField<T, E : Enum<E>>(val name: String, val keyName: String, val meta: SettingMeta?, getter: (T) -> E?, setter: (T, E?) -> T, enumValues: Array<E>) : SettingField<T, E?>

Constructors

Link copied to clipboard
constructor(name: String, keyName: String, meta: SettingMeta?, getter: (T) -> E?, setter: (T, E?) -> T, enumValues: Array<E>)

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): E?

Get value from model

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

Read from preferences

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

Set value in model (returns new model)

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

Write to preferences