// Properties of moves
bool pl_move_is_legal(Move m, Bitboard pinned) const;
- bool move_is_legal(const Move m) const;
- bool move_is_legal(const Move m, Bitboard pinned) const;
+ bool move_is_pl(const Move m) const;
bool move_gives_check(Move m) const;
bool move_gives_check(Move m, const CheckInfo& ci) const;
bool move_is_capture(Move m) const;
// Static exchange evaluation
int see(Move m) const;
int see_sign(Move m) const;
+ static int see_value(PieceType pt);
// Accessing hash keys
Key get_key() const;
// Game termination checks
bool is_mate() const;
- bool is_draw() const;
+ template<bool SkipRepetition> bool is_draw() const;
// Number of plies from starting position
int startpos_ply_counter() const;
void do_allow_oo(Color c);
void do_allow_ooo(Color c);
bool set_castling_rights(char token);
+ bool move_is_pl_slow(const Move m) const;
// Helper functions for doing and undoing moves
void do_capture_move(Key& key, PieceType capture, Color them, Square to, bool ep);
return !(pieces(PAWN, opposite_color(c)) & attack_span_mask(c, s));
}
+inline int Position::see_value(PieceType pt) {
+ return seeValues[pt];
+}
+
inline Key Position::get_key() const {
return st->key;
}