[ 
https://issues.apache.org/jira/browse/MESOS-4221?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Michael Park updated MESOS-4221:
--------------------------------
         Sprint: Mesosphere Sprint 25
         Labels: mesosphere  (was: )
    Description: 
As of VS 2015 Update 1, MSVC implements C++11 semantics for {{std::function}}'s 
{{Callable}} constructor which does not SFINAE. In the short term, we call the 
implicit conversion operator from {{_Deferred}} to {{std::function}} explicitly.

Going forward, I propose to make {{_Deferred}} callable which will bring us to 
a state where {{process::defer}} is similar to {{std::bind}} in that the 
objects returned from them are "implementation-defined" (i.e., {{_Deferred}} 
and something like {{_Bind}}), and that they were both callable. {{Deferred}} 
and {{std::function}} are similar in that they perform type-erasure.

> Invoke _Deferred's implicit conversion operator explicitly.
> -----------------------------------------------------------
>
>                 Key: MESOS-4221
>                 URL: https://issues.apache.org/jira/browse/MESOS-4221
>             Project: Mesos
>          Issue Type: Task
>            Reporter: Michael Park
>              Labels: mesosphere
>
> As of VS 2015 Update 1, MSVC implements C++11 semantics for 
> {{std::function}}'s {{Callable}} constructor which does not SFINAE. In the 
> short term, we call the implicit conversion operator from {{_Deferred}} to 
> {{std::function}} explicitly.
> Going forward, I propose to make {{_Deferred}} callable which will bring us 
> to a state where {{process::defer}} is similar to {{std::bind}} in that the 
> objects returned from them are "implementation-defined" (i.e., {{_Deferred}} 
> and something like {{_Bind}}), and that they were both callable. {{Deferred}} 
> and {{std::function}} are similar in that they perform type-erasure.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to