rustpython-ruff_python_parser 0.15.8

Unofficial fork for RustPython
Documentation
---
source: crates/ruff_python_parser/tests/fixtures.rs
---
## AST

```
Module(
    ModModule {
        node_index: NodeIndex(None),
        range: 0..67,
        body: [
            ImportFrom(
                StmtImportFrom {
                    node_index: NodeIndex(None),
                    range: 0..16,
                    module: Some(
                        Identifier {
                            id: Name("x"),
                            range: 5..6,
                            node_index: NodeIndex(None),
                        },
                    ),
                    names: [
                        Alias {
                            range: 14..15,
                            node_index: NodeIndex(None),
                            name: Identifier {
                                id: Name("a"),
                                range: 14..15,
                                node_index: NodeIndex(None),
                            },
                            asname: None,
                        },
                    ],
                    level: 0,
                    is_lazy: false,
                },
            ),
            ImportFrom(
                StmtImportFrom {
                    node_index: NodeIndex(None),
                    range: 17..34,
                    module: Some(
                        Identifier {
                            id: Name("x"),
                            range: 22..23,
                            node_index: NodeIndex(None),
                        },
                    ),
                    names: [
                        Alias {
                            range: 31..32,
                            node_index: NodeIndex(None),
                            name: Identifier {
                                id: Name("a"),
                                range: 31..32,
                                node_index: NodeIndex(None),
                            },
                            asname: None,
                        },
                        Alias {
                            range: 33..34,
                            node_index: NodeIndex(None),
                            name: Identifier {
                                id: Name("b"),
                                range: 33..34,
                                node_index: NodeIndex(None),
                            },
                            asname: None,
                        },
                    ],
                    level: 0,
                    is_lazy: false,
                },
            ),
            ImportFrom(
                StmtImportFrom {
                    node_index: NodeIndex(None),
                    range: 35..66,
                    module: Some(
                        Identifier {
                            id: Name("x"),
                            range: 40..41,
                            node_index: NodeIndex(None),
                        },
                    ),
                    names: [
                        Alias {
                            range: 49..50,
                            node_index: NodeIndex(None),
                            name: Identifier {
                                id: Name("a"),
                                range: 49..50,
                                node_index: NodeIndex(None),
                            },
                            asname: None,
                        },
                        Alias {
                            range: 52..53,
                            node_index: NodeIndex(None),
                            name: Identifier {
                                id: Name("b"),
                                range: 52..53,
                                node_index: NodeIndex(None),
                            },
                            asname: None,
                        },
                        Alias {
                            range: 54..55,
                            node_index: NodeIndex(None),
                            name: Identifier {
                                id: Name("c"),
                                range: 54..55,
                                node_index: NodeIndex(None),
                            },
                            asname: None,
                        },
                        Alias {
                            range: 57..58,
                            node_index: NodeIndex(None),
                            name: Identifier {
                                id: Name("d"),
                                range: 57..58,
                                node_index: NodeIndex(None),
                            },
                            asname: None,
                        },
                        Alias {
                            range: 60..61,
                            node_index: NodeIndex(None),
                            name: Identifier {
                                id: Name("e"),
                                range: 60..61,
                                node_index: NodeIndex(None),
                            },
                            asname: None,
                        },
                        Alias {
                            range: 62..63,
                            node_index: NodeIndex(None),
                            name: Identifier {
                                id: Name("f"),
                                range: 62..63,
                                node_index: NodeIndex(None),
                            },
                            asname: None,
                        },
                        Alias {
                            range: 65..66,
                            node_index: NodeIndex(None),
                            name: Identifier {
                                id: Name("g"),
                                range: 65..66,
                                node_index: NodeIndex(None),
                            },
                            asname: None,
                        },
                    ],
                    level: 0,
                    is_lazy: false,
                },
            ),
        ],
    },
)
```
## Errors

  |
1 | from x import a.
  |                ^ Syntax Error: Expected `,`, found `.`
2 | from x import a.b
3 | from x import a, b.c, d, e.f, g
  |


  |
1 | from x import a.
2 | from x import a.b
  |                ^ Syntax Error: Expected `,`, found `.`
3 | from x import a, b.c, d, e.f, g
  |


  |
1 | from x import a.
2 | from x import a.b
3 | from x import a, b.c, d, e.f, g
  |                   ^ Syntax Error: Expected `,`, found `.`
  |


  |
1 | from x import a.
2 | from x import a.b
3 | from x import a, b.c, d, e.f, g
  |                           ^ Syntax Error: Expected `,`, found `.`
  |