Coverage Summary for Class: TimerKt (dev.suresh.flow)
Class |
Method, %
|
Branch, %
|
Line, %
|
Instruction, %
|
TimerKt |
0%
(0/2)
|
|
0%
(0/2)
|
0%
(0/20)
|
TimerKt$timerComposeFlow$1 |
0%
(0/1)
|
|
0%
(0/3)
|
0%
(0/33)
|
Total |
0%
(0/3)
|
|
0%
(0/5)
|
0%
(0/53)
|
package dev.suresh.flow
import kotlinx.coroutines.delay
import kotlinx.coroutines.flow.flow
import kotlinx.datetime.Clock
import kotlinx.datetime.TimeZone
import kotlinx.datetime.toLocalDateTime
// import androidx.compose.runtime.*
// import app.cash.molecule.RecompositionMode
// import app.cash.molecule.moleculeFlow
//
// @Composable
// fun timer(tz: TimeZone): LocalDateTime {
// var time by remember { mutableStateOf(currentTime(tz)) }
// LaunchedEffect(Unit) {
// while (true) {
// delay(1000)
// time = currentTime(tz)
// }
// }
// return time
// }
//
// fun timerComposeFlow(tz: TimeZone = TimeZone.currentSystemDefault()) =
// moleculeFlow(RecompositionMode.Immediate) { timer(tz) }
private fun currentTime(tz: TimeZone) = Clock.System.now().toLocalDateTime(tz)
fun timerComposeFlow(tz: TimeZone = TimeZone.currentSystemDefault()) = flow {
while (true) {
delay(1000)
emit(currentTime(tz))
}
}