Expand NamedExpr range to include full range of parenthesized value (#6632)

## Summary

Given:

```python
if (
    x
    :=
    (  # 4
        y # 5
    )  # 6
):
    pass
```

It turns out the parser ended the range of the `NamedExpr` at the end of
`y`, rather than the end of the parenthesis that encloses `y`. This just
seems like a bug -- the range should be from the start of the name on
the left, to the end of the parenthesized node on the right.

## Test Plan

`cargo test`
This commit is contained in:
Charlie Marsh 2023-08-17 10:34:05 -04:00 committed by GitHub
parent d9bb51dee4
commit a70807e1e1
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
4 changed files with 18803 additions and 18665 deletions

View file

@ -0,0 +1,36 @@
---
source: crates/ruff_python_parser/src/parser.rs
expression: parse_ast
---
NamedExpr(
ExprNamedExpr {
range: 1..15,
target: Name(
ExprName {
range: 1..2,
id: "x",
ctx: Store,
},
),
value: BinOp(
ExprBinOp {
range: 8..13,
left: Name(
ExprName {
range: 8..9,
id: "y",
ctx: Load,
},
),
op: Mult,
right: Name(
ExprName {
range: 12..13,
id: "z",
ctx: Load,
},
),
},
),
},
)