// Copyright Frank Mori Hess 2009. // 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 namespace parameter = boost::parameter; namespace test { namespace keywords { BOOST_PARAMETER_TEMPLATE_KEYWORD(function_type) } // namespace keywords template class X { typedef parameter::parameters< parameter::required > parameter_spec; public: // ArgumentPack typedef typename parameter_spec::bind::type args; typedef typename parameter::binding::type type; }; template class Y { public: typedef T type; }; BOOST_MPL_ASSERT((boost::is_same >::type, Y::type>)); } // namespace test