validate method
Checks the legality of this position.
Throws a PositionError if it does not meet basic validity requirements.
Implementation
@override
void validate({bool? ignoreImpossibleCheck}) {
if (board.occupied.isEmpty) {
throw PositionError.empty;
}
if (SquareSet.backranks.isIntersected(board.pawns)) {
throw PositionError.pawnsOnBackrank;
}
}