operator TT() const { return entry; }
void operator<<(int bonus) {
- assert(abs(bonus) <= D); // Ensure range is [-D, D]
- assert(D < std::numeric_limits<T>::max()); // Ensure we don't overflow
+ assert(abs(bonus) <= D); // Ensure range is [-D, D]
+ static_assert(D <= std::numeric_limits<T>::max(), "D overflows T");
entry += bonus - entry * abs(bonus) / D;
MovePicker(const MovePicker&) = delete;
MovePicker& operator=(const MovePicker&) = delete;
MovePicker(const Position&, Move, Value, const CapturePieceToHistory*);
- MovePicker(const Position&, Move, Depth, const ButterflyHistory*, const CapturePieceToHistory*, Square);
- MovePicker(const Position&, Move, Depth, const ButterflyHistory*, const CapturePieceToHistory*, const PieceToHistory**, Move, Move*);
+ MovePicker(const Position&, Move, Depth, const ButterflyHistory*,
+ const CapturePieceToHistory*,
+ const PieceToHistory**,
+ Square);
+ MovePicker(const Position&, Move, Depth, const ButterflyHistory*,
+ const CapturePieceToHistory*,
+ const PieceToHistory**,
+ Move,
+ Move*);
Move next_move(bool skipQuiets = false);
private:
const Position& pos;
const ButterflyHistory* mainHistory;
const CapturePieceToHistory* captureHistory;
- const PieceToHistory** contHistory;
+ const PieceToHistory** continuationHistory;
Move ttMove;
ExtMove refutations[3], *cur, *endMoves, *endBadCaptures;
int stage;