/*============================================================================= Copyright (c) 2016 Kohei Takahashi Distributed under 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 #ifndef BOOST_NO_CXX11_HDR_TUPLE #include #include #endif #include #include #include #include struct left { template struct apply { typedef L type; }; }; template struct test { typedef typename boost::mpl::transform::type type; }; using namespace boost::fusion; BOOST_MPL_ASSERT((boost::is_same >::type, boost::fusion::vector<> >)); BOOST_MPL_ASSERT((boost::is_same >::type, boost::fusion::list<> >)); BOOST_MPL_ASSERT((boost::is_same >::type, boost::fusion::deque<> >)); BOOST_MPL_ASSERT((boost::is_same >::type, boost::tuples::tuple<> >)); #ifndef BOOST_NO_CXX11_HDR_TUPLE BOOST_MPL_ASSERT((boost::is_same >::type, std::tuple<> >)); #endif