void undo_null_move();
// Static exchange evaluation
- int see(Move m) const;
+ int see(Move m, int asymmThreshold = 0) const;
int see_sign(Move m) const;
- int see_asymm(Move m, int asymmThreshold) const;
// Accessing hash keys
Key key() const;
Thread* this_thread() const;
int64_t nodes_searched() const;
void set_nodes_searched(int64_t n);
- template<bool SkipRepetition> bool is_draw() const;
+ bool is_draw() const;
// Position consistency check, for debugging
bool pos_is_ok(int* failedStep = NULL) const;
// Helper functions
void do_castle(Square kfrom, Square kto, Square rfrom, Square rto);
- template<bool Asymmetric> int do_see(Move m, int asymmThreshold) const;
template<bool FindPinned> Bitboard hidden_checkers() const;
// Computing hash keys from scratch (for initialization and debugging)