Bitboard dcCandidates;
Bitboard pinned;
Bitboard checkSq[8];
+ Square ksq;
};
// The piece on a given square
Piece piece_on(Square s) const;
+ Piece piece_moved(Move m) const;
bool square_is_empty(Square s) const;
// Side to move
Value non_pawn_material(Color c) const;
Score pst_delta(Piece piece, Square from, Square to) const;
- // Game termination checks
- bool is_mate() const;
+ // Other properties of the position
template<bool SkipRepetition> bool is_draw() const;
-
- // Plies from start position to the beginning of search
int startpos_ply_counter() const;
-
- // Other properties of the position
bool opposite_colored_bishops() const;
bool has_pawn_on_7th(Color c) const;
bool is_chess960() const;
return board[s];
}
+inline Piece Position::piece_moved(Move m) const {
+ return board[from_sq(m)];
+}
+
inline bool Position::square_is_empty(Square s) const {
return board[s] == NO_PIECE;
}