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

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

Type Parameters

S

the state type

W

the widget type


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

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

Type Parameters

S

the state type

T

the sub state type

W

the widget type