From d74484e368ebfd63e008054929ea527f8ffda43c Mon Sep 17 00:00:00 2001
From: Bas Leijdekkers
Date: Wed, 25 Sep 2024 10:42:46 +0200
Subject: [PATCH] Java: enable "Record pattern can be used" by default at
warning level (IDEA-359690)
and make it a cleanup tool.
GitOrigin-RevId: 3bb400491d44ab901660d900c6ce73e76bdf6261
---
.../DeconstructionCanBeUsedInspection.java | 2 +-
.../src/META-INF/InspectionGadgets.xml | 4 ++--
.../DeconstructionCanBeUsed.html | 24 +++++++++----------
3 files changed, 15 insertions(+), 15 deletions(-)
diff --git a/java/java-impl-inspections/src/com/intellij/codeInspection/DeconstructionCanBeUsedInspection.java b/java/java-impl-inspections/src/com/intellij/codeInspection/DeconstructionCanBeUsedInspection.java
index 98e93e130f3d..489c1725a705 100644
--- a/java/java-impl-inspections/src/com/intellij/codeInspection/DeconstructionCanBeUsedInspection.java
+++ b/java/java-impl-inspections/src/com/intellij/codeInspection/DeconstructionCanBeUsedInspection.java
@@ -22,7 +22,7 @@ import org.jetbrains.annotations.Nullable;
import java.util.*;
-public final class DeconstructionCanBeUsedInspection extends AbstractBaseJavaLocalInspectionTool {
+public final class DeconstructionCanBeUsedInspection extends AbstractBaseJavaLocalInspectionTool implements CleanupLocalInspectionTool {
@Override
public @NotNull Set<@NotNull JavaFeature> requiredFeatures() {
diff --git a/java/java-impl/src/META-INF/InspectionGadgets.xml b/java/java-impl/src/META-INF/InspectionGadgets.xml
index d789f2952ce3..dee5ec41e992 100644
--- a/java/java-impl/src/META-INF/InspectionGadgets.xml
+++ b/java/java-impl/src/META-INF/InspectionGadgets.xml
@@ -2761,10 +2761,10 @@
groupBundle="messages.InspectionsBundle" groupKey="group.names.language.level.specific.issues.and.migration.aids"
implementationClass="com.intellij.codeInspection.ForEachWithRecordPatternCanBeUsedInspection" cleanupTool="true"/>
+ implementationClass="com.intellij.codeInspection.DeconstructionCanBeUsedInspection" cleanupTool="true"/>
Example:
- record Point(int x, int y) {}
-
- static void printSum(Object obj) {
- if (obj instanceof Point p) {
- int x = p.x();
- int y = p.y();
- System.out.println(x + y);
+ record Point(int x, int y) {
+ static void printSum(Object obj) {
+ if (obj instanceof Point p) {
+ int x = p.x();
+ int y = p.y();
+ System.out.println(x + y);
+ }
}
}
After the quick-fix is applied:
- record Point(int x, int y) {}
-
- static void printSum(Object obj) {
- if (obj instanceof Point(int x, int y)) {
- System.out.println(x + y);
+ record Point(int x, int y) {
+ static void printSum(Object obj) {
+ if (obj instanceof Point(int x, int y)) {
+ System.out.println(x + y);
+ }
}
}