WHITE_OOO = WHITE_OO << 1,
BLACK_OO = WHITE_OO << 2,
BLACK_OOO = WHITE_OO << 3,
- ANY_CASTLING = WHITE_OO | WHITE_OOO | BLACK_OO | BLACK_OOO,
+ WHITE_CASTLING = WHITE_OO | WHITE_OOO,
+ BLACK_CASTLING = BLACK_OO | BLACK_OOO,
+ ANY_CASTLING = WHITE_CASTLING | BLACK_CASTLING,
CASTLING_RIGHT_NB = 16
};
return relative_rank(c, rank_of(s));
}
-inline bool opposite_colors(Square s1, Square s2) {
- int s = int(s1) ^ int(s2);
- return ((s >> 3) ^ s) & 1;
-}
-
constexpr Direction pawn_push(Color c) {
return c == WHITE ? NORTH : SOUTH;
}