interface StatePublisher
Component for State publishing
publishState - implementation used by setState getState - get current state
abstract fun getState(): UIState |
|
abstract suspend fun publishState(state: UIState, pushStateUpdate: Boolean = true): Unit |
|
open suspend fun setState(state: UIState): Unitopen suspend fun setState(state: () -> UIState): Unit |
fun <T : UIState> StatePublisher.getStateOrNull(): T?
Get state for type T or return null |
|
fun <T : UIState, R : Any> StatePublisher.letOnState(code: (T) -> R): R?
Let execute block on given state T if not null, return a Result R |
|
fun <T : UIState> StatePublisher.onState(code: (T) -> Unit): Unit
Let execute block on given state T if not null |
interface DataPublisher : StatePublisher, EventPublisher
Component that handle State & Event |