-inline Bitboard operator|(Bitboard b, Square s) {
- assert(s >= SQ_A1 && s <= SQ_H8);
- return b | SquareBB[s];
-}
-
-inline Bitboard operator^(Bitboard b, Square s) {
- assert(s >= SQ_A1 && s <= SQ_H8);
- return b ^ SquareBB[s];
-}
-
-inline Bitboard& operator|=(Bitboard& b, Square s) {
- assert(s >= SQ_A1 && s <= SQ_H8);
- return b |= SquareBB[s];
-}
+/// Overloads of bitwise operators between a Bitboard and a Square for testing
+/// whether a given bit is set in a bitboard, and for setting and clearing bits.