kotlin
suspend fun performAsyncTask(): Int {
return suspendCoroutine { continuation ->
someAsyncOperation { result ->
continuation.resume(result)
}
}
}
kotlin
interface Module {
fun onModuleInit()
}
class MyModule : Module {
override fun onModuleInit() {
}
}
fun main() {
val module = MyModule()
module.onModuleInit()
}
kotlin
val sourceFlow: Flow<Int> = (1..10).asFlow()
val doubledFlow: Flow<Int> = sourceFlow.map { it * 2 }
val sum: Int = doubledFlow.reduce { accumulator, value ->
accumulator + value
}
sum.collect { value ->
println(value)
}