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