Sebastian,<br><br>preprocessor can not do parsing of C++ tokens for you, so it can not strip template paramters. You approach should be reversed:<br><br>SOME_MAGIC_DEF_MACRO(myVec, type_seq) should take a boost preprocessor sequence and genrate a template class instantiation and your pod type.<br>
<br>Macro input would be:<br><br>SOME_MAGIC_DEF_MACRO(myVec, ((int)(char)(double)(size_t)(whatever_type)))<br><br>This macro expansion should result in:<br>fusion::vector&lt;int,char,double,size_t,whatever_type&gt; myVec;<br>
and<br>struct myVec_pod<br>{<br>&nbsp; int v1;<br>&nbsp; double v2;<br>&nbsp; ...<br>};<br><br>BOOST_PP_SEQ_FOR_EACH or BOOST_PP_SEQ_FOLD_LEFT are your friends.<br><br>With Kind Regards,<br>Ovanes<br><br><div class="gmail_quote">On Fri, Apr 4, 2008 at 1:34 PM, Sebastian Weber &lt;<a href="mailto:sebastian.weber@physik.tu-darmstadt.de">sebastian.weber@physik.tu-darmstadt.de</a>&gt; wrote:<br>
<blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">Hi there!<br>
<br>
The fusion library seems to be the choice for handling tuple-like data<br>
in C++. However, for some reasons I would like to be able to transform a<br>
fusion vector into a pod object. Something like:<br>
<br>
fusion::vector&lt;int, double, float&gt; myVec;<br>
<br>
SOME_MAGIC_ADAPTER_MACRO(myVec)<br>
<br>
The macro or whatever should then turn the vector into<br>
<br>
struct myVec_pod {<br>
int v1;<br>
double v2;<br>
float v3;<br>
};<br>
<br>
or similar. Is this possible?<br>
<br>
Greetings,<br>
<br>
Sebastian Weber<br>
<br>
_______________________________________________<br>
Boost-users mailing list<br>
<a href="mailto:Boost-users@lists.boost.org">Boost-users@lists.boost.org</a><br>
<a href="http://lists.boost.org/mailman/listinfo.cgi/boost-users" target="_blank">http://lists.boost.org/mailman/listinfo.cgi/boost-users</a><br>
</blockquote></div><br>