25 GameState(uint8_t rows, uint8_t cols, uint8_t num_players);
36 std::optional<uint8_t>
getWinner()
const {
return winner_; }
37 void setWinner(uint8_t player) { winner_ = player; }
40 void addMove(
const Move &move) { move_history_.push_back(move); }
46 uint8_t current_player_;
49 std::optional<uint8_t> winner_;
50 std::vector<Move> move_history_;