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