[java] IDEA-345498 Remove explicit Java 20-preview support and parenthesized patterns

GitOrigin-RevId: 8d646035979e3ec0a7de3c6f58a4e6ec9967bdbd
This commit is contained in:
Tagir Valeev
2024-02-12 19:12:36 +00:00
committed by intellij-monorepo-bot
parent c56dbec5f8
commit d0cf7b359a
117 changed files with 262 additions and 1418 deletions
@@ -33,7 +33,7 @@ public class BasicPatternParser {
*/
@Contract(pure = true)
public boolean isPattern(final PsiBuilder builder) {
PsiBuilder.Marker patternStart = preParsePattern(builder, true);
PsiBuilder.Marker patternStart = preParsePattern(builder);
if (patternStart == null) {
return false;
}
@@ -56,13 +56,8 @@ public class BasicPatternParser {
@Nullable("when not pattern")
PsiBuilder.Marker preParsePattern(final PsiBuilder builder, boolean parensAllowed) {
PsiBuilder.Marker preParsePattern(final PsiBuilder builder) {
PsiBuilder.Marker patternStart = builder.mark();
if (parensAllowed) {
while (builder.getTokenType() == JavaTokenType.LPARENTH) {
builder.advanceLexer();
}
}
Boolean hasNoModifier = myParser.getDeclarationParser().parseModifierList(builder, PATTERN_MODIFIERS).second;
PsiBuilder.Marker type =
myParser.getReferenceParser().parseType(builder, BasicReferenceParser.EAT_LAST_DOT | BasicReferenceParser.WILDCARD);
@@ -87,16 +82,6 @@ public class BasicPatternParser {
}
PsiBuilder.@NotNull Marker parsePrimaryPattern(final PsiBuilder builder, boolean expectVar) {
if (builder.getTokenType() == JavaTokenType.LPARENTH) {
PsiBuilder.Marker parenPattern = builder.mark();
builder.advanceLexer();
parsePattern(builder);
if (!expect(builder, JavaTokenType.RPARENTH)) {
error(builder, JavaPsiBundle.message("expected.rparen"));
}
done(parenPattern, myJavaElementTypeContainer.PARENTHESIZED_PATTERN, myWhiteSpaceAndCommentSetHolder);
return parenPattern;
}
return parseTypeOrRecordPattern(builder, expectVar);
}
@@ -334,7 +334,7 @@ public class BasicStatementParser {
@Contract(pure = true)
private boolean isRecordPatternInForEach(final PsiBuilder builder) {
PsiBuilder.Marker patternStart = myParser.getPatternParser().preParsePattern(builder, false);
PsiBuilder.Marker patternStart = myParser.getPatternParser().preParsePattern(builder);
if (patternStart == null) {
return false;
}
@@ -211,8 +211,6 @@ public abstract class AbstractBasicJavaElementTypeFactory {
public final IElementType DECONSTRUCTION_PATTERN_VARIABLE;
public final IElementType PARENTHESIZED_PATTERN;
public final IElementType DEFAULT_CASE_LABEL_ELEMENT;
public final IElementType CASE_LABEL_ELEMENT_LIST;
@@ -335,7 +333,6 @@ public abstract class AbstractBasicJavaElementTypeFactory {
IElementType DECONSTRUCTION_PATTERN,
IElementType DECONSTRUCTION_LIST,
IElementType DECONSTRUCTION_PATTERN_VARIABLE,
IElementType PARENTHESIZED_PATTERN,
IElementType DEFAULT_CASE_LABEL_ELEMENT,
IElementType CASE_LABEL_ELEMENT_LIST,
ILazyParseableElementType CODE_BLOCK,
@@ -448,7 +445,6 @@ public abstract class AbstractBasicJavaElementTypeFactory {
this.DECONSTRUCTION_PATTERN = DECONSTRUCTION_PATTERN;
this.DECONSTRUCTION_LIST = DECONSTRUCTION_LIST;
this.DECONSTRUCTION_PATTERN_VARIABLE = DECONSTRUCTION_PATTERN_VARIABLE;
this.PARENTHESIZED_PATTERN = PARENTHESIZED_PATTERN;
this.DEFAULT_CASE_LABEL_ELEMENT = DEFAULT_CASE_LABEL_ELEMENT;
this.CASE_LABEL_ELEMENT_LIST = CASE_LABEL_ELEMENT_LIST;
this.CODE_BLOCK = CODE_BLOCK;
@@ -84,7 +84,7 @@ public interface BasicElementTypes extends JavaTokenType, JavaDocTokenType, Basi
BASIC_YIELD_STATEMENT);
ParentAwareTokenSet BASIC_JAVA_PATTERN_BIT_SET =
ParentAwareTokenSet.create(BASIC_TYPE_TEST_PATTERN, BASIC_PARENTHESIZED_PATTERN, BASIC_DECONSTRUCTION_PATTERN, BASIC_UNNAMED_PATTERN);
ParentAwareTokenSet.create(BASIC_TYPE_TEST_PATTERN, BASIC_DECONSTRUCTION_PATTERN, BASIC_UNNAMED_PATTERN);
ParentAwareTokenSet BASIC_JAVA_CASE_LABEL_ELEMENT_BIT_SET =
ParentAwareTokenSet.orSet(BASIC_JAVA_PATTERN_BIT_SET, BASIC_EXPRESSION_BIT_SET, ParentAwareTokenSet.create(