summaryrefslogtreecommitdiffstats
path: root/src/format.rs
diff options
context:
space:
mode:
Diffstat (limited to 'src/format.rs')
-rw-r--r--src/format.rs18
1 files changed, 9 insertions, 9 deletions
diff --git a/src/format.rs b/src/format.rs
index 9086500..e552f53 100644
--- a/src/format.rs
+++ b/src/format.rs
@@ -1,15 +1,15 @@
use std::os::unix::process::ExitStatusExt as _;
pub fn exit_status(status: std::process::ExitStatus) -> String {
- if let Some(sig) = status.signal() {
- if let Some(name) = signal_hook::low_level::signal_name(sig) {
- format!("{:4} ", &name[3..])
- } else {
- format!("SIG{} ", sig)
- }
- } else {
- format!("{:03} ", status.code().unwrap())
- }
+ status.signal().map_or_else(
+ || format!("{:03} ", status.code().unwrap()),
+ |sig| {
+ signal_hook::low_level::signal_name(sig).map_or_else(
+ || format!("SIG{} ", sig),
+ |name| format!("{:4} ", &name[3..]),
+ )
+ },
+ )
}
pub fn time(time: time::OffsetDateTime) -> String {