The BOOST_PP_BITAND macro expands to the bitwise AND of its operands.

Usage

BOOST_PP_BITAND(x, y)

Arguments

x
The left operand of the operation.  This value must expand to 0 or 1.
y
The right operand of the operation.  This value must expand to 0 or 1.

Remarks

If both x and y are 1, this macro expands to 1.  Otherwise, it expands to 0.
This macro does not perform a boolean conversion on either operand before performing the bitwise AND operation.  If that conversion is necessary, use BOOST_PP_AND instead.

See Also

Requirements

Header:  <boost/preprocessor/logical/bitand.hpp>

Sample Code

#include <boost/preprocessor/logical/bitand.hpp>

BOOST_PP_BITAND(0, 0) // expands to 0
BOOST_PP_BITAND(0, 1) // expands to 0
BOOST_PP_BITAND(1, 0) // expands to 0
BOOST_PP_BITAND(1, 1) // expands to 1