Boost logo

Boost :

Subject: Re: [boost] [contract] syntax redesign
From: lcaminiti (lorcaminiti_at_[hidden])
Date: 2011-05-31 18:35:24


Matt Calabrese wrote:
>
> On Tue, May 31, 2011 at 5:59 PM, lcaminiti <lorcaminiti_at_[hidden]>
> wrote:
>>
>> Boost.Local's BOOST_IDENTITY_TYPE can be used to handle un-parenthesized
>> commas within macro parameters (see
>> http://svn.boost.org/svn/boost/sandbox/local/boost/utility/identity.hpp).
>>
>
> Ah, so for a user to specify a return type of array< int, 2 >, they'd do:
>
> (BOOST_IDENTITY_TYPE((array&lt;int,2&gt;)))(function_name)(params)
> cv-qualifiers?
>

Yes, including trailing cv-qualifiers, throw(...), etc and for my lib
including precondition(...), postcondition(...).

> That's great. You seem to be putting a lot of effort into supporting
> compilers both with and without variadics.
>

Yes, I'd prefer the lib to be ISO C++ compliant.

> The only problem I can think of is that the IDENTITY_TYPE kind of trick
> doesn't work for function parameters where the template argument is to be
> automatically deduced.
>

For example? (Just so I understand this case correctly.)

Thanks,
--Lorenzo

--
View this message in context: http://boost.2283326.n4.nabble.com/contract-syntax-redesign-tp3563993p3564542.html
Sent from the Boost - Dev mailing list archive at Nabble.com.

Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk