updateProperty

open suspend override fun <T> updateProperty(property: Property<T>)(source)

Updates an existing property in the store.

This operation is semantically different from adding a property and should only be used when modifying an existing property.

Parameters

property

the property with updated values


open suspend override fun <T> updateProperty(name: String, transform: (Property<T>) -> Property<T>)(source)

Atomically updates a property using a transformation function.

This method ensures that the read-modify-write cycle is atomic, preventing race conditions when multiple coroutines update the same property.

Parameters

name

the name of the property to update

transform

the function to apply to the current property value

Throws

if the property does not exist