1 // Copyright David Abrahams 2003.
2 // Distributed under the Boost Software License, Version 1.0. (See
3 // accompanying file LICENSE_1_0.txt or copy at
4 // http://www.boost.org/LICENSE_1_0.txt)
5 #ifndef VALUE_IS_XXX_DWA2003224_HPP
6 # define VALUE_IS_XXX_DWA2003224_HPP
8 # include <boost/config.hpp>
9 # include <boost/mpl/bool.hpp>
10 # include <boost/preprocessor/enum_params.hpp>
13 # include <boost/type_traits/remove_reference.hpp>
14 # include <boost/type_traits/remove_cv.hpp>
15 # include <boost/python/detail/is_xxx.hpp>
17 # define BOOST_PYTHON_VALUE_IS_XXX_DEF(name, qualified_name, nargs) \
19 struct value_is_##name \
21 BOOST_PYTHON_IS_XXX_DEF(name,qualified_name,nargs) \
22 BOOST_STATIC_CONSTANT(bool, value = is_##name< \
24 typename remove_reference<X_>::type \
27 typedef mpl::bool_<value> type; \
32 #endif // VALUE_IS_XXX_DWA2003224_HPP