Preferences
-
Cmn
abstract class Preferences
MutablePreferences |
Mutable version of |
Preferences and MutablePreferences are a lot like a generic Map and MutableMap keyed by the Preferences.Key class. These are intended for use with DataStore. Construct a DataStore<Preferences> instance using PreferenceDataStoreFactory.create
.
Summary
Nested types |
|
---|---|
class Preferences.Key<T : Any?> Key for values stored in Preferences. |
|
class Preferences.Pair<T : Any?> Key Value pairs for Preferences. |
Public functions |
||
---|---|---|
abstract Map<Preferences.Key<*>, Any> |
asMap() Retrieve a map of all key preference pairs. |
Cmn
|
abstract operator Boolean |
<T : Any?> contains(key: Preferences.Key<T>) Returns true if this Preferences contains the specified key. |
Cmn
|
abstract operator T? |
<T : Any?> get(key: Preferences.Key<T>) Get a preference with a key. |
Cmn
|
MutablePreferences |
Gets a mutable copy of Preferences which contains all the preferences in this Preferences. |
Cmn
|
Preferences |
Gets a read-only copy of Preferences which contains all the preferences in this Preferences. |
Cmn
|
Public functions
asMap
abstract fun asMap(): Map<Preferences.Key<*>, Any>
Retrieve a map of all key preference pairs. The returned map is unmodifiable, and attempts to mutate it will throw runtime exceptions.
Returns | |
---|---|
Map<Preferences.Key<*>, Any> |
a map containing all the preferences in this Preferences |
contains
abstract operator fun <T : Any?> contains(key: Preferences.Key<T>): Boolean
Returns true if this Preferences contains the specified key.
Parameters | |
---|---|
key: Preferences.Key<T> |
the key to check for |
get
abstract operator fun <T : Any?> get(key: Preferences.Key<T>): T?
Get a preference with a key. If the key is not set, returns null.
If T is Set<String>, this returns an unmodifiable set which will throw a runtime exception when mutated. Do not try to mutate the returned set.
Use MutablePreferences.set
to change the value of a preference (inside a DataStore<Preferences>.edit
block).
Parameters | |
---|---|
<T : Any?> |
the type of the preference |
key: Preferences.Key<T> |
the key for the preference |
Throws | |
---|---|
kotlin.ClassCastException |
if there is something stored with the same name as |
toMutablePreferences
fun toMutablePreferences(): MutablePreferences
Gets a mutable copy of Preferences which contains all the preferences in this Preferences. This can be used to update your preferences without building a new Preferences object from scratch in DataStore.updateData
.
This is similar to Map.toMutableMap
.
Returns | |
---|---|
MutablePreferences |
a MutablePreferences with all the preferences from this Preferences |
toPreferences
fun toPreferences(): Preferences
Gets a read-only copy of Preferences which contains all the preferences in this Preferences.
This is similar to Map.toMap
.
Returns | |
---|---|
Preferences |
a copy of this Preferences |