mpl::vectorからfusion::vectorへの変換
BoostML - Fusion container from MPL typelist?
boost::fusion::result_of::as_vectorを使います。
#include <boost/static_assert.hpp> #include <boost/type_traits.hpp> #include <boost/mpl/vector.hpp> #include <boost/fusion/container/vector.hpp> #include <boost/fusion/adapted/mpl.hpp> using namespace boost; int main() { typedef mpl::vector<int, char, double> mlist; typedef fusion::vector<int, char, double> flist; typedef fusion::result_of::as_vector<mlist>::type result; BOOST_STATIC_ASSERT((is_same<result, flist>::value)); }
たまにメタメタしないとすぐ鈍っちゃいますね。