use std::{error::Error, io, process}; | |
fn main() { | |
if let Err(err) = run() { | |
println!("{}", err); | |
process::exit(1); | |
} | |
} | |
fn run() -> Result<(), Box<dyn Error>> { | |
let mut rdr = csv::Reader::from_reader(io::stdin()); | |
for result in rdr.records() { | |
// This is effectively the same code as our `match` in the | |
// previous example. In other words, `?` is syntactic sugar. | |
let record = result?; | |
println!("{:?}", record); | |
} | |
Ok(()) | |
} |