From 39db8b86fdd7532359ce4f09bc07f4c32e24688b Mon Sep 17 00:00:00 2001 From: bootandy Date: Tue, 1 May 2018 14:38:34 +0100 Subject: [PATCH] Replace simple match with map_or --- src/utils/platform.rs | 24 ++++++++++-------------- 1 file changed, 10 insertions(+), 14 deletions(-) diff --git a/src/utils/platform.rs b/src/utils/platform.rs index c62c5c6..3d710b0 100644 --- a/src/utils/platform.rs +++ b/src/utils/platform.rs @@ -9,23 +9,19 @@ fn get_block_size() -> u64 { #[cfg(target_family = "unix")] pub fn get_metadata(d: &DirEntry, use_apparent_size: bool) -> Option<(u64, Option<(u64, u64)>)> { use std::os::unix::fs::MetadataExt; - match d.metadata().ok() { - Some(md) => { - let inode = Some((md.ino(), md.dev())); - if use_apparent_size { - Some((md.len(), inode)) - } else { - Some((md.blocks() * get_block_size(), inode)) - } + d.metadata().ok().map_or(None, |md| { + let inode = Some((md.ino(), md.dev())); + if use_apparent_size { + Some((md.len(), inode)) + } else { + Some((md.blocks() * get_block_size(), inode)) } - None => None, - } + }) } #[cfg(not(target_family = "unix"))] pub fn get_metadata(d: &DirEntry, _apparent: bool) -> Option<(u64, Option<(u64, u64)>)> { - match d.metadata().ok() { - Some(md) => Some((md.len(), None)), - None => None, - } + d.metadata().ok().map_or(None, |md| { + Some((md.len(), None)) + }) }