OptionalToIfInspection: added inspection to desugar optional chain to sequence of if statements (IDEA-212269)

GitOrigin-RevId: c83b70e05544529b3dfffe24bc87997910edcb56
This commit is contained in:
Artemiy Sartakov
2019-08-07 17:02:43 +03:00
committed by intellij-monorepo-bot
parent 987f5c84d3
commit 6f1efb8fc0
51 changed files with 2953 additions and 553 deletions
@@ -0,0 +1,22 @@
// "Fix all 'Optional can be replaced with sequence of if statements' problems in file" "true"
class Test {
String reusesVariable(String in) {
return Optional.of<caret>(in).map(s -> toName(s)).or(() -> Optional.of(toDefaultName())).get();
}
String removesRedundantAssignment(String in) {
return Optional.of(in).or(() -> Optional.of(toDefaultName())).or(() -> Optional.of(toDefaultName())).get();
}
private String toName(String str) {
if (str.startsWith("name")) return str.substring(4);
return null;
}
private String toDefaultName() {
return "defaultName";
}
}