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_BINARY_HPP
7#define BOOST_PARAMETER_AUX_PREPROCESSOR_IS_BINARY_HPP
8
9#include <boost/config.hpp>
10#include <boost/config/workaround.hpp>
11
12#if BOOST_WORKAROUND(__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_BINARY(x) \
17 BOOST_PP_SPLIT(1, BOOST_PARAMETER_IS_BINARY_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_BINARY_C(x,y) \
22 ~, 1 BOOST_PP_RPAREN() \
23 BOOST_PP_TUPLE_EAT(2) BOOST_PP_LPAREN() ~
24/**/
25#else
26#include <boost/preprocessor/detail/is_binary.hpp>
27#define BOOST_PARAMETER_IS_BINARY(x) BOOST_PP_IS_BINARY(x)
28#endif
29
30#endif // include guard
31
32

source code of include/boost/parameter/aux_/preprocessor/is_binary.hpp