yoavst
03/09/2016, 3:38 PMval <V,E> Promise<Promise<V, E>, E>.unwraped: Promise<V, E>
get() {
if (isDone()) when {
isSuccess() -> return get().withContext(context)
isFailure() -> return Promise.ofFail(getError(), context)
}
val deferred = deferred<V, E>(context)
success {
nested ->
nested success { deferred resolve it }
nested fail { deferred reject it }
} fail {
deferred reject it
}
return deferred.promise
}
Now it works @mplatvoet
task { task { 42 } }.unwraped then {
}