Jean

Jean-Philippe Barette-LaPierre wrote:
> 
> 
> On Fri, Nov 14, 2008 at 4:12 PM, Piotr Dobrogost <[EMAIL PROTECTED] 
> <mailto:[EMAIL PROTECTED]>> wrote:
> 
>     Jean
> 
>     Using Easy::setOpt is not as convenient as it should be.
> 
>     Now we have
> 
>     std::string address = "http://example.com";
>     // Setting the URL to retrive.
>     request.setOpt(new cURLpp::Options::Url(address));
> 
>     Could we do better?
> 
>     std::string url = "http://example.com";
>     // Setting the URL to retrive.
>     request.set<url>(address);
> 
> 
> Well... No... The thing is setOpt wouldn't be able to distinguish 
> between different "string" options (Url, Proxy, Interface, etc). However:

I know you use this scheme to be able to make this distinction. The point is 
that passing an option type as template's argument to set<typename T> gives the 
same information like passing an option type as a type of the argument of 
function.
The question is what does wrapping arguments of setOpt in the Options::X type 
give us? Later on it's convenient to have all options' types be derived from 
one base class (OptionBase) to treat them polymorphically in containers and 
alghorithms . But in the moment of setting an option using setOpt we don't 
really need this and we shouldn't force users to wrap all these values only to 
give them to setOpt method.
What do you think?

Regards
Piotr Dobrogost
_______________________________________________
cURLpp mailing list
cURLpp@rrette.com
http://www.rrette.com/mailman/listinfo/curlpp

Reply via email to