diff --git a/java/java-impl-inspections/src/com/intellij/codeInspection/classCanBeRecord/ConvertToRecordProcessor.java b/java/java-impl-inspections/src/com/intellij/codeInspection/classCanBeRecord/ConvertToRecordProcessor.java index dafd7e584e91..19f74349b11a 100644 --- a/java/java-impl-inspections/src/com/intellij/codeInspection/classCanBeRecord/ConvertToRecordProcessor.java +++ b/java/java-impl-inspections/src/com/intellij/codeInspection/classCanBeRecord/ConvertToRecordProcessor.java @@ -14,6 +14,7 @@ import com.intellij.psi.codeStyle.CodeStyleManager; import com.intellij.psi.impl.light.LightModifierList; import com.intellij.psi.javadoc.PsiDocComment; import com.intellij.psi.javadoc.PsiDocTag; +import com.intellij.psi.javadoc.PsiDocTagValue; import com.intellij.psi.search.searches.ReferencesSearch; import com.intellij.psi.tree.IElementType; import com.intellij.psi.util.PsiTreeUtil; @@ -305,6 +306,10 @@ class ConvertToRecordProcessor extends BaseRefactoringProcessor { if (target instanceof PsiReferenceExpression refExpr && !PsiUtil.isAccessedForWriting(refExpr) && !isAccessible(target, field)) { refExpr.replace(JavaPsiFacade.getElementFactory(myProject).createExpressionFromText(refExpr.getText() + "()", refExpr)); } + if (target instanceof PsiDocTagValue docTagValue) { + PsiDocTag docTag = JavaPsiFacade.getElementFactory(myProject).createDocTagFromText("@see " + docTagValue.getText() + "()"); + docTagValue.replace(Objects.requireNonNull(docTag.getValueElement())); + } } } } diff --git a/java/java-tests/testData/inspection/classCanBeRecord/afterUseAccessors.java b/java/java-tests/testData/inspection/classCanBeRecord/afterUseAccessors.java index 462ef81e7ff6..81d735c06430 100644 --- a/java/java-tests/testData/inspection/classCanBeRecord/afterUseAccessors.java +++ b/java/java-tests/testData/inspection/classCanBeRecord/afterUseAccessors.java @@ -9,7 +9,9 @@ public record SpreadSymbol(String symbol, int legs) { class Use { /** - * @see SpreadSymbol#legs + * You may also want to use {@link SpreadSymbol#legs()}. + * + * @see SpreadSymbol#legs() */ public static void main(String[] args) { SpreadSymbol ss = new SpreadSymbol("123", 123); diff --git a/java/java-tests/testData/inspection/classCanBeRecord/beforeUseAccessors.java b/java/java-tests/testData/inspection/classCanBeRecord/beforeUseAccessors.java index 7db5c0ff78fe..773cd8efcb6a 100644 --- a/java/java-tests/testData/inspection/classCanBeRecord/beforeUseAccessors.java +++ b/java/java-tests/testData/inspection/classCanBeRecord/beforeUseAccessors.java @@ -16,6 +16,8 @@ public class SpreadSymbol { class Use { /** + * You may also want to use {@link SpreadSymbol#legs}. + * * @see SpreadSymbol#legs */ public static void main(String[] args) {