boolean (@NotNull UExpression expression, final Set<? super PsiModifierListOwner> nonNlsTargets) { UExpression parent = UastUtils.skipParenthesizedExprDown(JavaI18nUtil.getTopLevelExpression(expression, true)); if (parent instanceof UResolvable && isNonNlsCall((UResolvable)parent, nonNlsTargets)) { return true; } if (UastExpressionUtils.isAssignment(parent)) { UExpression operand = ((UBinaryExpression)parent).getLeftOperand(); if (operand instanceof UReferenceExpression && isNonNlsCall((UReferenceExpression)operand, nonNlsTargets)) return true; } if (parent instanceof UCallExpression) { UElement parentOfNew = UastUtils.skipParenthesizedExprUp(parent.getUastParent()); if (parentOfNew instanceof ULocalVariable newVariable) { if (annotatedAsNonNls(newVariable.getPsi())) { return true; } PsiElement variableJavaPsi = newVariable.getJavaPsi(); if (variableJavaPsi instanceof PsiModifierListOwner) { nonNlsTargets.add(((PsiModifierListOwner)variableJavaPsi)); } return false; } } return false; }