File indexing completed on 2025-01-18 09:43:29
0001
0002
0003
0004
0005
0006 #ifndef BOOST_PARAMETER_AUX_IS_PLACEHOLDER_HPP
0007 #define BOOST_PARAMETER_AUX_IS_PLACEHOLDER_HPP
0008
0009 #include <boost/parameter/config.hpp>
0010
0011 #if defined(BOOST_PARAMETER_CAN_USE_MP11)
0012 #include <boost/mp11/integral.hpp>
0013 #else
0014 #include <boost/mpl/bool.hpp>
0015 #endif
0016
0017 namespace boost { namespace parameter { namespace aux {
0018
0019 template <typename T>
0020 struct is_mpl_placeholder
0021 #if defined(BOOST_PARAMETER_CAN_USE_MP11)
0022 : ::boost::mp11::mp_false
0023 #else
0024 : ::boost::mpl::false_
0025 #endif
0026 {
0027 };
0028 }}}
0029
0030 #include <boost/mpl/arg_fwd.hpp>
0031
0032 namespace boost { namespace parameter { namespace aux {
0033
0034 template <int I>
0035 struct is_mpl_placeholder< ::boost::mpl::arg<I> >
0036 #if defined(BOOST_PARAMETER_CAN_USE_MP11)
0037 : ::boost::mp11::mp_true
0038 #else
0039 : ::boost::mpl::true_
0040 #endif
0041 {
0042 };
0043 }}}
0044
0045 #if defined(BOOST_PARAMETER_CAN_USE_MP11)
0046 #include <boost/mp11/bind.hpp>
0047
0048 namespace boost { namespace parameter { namespace aux {
0049
0050 template <typename T>
0051 struct is_mp11_placeholder : ::boost::mp11::mp_false
0052 {
0053 };
0054
0055 template < ::std::size_t I>
0056 struct is_mp11_placeholder< ::boost::mp11::mp_arg<I> >
0057 : ::boost::mp11::mp_true
0058 {
0059 };
0060 }}}
0061
0062 #endif
0063 #endif
0064