Skip to content

Commit fc64053

Browse files
committed
Merge pull request #819 from oli-obk/more_whitelisted_names
whitelist more non-expressive-name false positives
2 parents 62bc642 + 73ee3e6 commit fc64053

File tree

2 files changed

+13
-8
lines changed

2 files changed

+13
-8
lines changed

src/non_expressive_names.rs

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -60,6 +60,8 @@ struct SimilarNamesLocalVisitor<'a, 'b: 'a> {
6060
const WHITELIST: &'static [&'static [&'static str]] = &[
6161
&["parsed", "parser"],
6262
&["lhs", "rhs"],
63+
&["tx", "rx"],
64+
&["set", "get"],
6365
];
6466

6567
struct SimilarNamesNameVisitor<'a, 'b: 'a, 'c: 'b>(&'a mut SimilarNamesLocalVisitor<'b, 'c>);
@@ -88,13 +90,11 @@ fn whitelisted(interned_name: &str, list: &[&str]) -> bool {
8890
}
8991
for name in list {
9092
// name_*
91-
let allow_start = name.chars().chain(Some('_'));
92-
if interned_name.chars().zip(allow_start).all(|(l, r)| l == r) {
93+
if interned_name.chars().zip(name.chars()).all(|(l, r)| l == r) {
9394
return true;
9495
}
9596
// *_name
96-
let allow_end = Some('_').into_iter().chain(name.chars());
97-
if interned_name.chars().rev().zip(allow_end.rev()).all(|(l, r)| l == r) {
97+
if interned_name.chars().rev().zip(name.chars().rev()).all(|(l, r)| l == r) {
9898
return true;
9999
}
100100
}

tests/compile-fail/non_expressive_names.rs

Lines changed: 9 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,6 @@
1111
//~| NOTE: lint level defined here
1212
//~| NOTE: lint level defined here
1313
//~| NOTE: lint level defined here
14-
//~| NOTE: lint level defined here
1514
#![allow(unused)]
1615

1716
fn main() {
@@ -45,9 +44,8 @@ fn main() {
4544
let bla_rhs: i32;
4645
let bla_lhs: i32;
4746

48-
let blubrhs: i32; //~ NOTE: existing binding defined here
49-
let blublhs: i32; //~ ERROR: name is too similar
50-
//~| HELP: for further information visit
47+
let blubrhs: i32;
48+
let blublhs: i32;
5149

5250
let blubx: i32; //~ NOTE: existing binding defined here
5351
let bluby: i32; //~ ERROR: name is too similar
@@ -83,6 +81,13 @@ fn main() {
8381
let parsee: i32; //~ ERROR: name is too similar
8482
//~| HELP: for further information visit
8583
//~| HELP: separate the discriminating character by an underscore like: `parse_e`
84+
85+
let setter: i32;
86+
let getter: i32;
87+
let tx1: i32;
88+
let rx1: i32;
89+
let tx_cake: i32;
90+
let rx_cake: i32;
8691
}
8792

8893
#[derive(Clone, Debug)]

0 commit comments

Comments
 (0)