mirror of
https://gitflic.ru/project/openide/openide.git
synced 2026-09-27 10:03:11 +07:00
[java-inspections] ConvertRecordToClass: reformat code
Also some very minor simplifications. GitOrigin-RevId: 6caed0d407cf57a03e1b009eb8e1b6adbd5478d6
This commit is contained in:
committed by
intellij-monorepo-bot
parent
d4af5e35af
commit
1933cff91d
+4
-2
@@ -30,13 +30,15 @@ public final class RecordCanBeClassInspection extends AbstractBaseJavaLocalInspe
|
||||
.fix(new ConvertRecordToClassFix(aClass)).register();
|
||||
}
|
||||
else {
|
||||
holder.problem(aClass, JavaBundle.message("inspection.message.record.can.be.converted.to.class")).fix(new ConvertRecordToClassFix(aClass)).register();
|
||||
holder.problem(aClass, JavaBundle.message("inspection.message.record.can.be.converted.to.class"))
|
||||
.fix(new ConvertRecordToClassFix(aClass)).register();
|
||||
}
|
||||
}
|
||||
else {
|
||||
PsiIdentifier identifier = aClass.getNameIdentifier();
|
||||
if (identifier != null) {
|
||||
holder.problem(identifier, JavaBundle.message("inspection.message.record.can.be.converted.to.class")).fix(new ConvertRecordToClassFix(aClass)).register();
|
||||
holder.problem(identifier, JavaBundle.message("inspection.message.record.can.be.converted.to.class"))
|
||||
.fix(new ConvertRecordToClassFix(aClass)).register();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -85,21 +85,24 @@ public class ConvertRecordToClassFix extends PsiUpdateModCommandAction<PsiElemen
|
||||
if (method == null) return;
|
||||
recordClass = tryMakeRecord(method);
|
||||
toReplace = method;
|
||||
} else {
|
||||
}
|
||||
else {
|
||||
recordClass = ObjectUtils.tryCast(startElement, PsiClass.class);
|
||||
}
|
||||
if (recordClass == null || !recordClass.isRecord()) return;
|
||||
|
||||
String recordClassText = generateText(recordClass);
|
||||
JavaDummyElement dummyElement = new JavaDummyElement(
|
||||
recordClassText, (builder, languageLevel) -> new JavaParser(languageLevel).getDeclarationParser().parse(builder, DeclarationParser.Context.CLASS),
|
||||
recordClassText,
|
||||
(builder, languageLevel) -> new JavaParser(languageLevel).getDeclarationParser().parse(builder, DeclarationParser.Context.CLASS),
|
||||
LanguageLevel.JDK_16);
|
||||
Project project = context.project();
|
||||
PsiFile file = startElement.getContainingFile();
|
||||
DummyHolder holder = DummyHolderFactory.createHolder(file.getManager(), dummyElement, recordClass);
|
||||
PsiClass converted = (PsiClass)Objects.requireNonNull(SourceTreeToPsiMap.treeElementToPsi(holder.getTreeElement().getFirstChildNode()));
|
||||
postProcessAnnotations(recordClass, converted);
|
||||
PsiClass result = (PsiClass)toReplace.replace(converted);
|
||||
|
||||
Project project = context.project();
|
||||
CodeStyleManager.getInstance(project).reformat(JavaCodeStyleManager.getInstance(project).shortenClassReferences(result));
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user