PY-81646 Get rid of EMPTY_EXPRESSION nodes within SLICE_ITEM

GitOrigin-RevId: 6ffe0027790bb41b8ac18251903529aa1b1243f6
This commit is contained in:
Petr
2025-06-13 00:06:42 +02:00
committed by intellij-monorepo-bot
parent ff19de5654
commit aa82ce5f70
5 changed files with 26 additions and 25 deletions

View File

@@ -693,18 +693,13 @@ public class ExpressionParsing extends Parsing {
private boolean parseSubscriptionIndexArgument() {
SyntaxTreeBuilder.Marker sliceItem = myBuilder.mark();
if (!parseSingleExpression(false)) {
myBuilder.mark().done(PyElementTypes.EMPTY_EXPRESSION);
}
parseSingleExpression(false);
if (!matchToken(PyTokenTypes.COLON)) {
sliceItem.rollbackTo();
return parseNamedTestExpression(false, false);
}
boolean exprParseResult = parseSingleExpression(false);
parseSingleExpression(false);
if (myBuilder.getTokenType() == PyTokenTypes.COLON) {
if (!exprParseResult) {
myBuilder.mark().done(PyElementTypes.EMPTY_EXPRESSION);
}
myBuilder.advanceLexer();
parseSingleExpression(false);
}