[ 
https://issues.apache.org/jira/browse/MESOS-1057?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13921512#comment-13921512
 ] 

Jie Yu commented on MESOS-1057:
-------------------------------

As far as I know, we rely on implicitly conversion a lot in our code base. For 
example:

Future<int> future = 42;
Option<int> option = 42;
Try<Nothing> t = Nothing();

So it would be nice if you can list the changes you wanna make here.


> libprocess: Add explicit to single argument constructors
> --------------------------------------------------------
>
>                 Key: MESOS-1057
>                 URL: https://issues.apache.org/jira/browse/MESOS-1057
>             Project: Mesos
>          Issue Type: Improvement
>          Components: libprocess
>            Reporter: Bernd Mathiske
>            Assignee: Bernd Mathiske
>            Priority: Minor
>              Labels: newbie, style
>   Original Estimate: 2h
>  Remaining Estimate: 2h
>
> Exactly like MESOS-1055, just splitting out the task for lib process into a 
> separate issue.
> From the google style guide:
> Normally, if a constructor takes one argument, it can be used as a 
> conversion. For instance, if you define Foo::Foo(string name) and then pass a 
> string to a function that expects a Foo, the constructor will be called to 
> convert the string into a Foo and will pass the Foo to your function for you. 
> This can be convenient but is also a source of trouble when things get 
> converted and new objects created without you meaning them to. Declaring a 
> constructor explicit prevents it from being invoked implicitly as a 
> conversion.
> Implicit conversions should be the exception to avoid unwanted and unexpected 
> behaviour.



--
This message was sent by Atlassian JIRA
(v6.2#6252)

Reply via email to