forked from bonsai/harakit
hru(1): changed to use strerror(3)
This commit is contained in:
parent
8f956d775c
commit
cf1d16f860
10
src/hru.rs
10
src/hru.rs
@ -23,8 +23,10 @@ use std::{
|
|||||||
process::{ ExitCode, exit },
|
process::{ ExitCode, exit },
|
||||||
};
|
};
|
||||||
|
|
||||||
|
extern crate strerror;
|
||||||
extern crate sysexits;
|
extern crate sysexits;
|
||||||
|
|
||||||
|
use strerror::c_error;
|
||||||
use sysexits::{ EX_DATAERR, EX_IOERR, EX_SOFTWARE };
|
use sysexits::{ EX_DATAERR, EX_IOERR, EX_SOFTWARE };
|
||||||
|
|
||||||
const LIST: [(u32, &str); 10] = [
|
const LIST: [(u32, &str); 10] = [
|
||||||
@ -49,7 +51,7 @@ fn convert(input: u128) -> Result<(f64, (u32, &'static str)), String> {
|
|||||||
let c = match 10_u128.checked_pow(n) {
|
let c = match 10_u128.checked_pow(n) {
|
||||||
Some(c) => c,
|
Some(c) => c,
|
||||||
None => {
|
None => {
|
||||||
return Err(format!("10^{}: Integer overflow.", n.to_string()));
|
return Err(format!("10^{}: Integer overflow", n.to_string()));
|
||||||
},
|
},
|
||||||
};
|
};
|
||||||
|
|
||||||
@ -79,7 +81,7 @@ fn main() -> ExitCode {
|
|||||||
f
|
f
|
||||||
},
|
},
|
||||||
Err(err) => {
|
Err(err) => {
|
||||||
eprintln!("{}: {}.", argv[0], err);
|
eprintln!("{}: {}", argv[0], err);
|
||||||
return ExitCode::from(EX_DATAERR as u8);
|
return ExitCode::from(EX_DATAERR as u8);
|
||||||
},
|
},
|
||||||
};
|
};
|
||||||
@ -87,7 +89,7 @@ fn main() -> ExitCode {
|
|||||||
let (number, prefix) = match convert(n) {
|
let (number, prefix) = match convert(n) {
|
||||||
Ok(x) => x,
|
Ok(x) => x,
|
||||||
Err(err) => {
|
Err(err) => {
|
||||||
eprintln!("{}: {}.", argv[0], err);
|
eprintln!("{}: {}", argv[0], err);
|
||||||
return ExitCode::from(EX_SOFTWARE as u8);
|
return ExitCode::from(EX_SOFTWARE as u8);
|
||||||
},
|
},
|
||||||
};
|
};
|
||||||
@ -98,7 +100,7 @@ fn main() -> ExitCode {
|
|||||||
|
|
||||||
stdout().write_all(format!("{} {}\n", out, si_prefix).as_bytes())
|
stdout().write_all(format!("{} {}\n", out, si_prefix).as_bytes())
|
||||||
.unwrap_or_else(|e| {
|
.unwrap_or_else(|e| {
|
||||||
eprintln!("{}: {}.", argv[0], e);
|
eprintln!("{}: {}", argv[0], c_error(e));
|
||||||
exit(EX_IOERR);
|
exit(EX_IOERR);
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user