Open chriskohlhoff opened 6 years ago
@LeeHowes @brycelelbach I can make this change.
Go ahead.
A couple of problems:
via()
returns the second half of the promise contract pair directly, how is an executor supposed to implement the promise_contract_t
return type with a future token rather than a full-fledged executor_future_t
?promise_contract_t
to be constexpr constructible? If not, we should remove static_query_v
from the definition of the properties.Is this fixed?
Mostly. static_query_v
is still there for cancellable_promise_contract
. The part in the SemiFuture
requirements table also still needs to be fixed. I'll put in a pull request later this week.
promise_contract_t<T>::static_query_v<E> == true
is invalid since promise_contract_t doesn't supportstatic_query_v
(i.e. a compile-time constant expression query). Was it supposed to becan_query_v<E, promise_contract_t<T>>
?