| #![warn(clippy::obfuscated_if_else)] | |
| #![allow( | |
| clippy::unnecessary_lazy_evaluations, | |
| clippy::unit_arg, | |
| clippy::unused_unit, | |
| clippy::unwrap_or_default | |
| )] | |
| fn main() { | |
| if true { "a" } else { "b" }; | |
| //~^ obfuscated_if_else | |
| if true { "a" } else { "b" }; | |
| //~^ obfuscated_if_else | |
| let a = 1; | |
| if a == 1 { "a" } else { "b" }; | |
| //~^ obfuscated_if_else | |
| if a == 1 { "a" } else { "b" }; | |
| //~^ obfuscated_if_else | |
| let partial = (a == 1).then_some("a"); | |
| partial.unwrap_or("b"); // not lint | |
| let mut a = 0; | |
| if true { a += 1 } else { () }; | |
| //~^ obfuscated_if_else | |
| if true { () } else { a += 2 }; | |
| //~^ obfuscated_if_else | |
| let mut n = 1; | |
| if true { n = 1 } else { n = 2 }; | |
| //~^ obfuscated_if_else | |
| if true { 1 } else { n * 2 }; | |
| //~^ obfuscated_if_else | |
| if true { n += 1 } else { () }; | |
| //~^ obfuscated_if_else | |
| let _ = if true { 1 } else { n * 2 }; | |
| //~^ obfuscated_if_else | |
| if true { 1 } else { Default::default() }; | |
| //~^ obfuscated_if_else | |
| let partial = true.then_some(1); | |
| partial.unwrap_or_else(|| n * 2); // not lint | |
| if true { () } else { Default::default() }; | |
| //~^ obfuscated_if_else | |
| if true { () } else { Default::default() }; | |
| //~^ obfuscated_if_else | |
| if true { 1 } else { Default::default() }; | |
| //~^ obfuscated_if_else | |
| if true { 1 } else { Default::default() }; | |
| //~^ obfuscated_if_else | |
| } | |
| fn issue11141() { | |
| // Parentheses are required around the left side of a binary expression | |
| let _ = (if true { 40 } else { 17 }) | 2; | |
| //~^ obfuscated_if_else | |
| // Parentheses are required only for the leftmost expression | |
| let _ = (if true { 30 } else { 17 }) | if true { 2 } else { 3 } | if true { 10 } else { 1 }; | |
| //~^ obfuscated_if_else | |
| //~| obfuscated_if_else | |
| //~| obfuscated_if_else | |
| // Parentheses are not required around the right side of a binary expression | |
| let _ = 2 | if true { 40 } else { 17 }; | |
| //~^ obfuscated_if_else | |
| // Parentheses are not required for a cast | |
| let _ = if true { 42 } else { 17 } as u8; | |
| //~^ obfuscated_if_else | |
| // Parentheses are not required for a deref | |
| let _ = *if true { &42 } else { &17 }; | |
| //~^ obfuscated_if_else | |
| // Parentheses are not required for a deref followed by a cast | |
| let _ = *if true { &42 } else { &17 } as u8; | |
| //~^ obfuscated_if_else | |
| } | |
| #[allow(clippy::useless_format)] | |
| fn issue16288() { | |
| if true { format!("this is a test") } else { Default::default() }; | |
| //~^ obfuscated_if_else | |
| } |