PSI: Add parentheses around non-trivial callee expressions

#KT-8232 Fixed
This commit is contained in:
Alexey Sedunov
2015-06-25 16:18:18 +03:00
parent 5ac1fbf59b
commit 8c9863e759
5 changed files with 25 additions and 1 deletions
@@ -535,6 +535,16 @@ public class JetPsiUtil {
}
}
if (parentExpression instanceof JetCallExpression && currentInner == ((JetCallExpression) parentExpression).getCalleeExpression()) {
if (innerExpression instanceof JetSimpleNameExpression) return false;
if (PsiUtilPackage.getQualifiedExpressionForSelector(parentExpression) != null) return true;
return !(innerExpression instanceof JetThisExpression
|| innerExpression instanceof JetArrayAccessExpression
|| innerExpression instanceof JetConstantExpression
|| innerExpression instanceof JetStringTemplateExpression
|| innerExpression instanceof JetCallExpression);
}
IElementType innerOperation = getOperation(innerExpression);
IElementType parentOperation = getOperation(parentExpression);