pub fn read_csv(input: &mut dyn BufRead) -> Result<Vec<usize>, Box<dyn Error>> {
    let mut buffer = String::new();
    input.read_to_string(&mut buffer)?;
    let mut input = Vec::<usize>::with_capacity(INPUT_LEN_GUESS);
    for num_string in buffer.split(",") {
        input.push(num_string.trim().parse()?);
    }
    Ok(input)
}
// Read one comma-separated line from the input.
Read one comma-separated line from the input.
Read one comma - separated line from the input .
pub fn read_csv(input: &mut dyn BufRead) -> Result<Vec<usize>, Box<dyn Error>> {
    let mut buffer = String::new();
    input.read_to_string(&mut buffer)?;
    let mut input = Vec::<usize>::with_capacity(INPUT_LEN_GUESS);
    for num_string in buffer.split(",") {
        input.push(num_string.trim().parse()?);
    }
    Ok(input)
}
pub fn read_csv ( input : & mut dyn BufRead ) -> Result < Vec < usize > , Box < dyn Error > > { let mut buffer = String :: new ( ) ; input . read_to_string ( & mut buffer ) ? ; let mut input = Vec :: < usize > :: with_capacity ( INPUT_LEN_GUESS ) ; for num_string in buffer . split ( " " ) { input . push ( num_string . trim ( ) . parse ( ) ? ) ; } Ok ( input ) }
Read one comma-separated line from the input.
Read one comma - separated line from the input .
input
&mut dyn BufRead