void do_move(Move m, StateInfo& st);
void do_move(Move m, StateInfo& st, const CheckInfo& ci, bool moveIsCheck);
void undo_move(Move m);
- void do_null_move(StateInfo& st);
- void undo_null_move();
+ template<bool Do> void do_null_move(StateInfo& st);
// Static exchange evaluation
int see(Move m) const;
// Initialization helper functions (used while setting up a position)
void clear();
void put_piece(Piece p, Square s);
- void set_castle(int f, Square ksq, Square rsq);
- void set_castling_rights(char token);
+ void set_castle_right(Square ksq, Square rsq);
bool move_is_legal(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);
- void do_castle_move(Move m);
- void undo_castle_move(Move m);
+ template<bool Do> void do_castle_move(Move m);
template<bool FindPinned>
Bitboard hidden_checkers() const;