validate method

  1. @override
void validate({
  1. bool? ignoreImpossibleCheck,
})
override

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;
  }
}