public static TicTacToeBoard.TicTacToePiece[] GetCol2(this TicTacToeBoard board)
 {
     TicTacToeBoard.TicTacToePiece[] results = new TicTacToeBoard.TicTacToePiece[3];
     results[0] = board.R0C2;
     results[1] = board.R1C2;
     results[2] = board.R2C2;
     return(results);
 }
 public static TicTacToeBoard.TicTacToePiece[] GetDiagonal1(this TicTacToeBoard board)
 {
     TicTacToeBoard.TicTacToePiece[] results = new TicTacToeBoard.TicTacToePiece[3];
     results[0] = board.R0C2;
     results[1] = board.R1C1;
     results[2] = board.R2C0;
     return(results);
 }
 public static TicTacToeBoard.TicTacToePiece[] GetRow0(this TicTacToeBoard board)
 {
     TicTacToeBoard.TicTacToePiece[] results = new TicTacToeBoard.TicTacToePiece[3];
     results[0] = board.R0C0;
     results[1] = board.R0C1;
     results[2] = board.R0C2;
     return(results);
 }
        private static bool HasWinner(TicTacToeBoard.TicTacToePiece[] pieces, out TicTacToeBoard.TicTacToePiece winner)
        {
            // No array error handling or empty board check
            if (pieces[0] == pieces[1] && pieces[1] == pieces[2])
            {
                winner = pieces[0];
                return(true);
            }

            winner = TicTacToeBoard.TicTacToePiece.None;
            return(false);
        }