mirror of
https://gitflic.ru/project/openide/openide.git
synced 2026-04-21 22:11:40 +07:00
[java-highlighting] IJ-CR-132828 IDEA-352588 Support JEP 455: highlighting for switch with primitives
- chars print as themselves without a conversion GitOrigin-RevId: beee890cd3fca0d4ae907645f76e9f28f173ad09
This commit is contained in:
committed by
intellij-monorepo-bot
parent
41866f69fa
commit
c50d80250d
@@ -1046,7 +1046,12 @@ public class SwitchBlockHighlightingModel {
|
||||
description = JavaErrorBundle.message("duplicate.unconditional.pattern.label");
|
||||
}
|
||||
else {
|
||||
description = JavaErrorBundle.message("duplicate.switch.label", duplicateKey);
|
||||
if (duplicateElement instanceof PsiLiteralExpression literalExpression) {
|
||||
description = JavaErrorBundle.message("duplicate.switch.label", literalExpression.getValue());
|
||||
}
|
||||
else {
|
||||
description = JavaErrorBundle.message("duplicate.switch.label", duplicateKey);
|
||||
}
|
||||
}
|
||||
HighlightInfo.Builder info = createError(duplicateElement, description);
|
||||
PsiSwitchLabelStatementBase labelStatement = PsiTreeUtil.getParentOfType(duplicateElement, PsiSwitchLabelStatementBase.class);
|
||||
|
||||
@@ -101,8 +101,8 @@ public class SwitchConstantPrimitiveSimilar {
|
||||
byte o = '1';
|
||||
switch (o) {
|
||||
case 1 -> System.out.println("1");
|
||||
case <error descr="Duplicate label '97'">'a'</error> -> System.out.println("a");
|
||||
case <error descr="Duplicate label '97'">'a'</error> -> System.out.println("a");// error
|
||||
case <error descr="Duplicate label 'a'">'a'</error> -> System.out.println("a");
|
||||
case <error descr="Duplicate label 'a'">'a'</error> -> System.out.println("a");// error
|
||||
case 0xa -> System.out.println("0xa");
|
||||
default -> System.out.println("default");
|
||||
}
|
||||
@@ -118,8 +118,8 @@ public class SwitchConstantPrimitiveSimilar {
|
||||
private static void testChar() {
|
||||
char o = '1';
|
||||
switch (o) {
|
||||
case <error descr="Duplicate label ''">1</error> -> System.out.println("1");
|
||||
case <error descr="Duplicate label ''">1</error> -> System.out.println("1");// error
|
||||
case <error descr="Duplicate label '1'">1</error> -> System.out.println("1");
|
||||
case <error descr="Duplicate label '1'">1</error> -> System.out.println("1");// error
|
||||
default -> System.out.println("default");
|
||||
}
|
||||
switch (o) {
|
||||
@@ -236,8 +236,8 @@ public class SwitchConstantPrimitiveSimilar {
|
||||
Byte o = '1';
|
||||
switch (o) {
|
||||
case 1 -> System.out.println("1");
|
||||
case <error descr="Duplicate label '97'">'a'</error> -> System.out.println("a");
|
||||
case <error descr="Duplicate label '97'">'a'</error> -> System.out.println("a");// error
|
||||
case <error descr="Duplicate label 'a'">'a'</error> -> System.out.println("a");
|
||||
case <error descr="Duplicate label 'a'">'a'</error> -> System.out.println("a");// error
|
||||
case 0xa -> System.out.println("0xa");
|
||||
default -> System.out.println("default");
|
||||
}
|
||||
@@ -253,8 +253,8 @@ public class SwitchConstantPrimitiveSimilar {
|
||||
private static void testCharObject() {
|
||||
Character o = '1';
|
||||
switch (o) {
|
||||
case <error descr="Duplicate label ''">1</error> -> System.out.println("1");
|
||||
case <error descr="Duplicate label ''">1</error> -> System.out.println("1");// error
|
||||
case <error descr="Duplicate label '1'">1</error> -> System.out.println("1");
|
||||
case <error descr="Duplicate label '1'">1</error> -> System.out.println("1");// error
|
||||
default -> System.out.println("default");
|
||||
}
|
||||
switch (o) {
|
||||
|
||||
Reference in New Issue
Block a user