
Oh, I got it... Sorry again for bothering. paranthesized_type is a type and the construct paranthesized_type (SomeParam) is the function type which expects a function, which returns paranthesized_type and receives SomeParam as input parameter. Steven this is a great idea! Many thanks! This solution will defenetely help me solving my problem! Ovanes On Jan 29, 2008 10:24 AM, Ovanes Markarian <om_boost@keywallet.com> wrote:
Steven,
one additional question. In the second solution
paranthesized_type is a function type, which is passed to the temple? If so, then I need to declare somewhere an overload. Isn't it so?
Thanks, Ovanes
There are a couple of ways to do it. You can make each element of the
Seq to be itself a seq and then call BOOST_PP_SEQ_ENUM on the inside:
((X1)) ((X2)) ((some_other_template<T1)(T2>))
Another way is to use template metaprogramming
(X1)(X2)(parenthesize_type(wrap<some_other_template<T1, T2>>))
template<class T> struct unparenthesize { typedef T type; };
template<class T> struct unparenthesize<parenthesized_type(wrap<T>)> { typedef T type; };
In Christ, Steven Watanabe
_______________________________________________ Boost-users mailing list Boost-users@lists.boost.org http://lists.boost.org/mailman/listinfo.cgi/boost-users