Compare commits
5 Commits
adcab00d6f
...
b6afcd99ec
Author | SHA1 | Date |
---|---|---|
renovate[bot] | b6afcd99ec | |
renovate[bot] | 76f2aae18b | |
InsanusMokrassar | f90d8d03d9 | |
InsanusMokrassar | 36671cb379 | |
InsanusMokrassar | 68be768763 |
|
@ -1,5 +1,9 @@
|
|||
# Changelog
|
||||
|
||||
## 2.3.0
|
||||
|
||||
* `doWhile` now will guarantee that it will not call `doOnce` more than once for time
|
||||
|
||||
## 2.2.9
|
||||
|
||||
* `Version`:
|
||||
|
|
|
@ -23,7 +23,7 @@ github_release_plugin_version=2.5.2
|
|||
|
||||
## Android
|
||||
|
||||
android_gradle_version=8.1.4
|
||||
android_gradle_version=8.4.0
|
||||
android_minSdkVersion=21
|
||||
android_compileSdkVersion=34
|
||||
android_buildToolsVersion=34.0.0
|
||||
|
@ -36,5 +36,5 @@ androidx_work_version=2.9.0
|
|||
|
||||
## Common
|
||||
|
||||
version=2.2.9
|
||||
android_code_version=39
|
||||
version=2.3.0
|
||||
android_code_version=40
|
||||
|
|
|
@ -71,9 +71,18 @@ suspend inline fun <T> doOnceTz(
|
|||
* Will execute [block] while it will return true as a result of its calculation
|
||||
*/
|
||||
suspend inline fun KronScheduler.doWhile(block: (DateTime) -> Boolean) {
|
||||
var latest: DateTime? = null
|
||||
do {
|
||||
delay(1L)
|
||||
} while (doOnce(block))
|
||||
val result = doOnce {
|
||||
if (latest != it) {
|
||||
latest = it
|
||||
block(it)
|
||||
} else {
|
||||
null
|
||||
}
|
||||
}
|
||||
} while (result == null || result)
|
||||
}
|
||||
/**
|
||||
* Will execute [block] while it will return true as a result of its calculation
|
||||
|
@ -85,9 +94,18 @@ suspend inline fun KronScheduler.doWhileLocal(block: (DateTime) -> Boolean) = do
|
|||
* Will execute [block] while it will return true as a result of its calculation
|
||||
*/
|
||||
suspend inline fun KronScheduler.doWhileTz(noinline block: suspend (DateTimeTz) -> Boolean) {
|
||||
var latest: DateTimeTz? = null
|
||||
do {
|
||||
delay(1L)
|
||||
} while (doOnceTz(block))
|
||||
val result = doOnceTz {
|
||||
if (latest != it) {
|
||||
latest = it
|
||||
block(it)
|
||||
} else {
|
||||
null
|
||||
}
|
||||
}
|
||||
} while (result == null || result)
|
||||
}
|
||||
|
||||
/**
|
||||
|
|
Loading…
Reference in New Issue