IDEA-70913 smart step into should not propose methods from both branches in conditional expressions - support if statement

This commit is contained in:
Egor.Ushakov
2016-08-31 12:44:59 +03:00
parent 877358aea3
commit 950322165f
2 changed files with 32 additions and 15 deletions
@@ -423,11 +423,14 @@ public abstract class DebuggerUtils {
}
}
public static boolean hasSideEffects(PsiElement element) {
public static boolean hasSideEffects(@Nullable PsiElement element) {
return hasSideEffectsOrReferencesMissingVars(element, null);
}
public static boolean hasSideEffectsOrReferencesMissingVars(PsiElement element, @Nullable final Set<String> visibleLocalVariables) {
public static boolean hasSideEffectsOrReferencesMissingVars(@Nullable PsiElement element, @Nullable final Set<String> visibleLocalVariables) {
if (element == null) {
return false;
}
final Ref<Boolean> rv = new Ref<>(Boolean.FALSE);
element.accept(new JavaRecursiveElementWalkingVisitor() {
@Override