More idiomatic
authorRob Tsuk <robtsuk@google.com>
Tue, 13 Mar 2018 18:13:36 +0000 (11:13 -0700)
committerRob Tsuk <robtsuk@google.com>
Tue, 13 Mar 2018 18:13:36 +0000 (11:13 -0700)
src/cargo/ops/cargo_rustc/output_depinfo.rs

index febb25e49e92c4ab748f6535ebb564d745a4be46..ef1a90242480cebc9336a5d683f6bf8f8e02e6e3 100644 (file)
@@ -70,14 +70,18 @@ pub fn output_depinfo<'a, 'b>(context: &mut Context<'a, 'b>, unit: &Unit<'a>) ->
     let mut deps = HashSet::new();
     let mut visited = HashSet::new();
     let success = add_deps_for_unit(&mut deps, context, unit, &mut visited).is_ok();
-    let basedir_config = context.config.get_string("dep-info-basedir");
-    let basedir_config_ok = basedir_config.is_ok();
-    let basedir_val = basedir_config.unwrap_or(None).map(|s| s.val);
-    let basedir_string = basedir_val.unwrap_or("".to_string());
-    let basedir = if basedir_config_ok {
-        Some(basedir_string.as_str())
-    } else {
-        None
+    let basedir_string;
+    let basedir = match context.config.get_string("dep-info-basedir") {
+        Ok(config) => {
+            match config {
+                Some(value) => {
+                    basedir_string = value.val;
+                    Some(basedir_string.as_str())
+                }
+                None => None,
+            }
+        },
+        _ => None
     };
     for &(_, ref link_dst, _) in context.target_filenames(unit)?.iter() {
         if let Some(ref link_dst) = *link_dst {