move method
Performs a move m
.
Implementation
PlayedMove move(Move m) {
final PlayedMove playedMove = PlayedMove(
m.from,
m.to,
_position[m.to.row][m.to.col],
m.promotionTo,
);
_position[m.to.row][m.to.col] =
m.promotionTo ?? _position[m.from.row][m.from.col];
_position[m.from.row][m.from.col] = null;
return playedMove;
}