From: Dean M. B. <mik...@gm...> - 2010-06-23 04:29:13
|
On Wed, Jun 23, 2010 at 5:26 AM, Glyn Matthews <gly...@gm...> wrote: > Hi Dean, > > On 22 June 2010 12:06, Dean Michael Berris <mik...@gm...> wrote: >> >> Hi Guys, >> >> I've been working on something that allows for better tag composition >> in cpp-netlib. The idea is to actually now use template >> metaprogramming provided by Boost.MPL to differentiate whether tags >> denote certain properties. This should make tag specialization easier: >> >> struct foo : async, http {}; >> >> We can the query whether: >> >> is_async<foo>::value // either boolean constant true or false >> is_async<foo>::type // either mpl::true_ or mpl::false_ >> >> This makes overloading the policy dispatcher metafunction >> significantly easier to extend. >> >> Thoughts? Comments? > > This would be very useful. I haven't been able to test it yet, but what is > the impact on compilation times? > In Debug mode, the symbols take time to write out. Other than that the compile times on MSVC 2010 in Windows 7 are still long, marginally longer than the last release when building the tests. The use of the MPL is only in select areas, hopefully it doesn't make compile times completely unbearable on Linux with GCC. Looking forward to your comments and experiences -- BTW, the http client tests are still broken on 0.7-devel because I pushed in the middle of fleshing out the asynchronous HTTP client implementation. I'll see whether I can finish that within the week, given that I've just recently had time to dedicate for that now. ;) -- Dean Michael Berris deanberris.com |