Files
openide/java/java-tests/testData/codeInsight/daemonCodeAnalyzer/advHighlightingPatternsInSwitch/PatternsInSwitchIn11Java.java
Tagir Valeev d0cf7b359a [java] IDEA-345498 Remove explicit Java 20-preview support and parenthesized patterns
GitOrigin-RevId: 8d646035979e3ec0a7de3c6f58a4e6ec9967bdbd
2024-02-12 19:12:36 +00:00

27 lines
1023 B
Java

class X {
int switchTest(Object obj) {
return switch (obj) {
case Object(String <error descr="Patterns in switch are not supported at language level '11'">s</error>) -> 1;
case Integer <error descr="Patterns in switch are not supported at language level '11'">i</error> when predicate() -> 2;
case Integer <error descr="Patterns in switch are not supported at language level '11'">i</error> -> 3;
case default -> 4;
case <error descr="Patterns in switch are not supported at language level '11'">null</error> -> 10;
};
}
void caseDefaultTest(int num) {
switch (num) {
case <error descr="The label for the default case must only use the 'default' keyword, without 'case'">default</error>:
break;
}
}
int instanceofTest(Object obj) {
if (obj instanceof Integer <error descr="Patterns in 'instanceof' are not supported at language level '11'">i</error> && predicate()) {
return 1;
}
return 2;
}
native static boolean predicate();
}