collectFlow

protected fun <T> collectFlow(source: () -> Flow<T>, reducer: State.(T) -> State)(source)

Collects a Flow inside the ViewModel scope.

Each emission is reduced into state.

Example

collectFlow(
source = { repository.observeItems() }
) { items ->
copy(items = items)
}