fn parse_args() -> Args {
    try_parse_args().unwrap_or_else(|| {
        let args = std::env::args_os().collect::<Vec<_>>();
        panic!("Couldn't parse the following args {:?}", args);
    })
}
// TODO: This function should probably cache the result instead of recomputing
// it several times. It's not really slow relative to anything but unnecessary
// work is unnecessary.
This function should probably cache the result instead of recomputing
it several times. It's not really slow relative to anything but unnecessary
work is unnecessary.
This function should probably cache the result instead of recomputing it several times . It ' s not really slow relative to anything but unnecessary work is unnecessary .
fn parse_args() -> Args {
    try_parse_args().unwrap_or_else(|| {
        let args = std::env::args_os().collect::<Vec<_>>();
        panic!("Couldn't parse the following args {:?}", args);
    })
}
fn parse_args ( ) -> Args { try_parse_args ( ) . unwrap_or_else ( | | { let args = std :: env :: args_os ( ) . collect :: < Vec < _ > > ( ) ; panic ! ( " " args ) ; } ) }
TODO: This function should probably cache the result instead of recomputing
it several times.
TODO : This function should probably cache the result instead of recomputing it several times .