[ty] Use full range for assignment definitions (#19211)

## Summary

Fix the `full_range` function for (annotated) assignment definition
kinds.

## Test Plan

Update snapshot tests
This commit is contained in:
David Peter 2025-07-08 19:51:09 +02:00 committed by GitHub
parent fda188953f
commit a8f2c26143
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
4 changed files with 17 additions and 5 deletions

View file

@ -677,8 +677,20 @@ impl DefinitionKind<'_> {
DefinitionKind::Class(class) => class.node(module).range(),
DefinitionKind::TypeAlias(type_alias) => type_alias.node(module).range(),
DefinitionKind::NamedExpression(named) => named.node(module).range(),
DefinitionKind::Assignment(assignment) => assignment.target.node(module).range(),
DefinitionKind::AnnotatedAssignment(assign) => assign.target.node(module).range(),
DefinitionKind::Assignment(assign) => {
let target_range = assign.target.node(module).range();
let value_range = assign.value.node(module).range();
target_range.cover(value_range)
}
DefinitionKind::AnnotatedAssignment(assign) => {
let target_range = assign.target.node(module).range();
if let Some(ref value) = assign.value {
let value_range = value.node(module).range();
target_range.cover(value_range)
} else {
target_range
}
}
DefinitionKind::AugmentedAssignment(aug_assign) => aug_assign.node(module).range(),
DefinitionKind::For(for_stmt) => for_stmt.target.node(module).range(),
DefinitionKind::Comprehension(comp) => comp.target(module).range(),