Every legal move for the side to play, in stable square order: pseudo-moves that leave
their own king safe, each tried with makeMove and taken back with unmakeMove.
Castling needs its rights, an empty passage and no check on the way over; en passant
pins fall out of the make-and-test filter rather than special-casing.
Every legal move for the side to play, in stable square order: pseudo-moves that leave their own king safe, each tried with
makeMoveand taken back withunmakeMove. Castling needs its rights, an empty passage and no check on the way over; en passant pins fall out of the make-and-test filter rather than special-casing.