1 # /* ************************************************************************** 2 # * * 3 # * (C) Copyright Edward Diener 2014. 4 # * Distributed under the Boost Software License, Version 1.0. (See 5 # * accompanying file LICENSE_1_0.txt or copy at 6 # * http://www.boost.org/LICENSE_1_0.txt) 7 # * * 8 # ************************************************************************** */ 9 # 10 # /* See http://www.boost.org for most recent version. */ 11 # 12 # ifndef BOOST_PREPROCESSOR_IS_BEGIN_PARENS_HPP 13 # define BOOST_PREPROCESSOR_IS_BEGIN_PARENS_HPP 14 15 # include <boost/preprocessor/config/config.hpp> 16 17 #if BOOST_PP_VARIADICS 18 19 #include <boost/preprocessor/punctuation/detail/is_begin_parens.hpp> 20 21 #if BOOST_PP_VARIADICS_MSVC && _MSC_VER <= 1400 22 23 #define BOOST_PP_IS_BEGIN_PARENS(param) \ 24 BOOST_PP_DETAIL_IBP_SPLIT \ 25 ( \ 26 0, \ 27 BOOST_PP_DETAIL_IBP_CAT \ 28 ( \ 29 BOOST_PP_DETAIL_IBP_IS_VARIADIC_R_, \ 30 BOOST_PP_DETAIL_IBP_IS_VARIADIC_C param \ 31 ) \ 32 ) \ 33 /**/ 34 35 #else 36 37 #define BOOST_PP_IS_BEGIN_PARENS(...) \ 38 BOOST_PP_DETAIL_IBP_SPLIT \ 39 ( \ 40 0, \ 41 BOOST_PP_DETAIL_IBP_CAT \ 42 ( \ 43 BOOST_PP_DETAIL_IBP_IS_VARIADIC_R_, \ 44 BOOST_PP_DETAIL_IBP_IS_VARIADIC_C __VA_ARGS__ \ 45 ) \ 46 ) \ 47 /**/ 48 49 #endif /* BOOST_PP_VARIADICS_MSVC && _MSC_VER <= 1400 */ 50 #endif /* BOOST_PP_VARIADICS */ 51 #endif /* BOOST_PREPROCESSOR_IS_BEGIN_PARENS_HPP */ 52