/// when MOVE_NONE is returned. In order to improve the efficiency of the alpha
/// beta algorithm, MovePicker attempts to return the moves which are most likely
/// to get a cut-off first.
+class MovePicker {
-enum PickType { NEXT, BEST_SCORE };
+ enum PickType { Next, Best };
-class MovePicker {
public:
MovePicker(const MovePicker&) = delete;
MovePicker& operator=(const MovePicker&) = delete;
Move next_move(bool skipQuiets = false);
private:
- template<PickType T, typename Pred> Move select_move(Pred);
+ template<PickType T, typename Pred> Move select(Pred);
template<GenType> void score();
ExtMove* begin() { return cur; }
ExtMove* end() { return endMoves; }