Make predicate non-nullable

This commit is contained in:
Alexey Sedunov
2013-04-12 20:46:59 +04:00
parent 216f865658
commit 89030d1ced
2 changed files with 11 additions and 6 deletions
@@ -634,12 +634,10 @@ public class JetPsiUtil {
}
@Nullable
public static JetElement getOutermostLastBlockElement(
@Nullable JetElement element,
@Nullable Predicate<JetElement> checkElement) {
public static JetElement getOutermostLastBlockElement(@Nullable JetElement element, @NotNull Predicate<JetElement> checkElement) {
if (element == null) return null;
if (!(element instanceof JetBlockExpression)) return checkElement == null || checkElement.apply(element) ? element : null;
if (!(element instanceof JetBlockExpression)) return checkElement.apply(element) ? element : null;
JetBlockExpression block = (JetBlockExpression)element;
int n = block.getStatements().size();
@@ -647,7 +645,7 @@ public class JetPsiUtil {
if (n == 0) return null;
JetElement lastElement = block.getStatements().get(n - 1);
return checkElement == null || checkElement.apply(lastElement) ? lastElement : null;
return checkElement.apply(lastElement) ? lastElement : null;
}
@Nullable
@@ -692,4 +690,11 @@ public class JetPsiUtil {
}
return (elseCount == 1);
}
public static final Predicate<JetElement> ANY_JET_ELEMENT = new Predicate<JetElement>() {
@Override
public boolean apply(@Nullable JetElement input) {
return true;
}
};
}
@@ -46,7 +46,7 @@ public class BranchedUnfoldingUtils {
}
private static JetExpression getOutermostLastBlockElement(@Nullable JetExpression expression) {
return (JetExpression) JetPsiUtil.getOutermostLastBlockElement(expression, null);
return (JetExpression) JetPsiUtil.getOutermostLastBlockElement(expression, JetPsiUtil.ANY_JET_ELEMENT);
}
private static void unfoldAssignmentToIf(@NotNull JetBinaryExpression assignment) {