#undef ENABLE_OPERATORS_ON
#undef ENABLE_SAFE_OPERATORS_ON
-namespace Zobrist {
-
- extern Key psq[COLOR_NB][PIECE_TYPE_NB][SQUARE_NB];
- extern Key enpassant[FILE_NB];
- extern Key castle[CASTLE_RIGHT_NB];
- extern Key side;
- extern Key exclusion;
-
- void init();
-}
-
extern Value PieceValue[PHASE_NB][PIECE_NB];
extern int SquareDistance[SQUARE_NB][SQUARE_NB];
return Square(s ^ 56); // Vertical flip SQ_A1 -> SQ_A8
}
-inline Piece operator~(Piece c) {
- return Piece(c ^ 8);
-}
-
inline Square operator|(File f, Rank r) {
return Square((r << 3) | f);
}