X-Git-Url: https://i11git.iti.kit.edu/anon-gitweb/?p=Mitarbeiter%2FTim-Zeitz%2Fstud-rust-base.git;a=blobdiff_plain;f=src%2Fbin%2Fdecode_vector.rs;h=691a7a09d2966084c50c74b492638c2c696c5c6d;hp=180804b15f88e00e88cdf468cc752f9285e211c1;hb=174bad4ee583a72df07c23f242654a454a07b9f6;hpb=b52fc015957bcfa65d2e8fbb8d4ea44f4923e3a8 diff --git a/src/bin/decode_vector.rs b/src/bin/decode_vector.rs index 180804b..691a7a0 100644 --- a/src/bin/decode_vector.rs +++ b/src/bin/decode_vector.rs @@ -1,43 +1,43 @@ extern crate stud_rust_base; -use stud_rust_base::io::*; -use std::env; +use stud_rust_base::{io::*, cli::CliErr}; +use std::{env, error::Error}; -fn main() { +fn main() -> Result<(), Box> { let mut args = env::args(); args.next(); match &args.collect::>()[..] { [data_type, input] => { match data_type.as_ref() { - "i8" => print_values(Vec::::load_from(input).expect("Failed to read from input")), - "u8" => print_values(Vec::::load_from(input).expect("Failed to read from input")), - "i16" => print_values(Vec::::load_from(input).expect("Failed to read from input")), - "u16" => print_values(Vec::::load_from(input).expect("Failed to read from input")), - "i32" => print_values(Vec::::load_from(input).expect("Failed to read from input")), - "u32" => print_values(Vec::::load_from(input).expect("Failed to read from input")), - "i64" => print_values(Vec::::load_from(input).expect("Failed to read from input")), - "u64" => print_values(Vec::::load_from(input).expect("Failed to read from input")), - "f32" => print_values(Vec::::load_from(input).expect("Failed to read from input")), - "f64" => print_values(Vec::::load_from(input).expect("Failed to read from input")), - "int8" => print_values(Vec::::load_from(input).expect("Failed to read from input")), - "uint8" => print_values(Vec::::load_from(input).expect("Failed to read from input")), - "int16" => print_values(Vec::::load_from(input).expect("Failed to read from input")), - "uint16" => print_values(Vec::::load_from(input).expect("Failed to read from input")), - "int32" => print_values(Vec::::load_from(input).expect("Failed to read from input")), - "uint32" => print_values(Vec::::load_from(input).expect("Failed to read from input")), - "int64" => print_values(Vec::::load_from(input).expect("Failed to read from input")), - "uint64" => print_values(Vec::::load_from(input).expect("Failed to read from input")), - "float32" => print_values(Vec::::load_from(input).expect("Failed to read from input")), - "float64" => print_values(Vec::::load_from(input).expect("Failed to read from input")), + "i8" => { print_values(Vec::::load_from(input)?); Ok(()) }, + "u8" => { print_values(Vec::::load_from(input)?); Ok(()) }, + "i16" => { print_values(Vec::::load_from(input)?); Ok(()) }, + "u16" => { print_values(Vec::::load_from(input)?); Ok(()) }, + "i32" => { print_values(Vec::::load_from(input)?); Ok(()) }, + "u32" => { print_values(Vec::::load_from(input)?); Ok(()) }, + "i64" => { print_values(Vec::::load_from(input)?); Ok(()) }, + "u64" => { print_values(Vec::::load_from(input)?); Ok(()) }, + "f32" => { print_values(Vec::::load_from(input)?); Ok(()) }, + "f64" => { print_values(Vec::::load_from(input)?); Ok(()) }, + "int8" => { print_values(Vec::::load_from(input)?); Ok(()) }, + "uint8" => { print_values(Vec::::load_from(input)?); Ok(()) }, + "int16" => { print_values(Vec::::load_from(input)?); Ok(()) }, + "uint16" => { print_values(Vec::::load_from(input)?); Ok(()) }, + "int32" => { print_values(Vec::::load_from(input)?); Ok(()) }, + "uint32" => { print_values(Vec::::load_from(input)?); Ok(()) }, + "int64" => { print_values(Vec::::load_from(input)?); Ok(()) }, + "uint64" => { print_values(Vec::::load_from(input)?); Ok(()) }, + "float32" => { print_values(Vec::::load_from(input)?); Ok(()) }, + "float64" => { print_values(Vec::::load_from(input)?); Ok(()) }, _ => { print_usage(); - panic!("Unknown data_type {}", data_type); + Err(Box::new(CliErr("Invalid data type"))) } - }; + } }, _ => { print_usage(); - panic!("Invalid input") + Err(Box::new(CliErr("Invalid arguments"))) }, } }