inline void doNullMove() {
history.push_back(current_state);
current_state.turn = ~current_state.turn;
current_state.hash ^= zobrist::RandomTurn;
current_state.fullMoveNumber += (current_state.turn == WHITE);
current_state.pliesFromNull = current_state.repetition = 0;
current_state.mv = Move::null();
}
It doesn't clear the en passant.
It doesn't clear the en passant.