From 6b4ec73b7ed2522b837368a11863afb4b432b9a4 Mon Sep 17 00:00:00 2001 From: Jeremy Kolb Date: Thu, 4 Jul 2019 22:59:28 -0400 Subject: Clippy changes --- crates/ra_assists/src/fill_match_arms.rs | 31 +++++++++++++---------------- crates/ra_assists/src/split_import.rs | 5 +---- crates/ra_db/src/input.rs | 3 ++- crates/ra_hir/src/code_model.rs | 6 +++--- crates/ra_hir/src/ty/infer.rs | 2 +- crates/ra_syntax/src/validation/unescape.rs | 2 +- 6 files changed, 22 insertions(+), 27 deletions(-) diff --git a/crates/ra_assists/src/fill_match_arms.rs b/crates/ra_assists/src/fill_match_arms.rs index d51010b84..deef166b5 100644 --- a/crates/ra_assists/src/fill_match_arms.rs +++ b/crates/ra_assists/src/fill_match_arms.rs @@ -23,27 +23,24 @@ pub(crate) fn fill_match_arms(mut ctx: AssistCtx) -> Option { - let mut arm_iter = arm_list.arms(); - let first = arm_iter.next(); - - match first { - // If there arm list is empty or there is only one trivial arm, then proceed. - Some(arm) if is_trivial_arm(arm) => { - if arm_iter.next() != None { - return None; - } - } - None => {} - - _ => { + if let Some(arm_list) = match_expr.match_arm_list() { + let mut arm_iter = arm_list.arms(); + let first = arm_iter.next(); + + match first { + // If there arm list is empty or there is only one trivial arm, then proceed. + Some(arm) if is_trivial_arm(arm) => { + if arm_iter.next() != None { return None; } } + None => {} + + _ => { + return None; + } } - _ => {} - } + }; let expr = match_expr.expr()?; let analyzer = hir::SourceAnalyzer::new(ctx.db, ctx.frange.file_id, expr.syntax(), None); diff --git a/crates/ra_assists/src/split_import.rs b/crates/ra_assists/src/split_import.rs index a8feb67c8..99088d9a5 100644 --- a/crates/ra_assists/src/split_import.rs +++ b/crates/ra_assists/src/split_import.rs @@ -10,10 +10,7 @@ pub(crate) fn split_import(mut ctx: AssistCtx) -> Option bool { diff --git a/crates/ra_hir/src/code_model.rs b/crates/ra_hir/src/code_model.rs index ed640d7fc..b3a4f4d63 100644 --- a/crates/ra_hir/src/code_model.rs +++ b/crates/ra_hir/src/code_model.rs @@ -240,10 +240,10 @@ impl Module { } pub fn path_to_root(self, db: &impl HirDatabase) -> Vec { - let mut res = vec![self.clone()]; - let mut curr = self.clone(); + let mut res = vec![self]; + let mut curr = self; while let Some(next) = curr.parent(db) { - res.push(next.clone()); + res.push(next); curr = next } res diff --git a/crates/ra_hir/src/ty/infer.rs b/crates/ra_hir/src/ty/infer.rs index 9228dd314..78aa76449 100644 --- a/crates/ra_hir/src/ty/infer.rs +++ b/crates/ra_hir/src/ty/infer.rs @@ -529,7 +529,7 @@ impl<'a, D: HirDatabase> InferenceContext<'a, D> { match matching_def { Some(_) => { self.write_assoc_resolution(id, item); - return matching_def; + matching_def } None => None, } diff --git a/crates/ra_syntax/src/validation/unescape.rs b/crates/ra_syntax/src/validation/unescape.rs index 1cb2433f3..7eed6c663 100644 --- a/crates/ra_syntax/src/validation/unescape.rs +++ b/crates/ra_syntax/src/validation/unescape.rs @@ -262,7 +262,7 @@ where fn byte_from_char(c: char) -> u8 { let res = c as u32; - assert!(res <= u8::max_value() as u32, "guaranteed because of Mode::Byte"); + assert!(res <= u32::from(u8::max_value()), "guaranteed because of Mode::Byte"); res as u8 } -- cgit v1.2.3 From 1a950cdbcf5799d516f53a94fc9a6821e543ccc3 Mon Sep 17 00:00:00 2001 From: Jeremy Kolb Date: Thu, 4 Jul 2019 23:01:40 -0400 Subject: &self -> self https://rust-lang.github.io/rust-clippy/master/index.html#trivially_copy_pass_by_ref --- crates/ra_hir/src/code_model.rs | 26 +++++++++++++------------- 1 file changed, 13 insertions(+), 13 deletions(-) diff --git a/crates/ra_hir/src/code_model.rs b/crates/ra_hir/src/code_model.rs index b3a4f4d63..b27537151 100644 --- a/crates/ra_hir/src/code_model.rs +++ b/crates/ra_hir/src/code_model.rs @@ -299,7 +299,7 @@ impl Module { .collect() } - fn with_module_id(&self, module_id: CrateModuleId) -> Module { + fn with_module_id(self, module_id: CrateModuleId) -> Module { Module { module_id, krate: self.krate } } } @@ -463,33 +463,33 @@ pub struct EnumVariant { } impl EnumVariant { - pub fn module(&self, db: &impl HirDatabase) -> Module { + pub fn module(self, db: &impl HirDatabase) -> Module { self.parent.module(db) } - pub fn parent_enum(&self, _db: &impl DefDatabase) -> Enum { + pub fn parent_enum(self, _db: &impl DefDatabase) -> Enum { self.parent } - pub fn name(&self, db: &impl DefDatabase) -> Option { + pub fn name(self, db: &impl DefDatabase) -> Option { db.enum_data(self.parent).variants[self.id].name.clone() } - pub fn fields(&self, db: &impl HirDatabase) -> Vec { + pub fn fields(self, db: &impl HirDatabase) -> Vec { self.variant_data(db) .fields() .into_iter() .flat_map(|it| it.iter()) - .map(|(id, _)| StructField { parent: (*self).into(), id }) + .map(|(id, _)| StructField { parent: self.into(), id }) .collect() } - pub fn field(&self, db: &impl HirDatabase, name: &Name) -> Option { + pub fn field(self, db: &impl HirDatabase, name: &Name) -> Option { self.variant_data(db) .fields() .into_iter() .flat_map(|it| it.iter()) .find(|(_id, data)| data.name == *name) - .map(|(id, _)| StructField { parent: (*self).into(), id }) + .map(|(id, _)| StructField { parent: self.into(), id }) } } @@ -517,11 +517,11 @@ impl DefWithBody { } /// Builds a resolver for code inside this item. - pub(crate) fn resolver(&self, db: &impl HirDatabase) -> Resolver { - match *self { - DefWithBody::Const(ref c) => c.resolver(db), - DefWithBody::Function(ref f) => f.resolver(db), - DefWithBody::Static(ref s) => s.resolver(db), + pub(crate) fn resolver(self, db: &impl HirDatabase) -> Resolver { + match self { + DefWithBody::Const(c) => c.resolver(db), + DefWithBody::Function(f) => f.resolver(db), + DefWithBody::Static(s) => s.resolver(db), } } } -- cgit v1.2.3 From 98d769a799e430f152e573c28f101d9d6aee5376 Mon Sep 17 00:00:00 2001 From: Jeremy Kolb Date: Fri, 5 Jul 2019 10:18:01 -0400 Subject: readability --- crates/ra_assists/src/split_import.rs | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/crates/ra_assists/src/split_import.rs b/crates/ra_assists/src/split_import.rs index 99088d9a5..a8feb67c8 100644 --- a/crates/ra_assists/src/split_import.rs +++ b/crates/ra_assists/src/split_import.rs @@ -10,7 +10,10 @@ pub(crate) fn split_import(mut ctx: AssistCtx) -> Option