java 8: anonymous class fields could be available later in next lambdas (IDEA-123731); narrow down scope of chained calls to the containing statement

This commit is contained in:
Anna Kozlova
2014-04-09 19:27:19 +02:00
parent d9cd272b07
commit ef82d76864
@@ -544,7 +544,7 @@ public class PsiImplUtil {
PsiClass aClass = member.getContainingClass();
if (aClass instanceof PsiAnonymousClass) {
//member from anonymous class can be called from outside the class
PsiElement methodCallExpr = PsiUtil.isLanguageLevel8OrHigher(aClass) ? PsiTreeUtil.getParentOfType(aClass, PsiMember.class)
PsiElement methodCallExpr = PsiUtil.isLanguageLevel8OrHigher(aClass) ? PsiTreeUtil.getTopmostParentOfType(aClass, PsiStatement.class)
: PsiTreeUtil.getParentOfType(aClass, PsiMethodCallExpression.class);
return new LocalSearchScope(methodCallExpr != null ? methodCallExpr : aClass);
}