нет, только один блок можно использовать.
если есть такая потребность, то я бы сделал что-то типа такого:
interface Callback {
infix fun then(op: () -> Callback)
}
object noop : Callback {
override infix fun then(op: () -> Callback) {
// keep silence
}
}
fun asd(a: Any, s: Any, op: () -> Callback): Callback {
// todo
return op()
}
fun dsa(d: Any, f: Any): Callback {
// todo
return object : Callback {
override infix fun then(op: () -> Callback) {
// todo
op()
}
}
}
fun test() {
asd(1, 2) {
dsa(3, 4)
} then {
noop
}
}