Add Deferred.joinAll helper

This commit is contained in:
sergeych committed 2026-04-09 11:27:32 +03:00
1 parent 402b8bb1b3
commit c9eb3df93d
2 files changed
+29

No files matched your search

+10
View File
@@ -29,6 +29,16 @@ extern class Deferred {
val isCancelled: Bool
}
/* Await every task in order and return collected results. */
fun Iterable<Deferred>.joinAll(): List<Object> {
var results: List<Object> = List()
for( task in this ) {
val deferred = task as Deferred
results += deferred.await()
}
results
}
/* A deferred result that can be completed manually. */
extern class CompletableDeferred : Deferred {
fun complete(value: Object): void