rustpython-ruff_python_parser 0.15.8

Unofficial fork for RustPython
Documentation
---
source: crates/ruff_python_parser/tests/fixtures.rs
input_file: crates/ruff_python_parser/resources/inline/err/while_stmt_missing_test.py
---
## AST

```
Module(
    ModModule {
        node_index: NodeIndex(None),
        range: 0..30,
        body: [
            While(
                StmtWhile {
                    node_index: NodeIndex(None),
                    range: 0..11,
                    test: Name(
                        ExprName {
                            node_index: NodeIndex(None),
                            range: 5..5,
                            id: Name(""),
                            ctx: Invalid,
                        },
                    ),
                    body: [
                        Expr(
                            StmtExpr {
                                node_index: NodeIndex(None),
                                range: 8..11,
                                value: EllipsisLiteral(
                                    ExprEllipsisLiteral {
                                        node_index: NodeIndex(None),
                                        range: 8..11,
                                    },
                                ),
                            },
                        ),
                    ],
                    orelse: [],
                },
            ),
            While(
                StmtWhile {
                    node_index: NodeIndex(None),
                    range: 12..29,
                    test: Name(
                        ExprName {
                            node_index: NodeIndex(None),
                            range: 17..17,
                            id: Name(""),
                            ctx: Invalid,
                        },
                    ),
                    body: [
                        Assign(
                            StmtAssign {
                                node_index: NodeIndex(None),
                                range: 24..29,
                                targets: [
                                    Name(
                                        ExprName {
                                            node_index: NodeIndex(None),
                                            range: 24..25,
                                            id: Name("a"),
                                            ctx: Store,
                                        },
                                    ),
                                ],
                                value: NumberLiteral(
                                    ExprNumberLiteral {
                                        node_index: NodeIndex(None),
                                        range: 28..29,
                                        value: Int(
                                            1,
                                        ),
                                    },
                                ),
                            },
                        ),
                    ],
                    orelse: [],
                },
            ),
        ],
    },
)
```
## Errors

  |
1 | while : ...
  |       ^ Syntax Error: Expected an expression
2 | while :
3 |     a = 1
  |


  |
1 | while : ...
2 | while :
  |       ^ Syntax Error: Expected an expression
3 |     a = 1
  |