fn on_user_input(&mut self) -> Cell {
        loop {
            println!("Enter a value between 1-9");
            let mut player_input_stream = String::new();
            std::io::stdin()
                .read_line(&mut player_input_stream)
                .unwrap();
            match Cell::try_from(player_input_stream.trim()) {
                Some(c) if !self.is_cell_set(c) => return c,
                Some(_) => println!("Sorry, this cell has already been set!"),
                None => println!("Sorry, please enter a valid number."),
            }
        }
    }
/// Handles player input for cell selection.
Handles player input for cell selection.
Handles player input for cell selection .
fn on_user_input(&mut self) -> Cell {
        loop {
            println!("Enter a value between 1-9");
            let mut player_input_stream = String::new();
            std::io::stdin()
                .read_line(&mut player_input_stream)
                .unwrap();
            match Cell::try_from(player_input_stream.trim()) {
                Some(c) if !self.is_cell_set(c) => return c,
                Some(_) => println!("Sorry, this cell has already been set!"),
                None => println!("Sorry, please enter a valid number."),
            }
        }
    }
fn on_user_input ( & mut self ) -> Cell { loop { println ! ( " " ) ; let mut player_input_stream = String :: new ( ) ; std :: io :: stdin ( ) . read_line ( & mut player_input_stream ) . unwrap ( ) ; match Cell :: try_from ( player_input_stream . trim ( ) ) { Some ( c ) if ! self . is_cell_set ( c ) => return c , Some ( _ ) => println ! ( " " ) , None => println ! ( " " ) , } } }
Handles player input for cell selection.
Handles player input for cell selection .
&mut self