mirror of
https://github.com/rust-lang/rust.git
synced 2025-06-04 19:29:07 +00:00
Split up collapsible_if
ui test
This commit is contained in:
parent
e8642c7a29
commit
175c78bc17
66
tests/ui/collapsible_else_if.fixed
Normal file
66
tests/ui/collapsible_else_if.fixed
Normal file
@ -0,0 +1,66 @@
|
|||||||
|
// run-rustfix
|
||||||
|
#![allow(clippy::cognitive_complexity, clippy::assertions_on_constants)]
|
||||||
|
|
||||||
|
#[rustfmt::skip]
|
||||||
|
#[warn(clippy::collapsible_if)]
|
||||||
|
fn main() {
|
||||||
|
let x = "hello";
|
||||||
|
let y = "world";
|
||||||
|
// Collapse `else { if .. }` to `else if ..`
|
||||||
|
if x == "hello" {
|
||||||
|
print!("Hello ");
|
||||||
|
} else if y == "world" {
|
||||||
|
println!("world!")
|
||||||
|
}
|
||||||
|
|
||||||
|
if x == "hello" {
|
||||||
|
print!("Hello ");
|
||||||
|
} else if let Some(42) = Some(42) {
|
||||||
|
println!("world!")
|
||||||
|
}
|
||||||
|
|
||||||
|
if x == "hello" {
|
||||||
|
print!("Hello ");
|
||||||
|
} else if y == "world" {
|
||||||
|
println!("world")
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
println!("!")
|
||||||
|
}
|
||||||
|
|
||||||
|
if x == "hello" {
|
||||||
|
print!("Hello ");
|
||||||
|
} else if let Some(42) = Some(42) {
|
||||||
|
println!("world")
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
println!("!")
|
||||||
|
}
|
||||||
|
|
||||||
|
if let Some(42) = Some(42) {
|
||||||
|
print!("Hello ");
|
||||||
|
} else if let Some(42) = Some(42) {
|
||||||
|
println!("world")
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
println!("!")
|
||||||
|
}
|
||||||
|
|
||||||
|
if let Some(42) = Some(42) {
|
||||||
|
print!("Hello ");
|
||||||
|
} else if x == "hello" {
|
||||||
|
println!("world")
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
println!("!")
|
||||||
|
}
|
||||||
|
|
||||||
|
if let Some(42) = Some(42) {
|
||||||
|
print!("Hello ");
|
||||||
|
} else if let Some(42) = Some(42) {
|
||||||
|
println!("world")
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
println!("!")
|
||||||
|
}
|
||||||
|
}
|
80
tests/ui/collapsible_else_if.rs
Normal file
80
tests/ui/collapsible_else_if.rs
Normal file
@ -0,0 +1,80 @@
|
|||||||
|
// run-rustfix
|
||||||
|
#![allow(clippy::cognitive_complexity, clippy::assertions_on_constants)]
|
||||||
|
|
||||||
|
#[rustfmt::skip]
|
||||||
|
#[warn(clippy::collapsible_if)]
|
||||||
|
fn main() {
|
||||||
|
let x = "hello";
|
||||||
|
let y = "world";
|
||||||
|
// Collapse `else { if .. }` to `else if ..`
|
||||||
|
if x == "hello" {
|
||||||
|
print!("Hello ");
|
||||||
|
} else {
|
||||||
|
if y == "world" {
|
||||||
|
println!("world!")
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
if x == "hello" {
|
||||||
|
print!("Hello ");
|
||||||
|
} else {
|
||||||
|
if let Some(42) = Some(42) {
|
||||||
|
println!("world!")
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
if x == "hello" {
|
||||||
|
print!("Hello ");
|
||||||
|
} else {
|
||||||
|
if y == "world" {
|
||||||
|
println!("world")
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
println!("!")
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
if x == "hello" {
|
||||||
|
print!("Hello ");
|
||||||
|
} else {
|
||||||
|
if let Some(42) = Some(42) {
|
||||||
|
println!("world")
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
println!("!")
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
if let Some(42) = Some(42) {
|
||||||
|
print!("Hello ");
|
||||||
|
} else {
|
||||||
|
if let Some(42) = Some(42) {
|
||||||
|
println!("world")
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
println!("!")
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
if let Some(42) = Some(42) {
|
||||||
|
print!("Hello ");
|
||||||
|
} else {
|
||||||
|
if x == "hello" {
|
||||||
|
println!("world")
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
println!("!")
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
if let Some(42) = Some(42) {
|
||||||
|
print!("Hello ");
|
||||||
|
} else {
|
||||||
|
if let Some(42) = Some(42) {
|
||||||
|
println!("world")
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
println!("!")
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
154
tests/ui/collapsible_else_if.stderr
Normal file
154
tests/ui/collapsible_else_if.stderr
Normal file
@ -0,0 +1,154 @@
|
|||||||
|
error: this `else { if .. }` block can be collapsed
|
||||||
|
--> $DIR/collapsible_else_if.rs:12:12
|
||||||
|
|
|
||||||
|
LL | } else {
|
||||||
|
| ____________^
|
||||||
|
LL | | if y == "world" {
|
||||||
|
LL | | println!("world!")
|
||||||
|
LL | | }
|
||||||
|
LL | | }
|
||||||
|
| |_____^
|
||||||
|
|
|
||||||
|
= note: `-D clippy::collapsible-if` implied by `-D warnings`
|
||||||
|
help: try
|
||||||
|
|
|
||||||
|
LL | } else if y == "world" {
|
||||||
|
LL | println!("world!")
|
||||||
|
LL | }
|
||||||
|
|
|
||||||
|
|
||||||
|
error: this `else { if .. }` block can be collapsed
|
||||||
|
--> $DIR/collapsible_else_if.rs:20:12
|
||||||
|
|
|
||||||
|
LL | } else {
|
||||||
|
| ____________^
|
||||||
|
LL | | if let Some(42) = Some(42) {
|
||||||
|
LL | | println!("world!")
|
||||||
|
LL | | }
|
||||||
|
LL | | }
|
||||||
|
| |_____^
|
||||||
|
|
|
||||||
|
help: try
|
||||||
|
|
|
||||||
|
LL | } else if let Some(42) = Some(42) {
|
||||||
|
LL | println!("world!")
|
||||||
|
LL | }
|
||||||
|
|
|
||||||
|
|
||||||
|
error: this `else { if .. }` block can be collapsed
|
||||||
|
--> $DIR/collapsible_else_if.rs:28:12
|
||||||
|
|
|
||||||
|
LL | } else {
|
||||||
|
| ____________^
|
||||||
|
LL | | if y == "world" {
|
||||||
|
LL | | println!("world")
|
||||||
|
LL | | }
|
||||||
|
... |
|
||||||
|
LL | | }
|
||||||
|
LL | | }
|
||||||
|
| |_____^
|
||||||
|
|
|
||||||
|
help: try
|
||||||
|
|
|
||||||
|
LL | } else if y == "world" {
|
||||||
|
LL | println!("world")
|
||||||
|
LL | }
|
||||||
|
LL | else {
|
||||||
|
LL | println!("!")
|
||||||
|
LL | }
|
||||||
|
|
|
||||||
|
|
||||||
|
error: this `else { if .. }` block can be collapsed
|
||||||
|
--> $DIR/collapsible_else_if.rs:39:12
|
||||||
|
|
|
||||||
|
LL | } else {
|
||||||
|
| ____________^
|
||||||
|
LL | | if let Some(42) = Some(42) {
|
||||||
|
LL | | println!("world")
|
||||||
|
LL | | }
|
||||||
|
... |
|
||||||
|
LL | | }
|
||||||
|
LL | | }
|
||||||
|
| |_____^
|
||||||
|
|
|
||||||
|
help: try
|
||||||
|
|
|
||||||
|
LL | } else if let Some(42) = Some(42) {
|
||||||
|
LL | println!("world")
|
||||||
|
LL | }
|
||||||
|
LL | else {
|
||||||
|
LL | println!("!")
|
||||||
|
LL | }
|
||||||
|
|
|
||||||
|
|
||||||
|
error: this `else { if .. }` block can be collapsed
|
||||||
|
--> $DIR/collapsible_else_if.rs:50:12
|
||||||
|
|
|
||||||
|
LL | } else {
|
||||||
|
| ____________^
|
||||||
|
LL | | if let Some(42) = Some(42) {
|
||||||
|
LL | | println!("world")
|
||||||
|
LL | | }
|
||||||
|
... |
|
||||||
|
LL | | }
|
||||||
|
LL | | }
|
||||||
|
| |_____^
|
||||||
|
|
|
||||||
|
help: try
|
||||||
|
|
|
||||||
|
LL | } else if let Some(42) = Some(42) {
|
||||||
|
LL | println!("world")
|
||||||
|
LL | }
|
||||||
|
LL | else {
|
||||||
|
LL | println!("!")
|
||||||
|
LL | }
|
||||||
|
|
|
||||||
|
|
||||||
|
error: this `else { if .. }` block can be collapsed
|
||||||
|
--> $DIR/collapsible_else_if.rs:61:12
|
||||||
|
|
|
||||||
|
LL | } else {
|
||||||
|
| ____________^
|
||||||
|
LL | | if x == "hello" {
|
||||||
|
LL | | println!("world")
|
||||||
|
LL | | }
|
||||||
|
... |
|
||||||
|
LL | | }
|
||||||
|
LL | | }
|
||||||
|
| |_____^
|
||||||
|
|
|
||||||
|
help: try
|
||||||
|
|
|
||||||
|
LL | } else if x == "hello" {
|
||||||
|
LL | println!("world")
|
||||||
|
LL | }
|
||||||
|
LL | else {
|
||||||
|
LL | println!("!")
|
||||||
|
LL | }
|
||||||
|
|
|
||||||
|
|
||||||
|
error: this `else { if .. }` block can be collapsed
|
||||||
|
--> $DIR/collapsible_else_if.rs:72:12
|
||||||
|
|
|
||||||
|
LL | } else {
|
||||||
|
| ____________^
|
||||||
|
LL | | if let Some(42) = Some(42) {
|
||||||
|
LL | | println!("world")
|
||||||
|
LL | | }
|
||||||
|
... |
|
||||||
|
LL | | }
|
||||||
|
LL | | }
|
||||||
|
| |_____^
|
||||||
|
|
|
||||||
|
help: try
|
||||||
|
|
|
||||||
|
LL | } else if let Some(42) = Some(42) {
|
||||||
|
LL | println!("world")
|
||||||
|
LL | }
|
||||||
|
LL | else {
|
||||||
|
LL | println!("!")
|
||||||
|
LL | }
|
||||||
|
|
|
||||||
|
|
||||||
|
error: aborting due to 7 previous errors
|
||||||
|
|
@ -30,64 +30,6 @@ fn main() {
|
|||||||
println!("world!")
|
println!("world!")
|
||||||
}
|
}
|
||||||
|
|
||||||
// Collapse `else { if .. }` to `else if ..`
|
|
||||||
if x == "hello" {
|
|
||||||
print!("Hello ");
|
|
||||||
} else if y == "world" {
|
|
||||||
println!("world!")
|
|
||||||
}
|
|
||||||
|
|
||||||
if x == "hello" {
|
|
||||||
print!("Hello ");
|
|
||||||
} else if let Some(42) = Some(42) {
|
|
||||||
println!("world!")
|
|
||||||
}
|
|
||||||
|
|
||||||
if x == "hello" {
|
|
||||||
print!("Hello ");
|
|
||||||
} else if y == "world" {
|
|
||||||
println!("world")
|
|
||||||
}
|
|
||||||
else {
|
|
||||||
println!("!")
|
|
||||||
}
|
|
||||||
|
|
||||||
if x == "hello" {
|
|
||||||
print!("Hello ");
|
|
||||||
} else if let Some(42) = Some(42) {
|
|
||||||
println!("world")
|
|
||||||
}
|
|
||||||
else {
|
|
||||||
println!("!")
|
|
||||||
}
|
|
||||||
|
|
||||||
if let Some(42) = Some(42) {
|
|
||||||
print!("Hello ");
|
|
||||||
} else if let Some(42) = Some(42) {
|
|
||||||
println!("world")
|
|
||||||
}
|
|
||||||
else {
|
|
||||||
println!("!")
|
|
||||||
}
|
|
||||||
|
|
||||||
if let Some(42) = Some(42) {
|
|
||||||
print!("Hello ");
|
|
||||||
} else if x == "hello" {
|
|
||||||
println!("world")
|
|
||||||
}
|
|
||||||
else {
|
|
||||||
println!("!")
|
|
||||||
}
|
|
||||||
|
|
||||||
if let Some(42) = Some(42) {
|
|
||||||
print!("Hello ");
|
|
||||||
} else if let Some(42) = Some(42) {
|
|
||||||
println!("world")
|
|
||||||
}
|
|
||||||
else {
|
|
||||||
println!("!")
|
|
||||||
}
|
|
||||||
|
|
||||||
// Works because any if with an else statement cannot be collapsed.
|
// Works because any if with an else statement cannot be collapsed.
|
||||||
if x == "hello" {
|
if x == "hello" {
|
||||||
if y == "world" {
|
if y == "world" {
|
||||||
|
@ -42,78 +42,6 @@ fn main() {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
// Collapse `else { if .. }` to `else if ..`
|
|
||||||
if x == "hello" {
|
|
||||||
print!("Hello ");
|
|
||||||
} else {
|
|
||||||
if y == "world" {
|
|
||||||
println!("world!")
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
if x == "hello" {
|
|
||||||
print!("Hello ");
|
|
||||||
} else {
|
|
||||||
if let Some(42) = Some(42) {
|
|
||||||
println!("world!")
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
if x == "hello" {
|
|
||||||
print!("Hello ");
|
|
||||||
} else {
|
|
||||||
if y == "world" {
|
|
||||||
println!("world")
|
|
||||||
}
|
|
||||||
else {
|
|
||||||
println!("!")
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
if x == "hello" {
|
|
||||||
print!("Hello ");
|
|
||||||
} else {
|
|
||||||
if let Some(42) = Some(42) {
|
|
||||||
println!("world")
|
|
||||||
}
|
|
||||||
else {
|
|
||||||
println!("!")
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
if let Some(42) = Some(42) {
|
|
||||||
print!("Hello ");
|
|
||||||
} else {
|
|
||||||
if let Some(42) = Some(42) {
|
|
||||||
println!("world")
|
|
||||||
}
|
|
||||||
else {
|
|
||||||
println!("!")
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
if let Some(42) = Some(42) {
|
|
||||||
print!("Hello ");
|
|
||||||
} else {
|
|
||||||
if x == "hello" {
|
|
||||||
println!("world")
|
|
||||||
}
|
|
||||||
else {
|
|
||||||
println!("!")
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
if let Some(42) = Some(42) {
|
|
||||||
print!("Hello ");
|
|
||||||
} else {
|
|
||||||
if let Some(42) = Some(42) {
|
|
||||||
println!("world")
|
|
||||||
}
|
|
||||||
else {
|
|
||||||
println!("!")
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
// Works because any if with an else statement cannot be collapsed.
|
// Works because any if with an else statement cannot be collapsed.
|
||||||
if x == "hello" {
|
if x == "hello" {
|
||||||
if y == "world" {
|
if y == "world" {
|
||||||
|
@ -101,159 +101,8 @@ LL | println!("world!")
|
|||||||
LL | }
|
LL | }
|
||||||
|
|
|
|
||||||
|
|
||||||
error: this `else { if .. }` block can be collapsed
|
|
||||||
--> $DIR/collapsible_if.rs:48:12
|
|
||||||
|
|
|
||||||
LL | } else {
|
|
||||||
| ____________^
|
|
||||||
LL | | if y == "world" {
|
|
||||||
LL | | println!("world!")
|
|
||||||
LL | | }
|
|
||||||
LL | | }
|
|
||||||
| |_____^
|
|
||||||
|
|
|
||||||
help: try
|
|
||||||
|
|
|
||||||
LL | } else if y == "world" {
|
|
||||||
LL | println!("world!")
|
|
||||||
LL | }
|
|
||||||
|
|
|
||||||
|
|
||||||
error: this `else { if .. }` block can be collapsed
|
|
||||||
--> $DIR/collapsible_if.rs:56:12
|
|
||||||
|
|
|
||||||
LL | } else {
|
|
||||||
| ____________^
|
|
||||||
LL | | if let Some(42) = Some(42) {
|
|
||||||
LL | | println!("world!")
|
|
||||||
LL | | }
|
|
||||||
LL | | }
|
|
||||||
| |_____^
|
|
||||||
|
|
|
||||||
help: try
|
|
||||||
|
|
|
||||||
LL | } else if let Some(42) = Some(42) {
|
|
||||||
LL | println!("world!")
|
|
||||||
LL | }
|
|
||||||
|
|
|
||||||
|
|
||||||
error: this `else { if .. }` block can be collapsed
|
|
||||||
--> $DIR/collapsible_if.rs:64:12
|
|
||||||
|
|
|
||||||
LL | } else {
|
|
||||||
| ____________^
|
|
||||||
LL | | if y == "world" {
|
|
||||||
LL | | println!("world")
|
|
||||||
LL | | }
|
|
||||||
... |
|
|
||||||
LL | | }
|
|
||||||
LL | | }
|
|
||||||
| |_____^
|
|
||||||
|
|
|
||||||
help: try
|
|
||||||
|
|
|
||||||
LL | } else if y == "world" {
|
|
||||||
LL | println!("world")
|
|
||||||
LL | }
|
|
||||||
LL | else {
|
|
||||||
LL | println!("!")
|
|
||||||
LL | }
|
|
||||||
|
|
|
||||||
|
|
||||||
error: this `else { if .. }` block can be collapsed
|
|
||||||
--> $DIR/collapsible_if.rs:75:12
|
|
||||||
|
|
|
||||||
LL | } else {
|
|
||||||
| ____________^
|
|
||||||
LL | | if let Some(42) = Some(42) {
|
|
||||||
LL | | println!("world")
|
|
||||||
LL | | }
|
|
||||||
... |
|
|
||||||
LL | | }
|
|
||||||
LL | | }
|
|
||||||
| |_____^
|
|
||||||
|
|
|
||||||
help: try
|
|
||||||
|
|
|
||||||
LL | } else if let Some(42) = Some(42) {
|
|
||||||
LL | println!("world")
|
|
||||||
LL | }
|
|
||||||
LL | else {
|
|
||||||
LL | println!("!")
|
|
||||||
LL | }
|
|
||||||
|
|
|
||||||
|
|
||||||
error: this `else { if .. }` block can be collapsed
|
|
||||||
--> $DIR/collapsible_if.rs:86:12
|
|
||||||
|
|
|
||||||
LL | } else {
|
|
||||||
| ____________^
|
|
||||||
LL | | if let Some(42) = Some(42) {
|
|
||||||
LL | | println!("world")
|
|
||||||
LL | | }
|
|
||||||
... |
|
|
||||||
LL | | }
|
|
||||||
LL | | }
|
|
||||||
| |_____^
|
|
||||||
|
|
|
||||||
help: try
|
|
||||||
|
|
|
||||||
LL | } else if let Some(42) = Some(42) {
|
|
||||||
LL | println!("world")
|
|
||||||
LL | }
|
|
||||||
LL | else {
|
|
||||||
LL | println!("!")
|
|
||||||
LL | }
|
|
||||||
|
|
|
||||||
|
|
||||||
error: this `else { if .. }` block can be collapsed
|
|
||||||
--> $DIR/collapsible_if.rs:97:12
|
|
||||||
|
|
|
||||||
LL | } else {
|
|
||||||
| ____________^
|
|
||||||
LL | | if x == "hello" {
|
|
||||||
LL | | println!("world")
|
|
||||||
LL | | }
|
|
||||||
... |
|
|
||||||
LL | | }
|
|
||||||
LL | | }
|
|
||||||
| |_____^
|
|
||||||
|
|
|
||||||
help: try
|
|
||||||
|
|
|
||||||
LL | } else if x == "hello" {
|
|
||||||
LL | println!("world")
|
|
||||||
LL | }
|
|
||||||
LL | else {
|
|
||||||
LL | println!("!")
|
|
||||||
LL | }
|
|
||||||
|
|
|
||||||
|
|
||||||
error: this `else { if .. }` block can be collapsed
|
|
||||||
--> $DIR/collapsible_if.rs:108:12
|
|
||||||
|
|
|
||||||
LL | } else {
|
|
||||||
| ____________^
|
|
||||||
LL | | if let Some(42) = Some(42) {
|
|
||||||
LL | | println!("world")
|
|
||||||
LL | | }
|
|
||||||
... |
|
|
||||||
LL | | }
|
|
||||||
LL | | }
|
|
||||||
| |_____^
|
|
||||||
|
|
|
||||||
help: try
|
|
||||||
|
|
|
||||||
LL | } else if let Some(42) = Some(42) {
|
|
||||||
LL | println!("world")
|
|
||||||
LL | }
|
|
||||||
LL | else {
|
|
||||||
LL | println!("!")
|
|
||||||
LL | }
|
|
||||||
|
|
|
||||||
|
|
||||||
error: this if statement can be collapsed
|
error: this if statement can be collapsed
|
||||||
--> $DIR/collapsible_if.rs:167:5
|
--> $DIR/collapsible_if.rs:95:5
|
||||||
|
|
|
|
||||||
LL | / if x == "hello" {
|
LL | / if x == "hello" {
|
||||||
LL | | if y == "world" { // Collapsible
|
LL | | if y == "world" { // Collapsible
|
||||||
@ -269,5 +118,5 @@ LL | println!("Hello world!");
|
|||||||
LL | }
|
LL | }
|
||||||
|
|
|
|
||||||
|
|
||||||
error: aborting due to 14 previous errors
|
error: aborting due to 7 previous errors
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user