boolean (@NotNull PsiElement element, @Nullable PsiElement context) { if (element == context || element instanceof PyStringLiteralExpression || element instanceof PsiComment) { return true; } else if (element instanceof PyParenthesizedExpression) { final PyExpression contained = ((PyParenthesizedExpression)element).getContainedExpression(); return contained != null && isStringLiteralPart(contained, context); } else if (element instanceof PyBinaryExpression expr) { final PyExpression left = expr.getLeftExpression(); final PyExpression right = expr.getRightExpression(); if (expr.isOperator("+")) { return isStringLiteralPart(left, context) || right != null && isStringLiteralPart(right, context); } else if (expr.isOperator("%")) { return right != context && isStringLiteralPart(left, context); } return false; } else if (element instanceof PyCallExpression) { final PyExpression qualifier = getFormatCallQualifier((PyCallExpression)element); return qualifier != null && isStringLiteralPart(qualifier, context); } else if (element instanceof PyReferenceExpression) { final PyCallExpression callExpr = PyCallExpressionNavigator.getPyCallExpressionByCallee(element); return callExpr != null && isStringLiteralPart(callExpr, context); } return false; }