Re: Conversion policies

David Abrahams <[email protected]>
Newsgroups gmane.comp.lib.boost.langbinding
Message-ID <[email protected]>
Daniel Wallin <[email protected]> writes:

> At 14:51 2003-08-05, David Abrahams wrote:
>>Daniel Wallin <[email protected]> writes:
>>
>> > I've checked in a basic framework for conversion policies, like the
>> > one we have in luabind.
>> >
>> >    boost/langbinding/policy.hpp
>>
>>Q1: Why use a handbuilt cons-list in lieu of mpl::list?
>
> Because I want to overload operator+ to compose the list. Also I want to
> be able to have data in the policies.

Oh, sounds like a tuple.

>>Q2: Conversion policies may carry data in them; it seems to me that
>>     you need a runtime identification mechanism.  How about CRTP?
>
> Elaborate, where does CRTP apply here?

Never mind; I misinterpreted your code.  I think it's finally dawning
on me what it's intended to do... but a realistic usage example would
be a huge help.

>>     What is the purpose of the "N" argument in find_conversion_policy
>>     anyway?  I guess some comments would be illustrative.
>
> It's the parameter index. The idea is that the caller does something like:
>
> typedef typename find_conversion_policy<1, Policies>::type policy1;
> typename polic1::template generate_converter<T1, xxx_to_cpp>::type c1;

Too many "parameters" running around.  I only just now figured out
that you meant the index of a _parameter of the wrapped function_
you're talking about (right?).

Anyway, I'm not sure whether I agree with your implementation, though
I agree with the spirit of it.  I'll have a much better idea when you
show some more concrete examples.

BTW, why do you have xxx_to_cpp and cpp_to_xxx tags?  Surely
conversion for each parameter is only going in one direction?
-- 
Dave Abrahams
Boost Consulting
www.boost-consulting.com



-------------------------------------------------------
This SF.Net email sponsored by: Free pre-built ASP.NET sites including
Data Reports, E-commerce, Portals, and Forums are available now.
Download today and enter to win an XBOX or Visual Studio .NET.
http://aspnet.click-url.com/go/psa00100003ave/direct;at.aspnet_072303_01/01
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.