File indexing completed on 2025-01-18 09:43:27
0001
0002
0003
0004
0005
0006 #ifndef BOOST_PARAMETER_AUX_PACK_UNMATCHED_ARGUMENT_HPP
0007 #define BOOST_PARAMETER_AUX_PACK_UNMATCHED_ARGUMENT_HPP
0008
0009 #include <boost/parameter/config.hpp>
0010
0011 #if defined(BOOST_PARAMETER_CAN_USE_MP11)
0012 #include <type_traits>
0013 #else
0014 #include <boost/mpl/bool.hpp>
0015 #include <boost/mpl/if.hpp>
0016 #include <boost/mpl/assert.hpp>
0017 #include <boost/type_traits/is_same.hpp>
0018 #endif
0019
0020 namespace boost { namespace parameter { namespace aux {
0021
0022 template <typename T>
0023 struct unmatched_argument
0024 {
0025 #if defined(BOOST_PARAMETER_CAN_USE_MP11)
0026 static_assert(::std::is_same<T,void>::value, "T == void");
0027 #else
0028 BOOST_MPL_ASSERT((
0029 typename ::boost::mpl::if_<
0030 ::boost::is_same<T,void>
0031 , ::boost::mpl::true_
0032 , ::boost::mpl::false_
0033 >::type
0034 ));
0035 #endif
0036 typedef int type;
0037 };
0038 }}}
0039
0040 #endif
0041