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
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,
OvanesThere 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