1 // Copyright Daniel Wallin 2006. 2 // Distributed under the Boost Software License, Version 1.0. 3 // (See accompanying file LICENSE_1_0.txt or copy at 4 // http://www.boost.org/LICENSE_1_0.txt) 5 6 #ifndef BOOST_PARAMETER_AUX_PREPROCESSOR_IS_NULLARY_HPP 7 #define BOOST_PARAMETER_AUX_PREPROCESSOR_IS_NULLARY_HPP 8 9 #include <boost/config.hpp> 10 #include <boost/config/workaround.hpp> 11 12 #if BOOST_WORKAROUND(BOOST_BORLANDC, BOOST_TESTED_AT(0x564)) 13 // From Paul Mensonides 14 #include <boost/preprocessor/punctuation/comma.hpp> 15 #include <boost/preprocessor/detail/split.hpp> 16 #define BOOST_PARAMETER_IS_NULLARY(x) \ 17 BOOST_PP_SPLIT(1, BOOST_PARAMETER_IS_NULLARY_C x BOOST_PP_COMMA() 0) 18 /**/ 19 #include <boost/preprocessor/punctuation/paren.hpp> 20 #include <boost/preprocessor/tuple/eat.hpp> 21 #define BOOST_PARAMETER_IS_NULLARY_C() \ 22 ~, 1 BOOST_PP_RPAREN() \ 23 BOOST_PP_TUPLE_EAT(2) BOOST_PP_LPAREN() ~ 24 /**/ 25 #else 26 #include <boost/preprocessor/detail/is_nullary.hpp> 27 #define BOOST_PARAMETER_IS_NULLARY(x) BOOST_PP_IS_NULLARY(x) 28 /**/ 29 #endif 30 31 #endif // include guard 32 33