/*============================================================================= Copyright (c) 2015 Kohei Takahashi Use modification and distribution are subject to the Boost Software License, Version 1.0. (See accompanying file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt). ==============================================================================*/ #include #include #include #include #include #include #include #include #include #if !defined(BOOST_NO_CXX11_VARIADIC_TEMPLATES) #include #endif template void test(FUSION_SEQUENCE const& seq) { typedef typename boost::fusion::result_of::convert< Tag , FUSION_SEQUENCE >::type type; type v = boost::fusion::convert(seq); BOOST_TEST((boost::fusion::at_c<0>(v) == 123)); BOOST_TEST((boost::fusion::at_c<1>(v) == "Hola!!!")); } int main() { FUSION_SEQUENCE seq(123, "Hola!!!"); test(seq); test(seq); test(seq); test(seq); #if !defined(BOOST_NO_CXX11_VARIADIC_TEMPLATES) test(seq); #endif return boost::report_errors(); }