void (@NotNull Project project, @NotNull PsiElement element, @NotNull ModPsiUpdater updater) { final PsiElement parent = element.getParent(); final PsiElement grandParent = parent.getParent(); if (!(grandParent instanceof PsiMethodCallExpression methodCallExpression)) { return; } final PsiReferenceExpression methodExpression = methodCallExpression.getMethodExpression(); CommentTracker commentTracker = new CommentTracker(); @NonNls final StringBuilder newExpression = new StringBuilder(); final PsiExpression qualifierExpression = methodExpression.getQualifierExpression(); if (qualifierExpression != null) { newExpression.append(commentTracker.text(qualifierExpression)); newExpression.append('.'); } if (put) { newExpression.append("setProperty("); } else { newExpression.append("getProperty("); } final PsiExpressionList argumentList = methodCallExpression.getArgumentList(); final PsiExpression[] arguments = argumentList.getExpressions(); newExpression.append(StringUtil.join(arguments, arg -> commentTracker.text(arg), ",")); newExpression.append(')'); PsiReplacementUtil.replaceExpression(methodCallExpression, newExpression.toString(), commentTracker); }