]> git.lizzy.rs Git - rust.git/commitdiff
Avoid unnecessary pattern matching against Option and Result
authorljedrz <ljedrz@gmail.com>
Fri, 27 Jul 2018 11:20:13 +0000 (13:20 +0200)
committerljedrz <ljedrz@gmail.com>
Tue, 7 Aug 2018 08:24:27 +0000 (10:24 +0200)
16 files changed:
src/librustc/traits/auto_trait.rs
src/librustc/traits/error_reporting.rs
src/librustc/traits/query/outlives_bounds.rs
src/librustc/traits/select.rs
src/librustc/ty/instance.rs
src/librustc_errors/emitter.rs
src/librustc_mir/borrow_check/error_reporting.rs
src/librustc_resolve/lib.rs
src/librustc_save_analysis/json_dumper.rs
src/librustc_typeck/check/method/probe.rs
src/librustc_typeck/check/mod.rs
src/librustdoc/core.rs
src/librustdoc/html/highlight.rs
src/librustdoc/html/markdown.rs
src/libsyntax/test.rs
src/libsyntax_ext/env.rs

index cfe3583a9806f7836431f78a97c027aaf018c41f..1ffe8157a0fb43a764ef0918940e325d36ffee6a 100644 (file)
@@ -681,10 +681,7 @@ pub fn evaluate_nested_obligations<
                     }
                 }
                 &ty::Predicate::RegionOutlives(ref binder) => {
-                    if let Err(_) = select
-                        .infcx()
-                        .region_outlives_predicate(&dummy_cause, binder)
-                    {
+                    if select.infcx().region_outlives_predicate(&dummy_cause, binder).is_err() {
                         return false;
                     }
                 }
index c04785aac2095f7a2b62c475773f0700427fabee..a02b63755dc129cee8fe0bf8aae8cbe19df3067e 100644 (file)
@@ -143,7 +143,7 @@ fn error_implies(&self,
                 // Eventually I'll need to implement param-env-aware
                 // `Γ₁ ⊦ φ₁ => Γ₂ ⊦ φ₂` logic.
                 let param_env = ty::ParamEnv::empty();
-                if let Ok(_) = self.can_sub(param_env, error, implication) {
+                if self.can_sub(param_env, error, implication).is_ok() {
                     debug!("error_implies: {:?} -> {:?} -> {:?}", cond, error, implication);
                     return true
                 }
index f79ce73ad928a933dc8081d8ca5dec71380ec9aa..0127ae423da54fcba742953751d8894feb9901b9 100644 (file)
@@ -137,7 +137,7 @@ pub fn implied_outlives_bounds(
         // variables. Process these constraints.
         let mut fulfill_cx = FulfillmentContext::new();
         fulfill_cx.register_predicate_obligations(self, result.obligations);
-        if let Err(_) = fulfill_cx.select_all_or_error(self) {
+        if fulfill_cx.select_all_or_error(self).is_err() {
             self.tcx.sess.delay_span_bug(
                 span,
                 "implied_outlives_bounds failed to solve obligations from instantiation"
index 35184ca6a2559cc3c3f2527db555a3addb414fc3..1e3fe70535bcc591e4206a1c7d678d317a91aaec 100644 (file)
@@ -1587,8 +1587,8 @@ fn match_projection(&mut self,
                         -> bool
     {
         assert!(!skol_trait_ref.has_escaping_regions());
-        if let Err(_) = self.infcx.at(&obligation.cause, obligation.param_env)
-                                  .sup(ty::Binder::dummy(skol_trait_ref), trait_bound) {
+        if self.infcx.at(&obligation.cause, obligation.param_env)
+                     .sup(ty::Binder::dummy(skol_trait_ref), trait_bound).is_err() {
             return false;
         }
 
index 66edbeff749f712f8762bf84f0035bf4c3452a5a..7329f4832f2e27022ce4fd8d57bc3bb5d5db22f9 100644 (file)
@@ -294,7 +294,7 @@ fn resolve_associated_item<'a, 'tcx>(
             })
         }
         traits::VtableBuiltin(..) => {
-            if let Some(_) = tcx.lang_items().clone_trait() {
+            if tcx.lang_items().clone_trait().is_some() {
                 Some(Instance {
                     def: ty::InstanceDef::CloneShim(def_id, trait_ref.self_ty()),
                     substs: rcvr_substs
index 09295e2c7ff0024dae5f43cd7f06f3f39d8c1d02..6b1298750fba0533fd44735d8dc0688a3972e32f 100644 (file)
@@ -1295,7 +1295,7 @@ fn emit_suggestion_default(&mut self,
                 }
 
                 // if we elided some lines, add an ellipsis
-                if let Some(_) = lines.next() {
+                if lines.next().is_some() {
                     buffer.puts(row_num, max_line_num_len - 1, "...", Style::LineNumber);
                 } else if !show_underline {
                     draw_col_separator_no_space(&mut buffer, row_num, max_line_num_len + 1);
index aabed6686858fddf6fe579d235b019a4130454f0..67b92d92a343d4264c685bdddfac0b9875231ca5 100644 (file)
@@ -138,7 +138,7 @@ pub(super) fn report_use_of_moved_or_uninitialized(
                         let tables = self.tcx.typeck_tables_of(id);
                         let node_id = self.tcx.hir.as_local_node_id(id).unwrap();
                         let hir_id = self.tcx.hir.node_to_hir_id(node_id);
-                        if let Some(_) = tables.closure_kind_origins().get(hir_id) {
+                        if tables.closure_kind_origins().get(hir_id).is_some() {
                             false
                         } else {
                             true
@@ -735,7 +735,7 @@ fn append_place_to_string(
                             &including_downcast,
                         )?;
                         buf.push_str("[");
-                        if let Err(_) = self.append_local_to_string(index, buf) {
+                        if self.append_local_to_string(index, buf).is_err() {
                             buf.push_str("..");
                         }
                         buf.push_str("]");
index a7fcc89f6b974209c651911f59c49c41a045d506..5d57390dd05af2179e4abf20e87b11c7ff1497b7 100644 (file)
@@ -2698,7 +2698,7 @@ fn resolve_block(&mut self, block: &Block) {
             self.label_ribs.pop();
         }
         self.ribs[ValueNS].pop();
-        if let Some(_) = anonymous_module {
+        if anonymous_module.is_some() {
             self.ribs[TypeNS].pop();
         }
         debug!("(resolving block) leaving block");
@@ -4254,7 +4254,7 @@ fn find_module(&mut self,
 
         while let Some((in_module, path_segments)) = worklist.pop() {
             // abort if the module is already found
-            if let Some(_) = result { break; }
+            if result.is_some() { break; }
 
             self.populate_module_if_necessary(in_module);
 
index 2fe7d73de8aa02b3532edeebfa029da9ca32bd1e..d2e52f98238dd99012e429bbce818df934744e78 100644 (file)
@@ -39,7 +39,7 @@ pub struct WriteOutput<'b, W: Write + 'b> {
 
 impl<'b, W: Write> DumpOutput for WriteOutput<'b, W> {
     fn dump(&mut self, result: &Analysis) {
-        if let Err(_) = write!(self.output, "{}", as_json(&result)) {
+        if write!(self.output, "{}", as_json(&result)).is_err() {
             error!("Error writing output");
         }
     }
index 8d8482208b97d3d1f317772cbdf684a6e65cd7e3..68e851446dc964014f96de7c533abef8e0659c4a 100644 (file)
@@ -758,8 +758,9 @@ pub fn matches_return_type(&self,
                         self.span, infer::FnCall, &fty);
 
                     if let Some(self_ty) = self_ty {
-                        if let Err(_) = self.at(&ObligationCause::dummy(), self.param_env)
-                            .sup(fty.inputs()[0], self_ty)
+                        if self.at(&ObligationCause::dummy(), self.param_env)
+                               .sup(fty.inputs()[0], self_ty)
+                               .is_err()
                         {
                             return false
                         }
index 8c47df8b04221318e4ca7ddf1db159d303c57349..9b6772e2dbb21b21ac0b2a7e5fc7695c9d3439c2 100644 (file)
@@ -3915,7 +3915,7 @@ fn check_expr_kind(&self,
 
             }
             hir::ExprKind::Continue(destination) => {
-                if let Ok(_) = destination.target_id {
+                if destination.target_id.is_ok() {
                     tcx.types.never
                 } else {
                     // There was an error, make typecheck fail
index 86e5bbeab706a2dafa72c089270bd171ec9373df..68e4618328077cc6030e309c031703c4ed14186b 100644 (file)
@@ -486,7 +486,7 @@ pub fn run_core(search_paths: SearchPaths,
                                                         &name,
                                                         &output_filenames,
                                                         |tcx, analysis, _, result| {
-            if let Err(_) = result {
+            if result.is_err() {
                 sess.fatal("Compilation failed, aborting rustdoc");
             }
 
index 73d7a9ab8599d75015d62301eeb2c21e1cdddc3b..ff2cc35fce807622012c1ddac4ef177d24704b62 100644 (file)
@@ -44,7 +44,7 @@ pub fn render_with_highlighting(src: &str, class: Option<&str>,
     write_header(class, &mut out).unwrap();
 
     let mut classifier = Classifier::new(lexer::StringReader::new(&sess, fm, None), sess.codemap());
-    if let Err(_) = classifier.write_source(&mut out) {
+    if classifier.write_source(&mut out).is_err() {
         return format!("<pre>{}</pre>", src);
     }
 
index b22e239e20a0eeaf166b3b34935ceb6eaaed5655..c104b883340615d88948f4d1b48f464c42cd0abc 100644 (file)
@@ -625,7 +625,7 @@ fn parse(string: &str, allow_error_code_check: ErrorCodes) -> LangString {
                     data.no_run = true;
                 }
                 x if allow_error_code_check && x.starts_with("E") && x.len() == 5 => {
-                    if let Ok(_) = x[1..].parse::<u32>() {
+                    if x[1..].parse::<u32>().is_ok() {
                         data.error_codes.push(x.to_owned());
                         seen_rust_tags = !seen_other_tags || seen_rust_tags;
                     } else {
index d8b8d13a38c2ea3fb28f4914296f774152eeb951..62dd00387d3abbef747cef214d35793e5b1a52f4 100644 (file)
@@ -631,7 +631,7 @@ fn path_name_i(idents: &[Ident]) -> String {
     let mut idents_iter = idents.iter().peekable();
     while let Some(ident) = idents_iter.next() {
         path_name.push_str(&ident.as_str());
-        if let Some(_) = idents_iter.peek() {
+        if idents_iter.peek().is_some() {
             path_name.push_str("::")
         }
     }
index 3c34bf496da594a460022f81773d3291755299fe..8f26b2402aadfce024d8e2067767414d47a5dbd7 100644 (file)
@@ -81,7 +81,7 @@ pub fn expand_env<'cx>(cx: &'cx mut ExtCtxt,
         }
     };
 
-    if let Some(_) = exprs.next() {
+    if exprs.next().is_some() {
         cx.span_err(sp, "env! takes 1 or 2 arguments");
         return DummyResult::expr(sp);
     }