A-lintgood first issue
Métriques du dépôt
- Stars
- (10 406 stars)
- Métriques de merge PR
- (Merge moyen 19j 22h) (113 PRs mergées en 30 j)
Description
What it does
This lint should prohibit placing bool returning if statements as the expression inside another if statement. Currently, there appears to be no limit to the depth of stacked if's permitted by both rust fmt and clippy
Advantage
- Stacked
if's are hard to read
Drawbacks
- Ternary-style expressions couldn't be used inside an
ifstatement, but I personally think that's poor form
Example
if if if a == b {
b == c
} else {
a == c
} {
a == d
} else {
c == d
} {
println!("True!");
} else {
println!("False!");
}
Could be written as:
let expression_1 = if a == b {
b == c
} else {
a == c
};
let expression_2 = if expression_1 {
a == d
} else {
c == d
};
if expression_2 {
println!("True!");
} else {
println!("False!");
}