bind

fun <S, W : Component> W.bind(stateFlow: StateFlow<S>, removeChildren: Boolean = true, runImmediately: Boolean = true, factory: W.(S) -> Unit): W(source)

An extension function which binds the widget to the given state flow.

Parameters

S

the state type

W

the widget type

stateFlow

the StateFlow instance

removeChildren

remove all children of the component

runImmediately

whether to run factory function immediately with the current state

factory

a function which re-creates the view based on the given state


fun <S, T, W : Component> W.bind(stateFlow: StateFlow<S>, sub: (S) -> T, removeChildren: Boolean = true, runImmediately: Boolean = true, factory: W.(T) -> Unit): W(source)

An extension function which binds the widget to the given state flow using the sub flow extractor.

Parameters

S

the state type

T

the sub state type

W

the widget type

stateFlow

the StateFlow instance

sub

an extractor function for sub flow

removeChildren

remove all children of the component

runImmediately

whether to run factory function immediately with the current state

factory

a function which re-creates the view based on the given state