Luis Munoz
04/28/2020, 7:17 AMprotected suspend fun stdout(message: String, emit: suspend (WfResult) -> Unit) {
emit(WfResult.Stdout(message))
}
protected suspend fun stderr(message: String, emit: suspend (WfResult) -> Unit) {
emit(WfResult.Stderr(message))
}
open fun main() : Flow<Any> = flow {
stdout("someString" , ::emit)
}
How do I make my own flow so I can use it like this (or how do I extend flow to add more methods):
open fun main() : Flow<Any> = myFlow {
stdout("someString")
stderr("someString")
}
araqnid
04/28/2020, 10:57 AMmolikuner
04/28/2020, 12:23 PMsuspend fun FlowCollector<WfResult>.stderr(message: String) {
stderr(message, ::emit)
}
suspend fun FlowCollector<WfResult>.stdout(message: String) {
stdout(message, ::emit)
}
Luis Munoz
04/28/2020, 4:16 PM