Open jakwuh opened 8 years ago
@tj your short answer would be highly relevant.
return yield browser
is not possible to detect. Because JS interpretation will be like:
return (yield browser)
or the same
let result = yield browser;
return result;
@DeShadow you've misunderstood me. I was talking about returning thenable
object without trying to resolve it.
@jakwuh I understand. I try to say that it's not possible. Because co
can't know is construction return val
or return yield val
.
You can write return { browser }
, but co* also check all properties of returned object and wait to Promise.all() of them.
I don't know, how to help you :(
@DeShadow I got you. Seems like this is the only possible solution for now. Thank you for the response.
I wonder why
co
yields return value by default. This is an example:In the case when
browser
object hasthen
method,co
tries to resolve it, but I (obviously in this case) do not want such a behaviour. I know thatco
simply passes return value to Promise resolve callback, but implementation can be changed if needed.Basically, I want to decide on my own if I need the returned value to be resolved as a promise. This could be achieved with such a syntax:
Will be very thankful for any feedback on this issue.