// Copyright David Abrahams, Daniel Wallin 2003. // 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) #ifndef BOOST_PARAMETER_AUX_PACK_AS_PARAMETER_REQUIREMENTS_HPP #define BOOST_PARAMETER_AUX_PACK_AS_PARAMETER_REQUIREMENTS_HPP #include #include #include #include namespace boost { namespace parameter { namespace aux { // Converts a ParameterSpec into a specialization of // parameter_requirements. We need to do this in order to get the // tag_type into the type in a way that can be conveniently matched // by a satisfies(...) member function in arg_list. template struct as_parameter_requirements { typedef ::boost::parameter::aux::parameter_requirements< typename ::boost::parameter::aux::tag_type::type , typename ::boost::parameter::aux::predicate::type , ::boost::parameter::aux::has_default > type; }; }}} // namespace boost::parameter::aux #endif // include guard