blob: 74e9527f20e353fa2d1064a3ddda07be42dacd51 [file] [log] [blame]
Jeff Thompsonf7d49942013-08-01 16:47:40 -07001# /* **************************************************************************
2# * *
3# * (C) Copyright Paul Mensonides 2002.
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_LOGICAL_BITAND_HPP
13# define BOOST_PREPROCESSOR_LOGICAL_BITAND_HPP
14#
15# include <boost/preprocessor/config/config.hpp>
16#
17# /* BOOST_PP_BITAND */
18#
19# if ~BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_MWCC()
20# define BOOST_PP_BITAND(x, y) BOOST_PP_BITAND_I(x, y)
21# else
22# define BOOST_PP_BITAND(x, y) BOOST_PP_BITAND_OO((x, y))
23# define BOOST_PP_BITAND_OO(par) BOOST_PP_BITAND_I ## par
24# endif
25#
26# if ~BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_MSVC()
27# define BOOST_PP_BITAND_I(x, y) BOOST_PP_BITAND_ ## x ## y
28# else
29# define BOOST_PP_BITAND_I(x, y) BOOST_PP_BITAND_ID(BOOST_PP_BITAND_ ## x ## y)
30# define BOOST_PP_BITAND_ID(res) res
31# endif
32#
33# define BOOST_PP_BITAND_00 0
34# define BOOST_PP_BITAND_01 0
35# define BOOST_PP_BITAND_10 0
36# define BOOST_PP_BITAND_11 1
37#
38# endif