mesos-reviews mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Benjamin Hindman" <b...@berkeley.edu>
Subject Re: Review Request 34943: Added validation to flags.
Date Thu, 18 Jun 2015 12:24:00 GMT


> On June 15, 2015, 10:17 a.m., Bernd Mathiske wrote:
> > 3rdparty/libprocess/3rdparty/stout/include/stout/flags/flags.hpp, line 146
> > <https://reviews.apache.org/r/34943/diff/4/?file=984516#file984516line146>
> >
> >     Could we use some more concrete typing like this here?
> >     
> >     std::function<Option<Error>(Option<T>)>&& validate
> >     
> >     Similar types could then also be used in all other places where "F&&"
appears below.

I can't use a well defined type here because the compiler can't deduce the 'T' inside Option<T>
all by itself when using lambdas, instead the compiler needs the caller to explicitly specify
the parameter type, which unfortunately makes all the call sites extremely more verbose (e.g.,
'add<std::string>(&name, "name", "Description.", "default");').

I'm going to do another pass here and add documentation during which I'll clearly capture
the expected type of F.


> On June 15, 2015, 10:17 a.m., Bernd Mathiske wrote:
> > 3rdparty/libprocess/3rdparty/stout/include/stout/flags/flags.hpp, line 293
> > <https://reviews.apache.org/r/34943/diff/4/?file=984516#file984516line293>
> >
> >     What if T1 is Path? Then fetch() only parses. BTW: what does this mean then?
This does not seem to be explained in fetch.hpp or anywhere else.

I updated the comment here. And yes, we need more documentation around 'fetch' and 'parse'
too. On it's way!


> On June 15, 2015, 10:17 a.m., Bernd Mathiske wrote:
> > 3rdparty/libprocess/3rdparty/stout/include/stout/flags/flags.hpp, line 286
> > <https://reviews.apache.org/r/34943/diff/4/?file=984516#file984516line286>
> >
> >     I wonder if we need this comment at all.  What it says seems rather obvious.
You cannot assign a function value that does not match the given signature.
> >     
> >     It seems that this comment is a remnant, because a less trivial variant of it
follows further down below.

I cleaned this up, see my coments to Niklas below.


- Benjamin


-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/34943/#review87907
-----------------------------------------------------------


On June 15, 2015, 5:52 p.m., Benjamin Hindman wrote:
> 
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> https://reviews.apache.org/r/34943/
> -----------------------------------------------------------
> 
> (Updated June 15, 2015, 5:52 p.m.)
> 
> 
> Review request for mesos and Niklas Nielsen.
> 
> 
> Repository: mesos
> 
> 
> Description
> -------
> 
> Also refactored existing 'lambda::bind' arguments to use C++11 lambdas, enabling us to
get rid of our "loader" and "stringifier" functors.
> 
> 
> Diffs
> -----
> 
>   3rdparty/libprocess/3rdparty/stout/include/Makefile.am 6ac2f04a6a1d8db1725972a3b4b46a0dd734566f

>   3rdparty/libprocess/3rdparty/stout/include/stout/flags/flag.hpp 87606d860dea3235ec70d127d3379065d42dc90b

>   3rdparty/libprocess/3rdparty/stout/include/stout/flags/flags.hpp ee855da6128c2d671eb2fc7eaa2c0aab2341aebb

>   3rdparty/libprocess/3rdparty/stout/include/stout/flags/loader.hpp 51d3ab020bd2bae1f12b66cac0da5383c813d5d7

>   3rdparty/libprocess/3rdparty/stout/include/stout/flags/stringifier.hpp fda5ae1328a23a4371475652f921341dce7448d5

>   3rdparty/libprocess/3rdparty/stout/tests/flags_tests.cpp 80450185f60c5b273face490e0bb9e695b0cb984

> 
> Diff: https://reviews.apache.org/r/34943/diff/
> 
> 
> Testing
> -------
> 
> make check
> 
> 
> Thanks,
> 
> Benjamin Hindman
> 
>


Mime
  • Unnamed multipart/alternative (inline, None, 0 bytes)
View raw message