* advotracker: the framework project * crate/advotrackerdb: implementation of the database backend * crate/advotrackerd: implementation of the backend (daemon) * crate/adovtracker: implementaton of the application (CLI and GUI) Signed-off-by: Ralf Zerres <ralf.zerres@networkx.de>
31 lines
776 B
Rust
31 lines
776 B
Rust
/*
|
|
* advotracker - Hotline tackingtool for Advocats
|
|
*
|
|
* Copyright 2020 Ralf Zerres <ralf.zerres@networkx.de>
|
|
* SPDX-License-Identifier: (0BSD or MIT)
|
|
*/
|
|
|
|
use std::error::Error;
|
|
use std::io;
|
|
use std::process;
|
|
|
|
/// Testing: import from csv format (Standard in)
|
|
fn import() -> Result<(), Box<dyn Error>> {
|
|
// Build the CSV reader and iterate over each record.
|
|
let mut csv_reader = csv::Reader::from_reader(io::stdin());
|
|
for result in csv_reader.records() {
|
|
// The iterator yields Result<StringRecord, Error>, so we check the
|
|
// error here.
|
|
let record = result?;
|
|
println!("{:?}", record);
|
|
}
|
|
Ok(())
|
|
}
|
|
|
|
fn main() {
|
|
if let Err(err) = import() {
|
|
println!("import error: {}", err);
|
|
process::exit(1);
|
|
}
|
|
}
|