Don't mix spaces before/after the field separator

This commit is contained in:
Joshua Warner 2024-12-12 19:53:49 -08:00
parent 2857833c35
commit d66f51db7b
No known key found for this signature in database
GPG key ID: 89AD497003F93FDD
7 changed files with 43 additions and 12 deletions

View file

@ -567,7 +567,6 @@ fn is_multiline_assigned_field_help<T: Formattable>(afield: &AssignedField<'_, T
fn format_assigned_field_help<T>(
zelf: &AssignedField<T>,
buf: &mut Buf,
indent: u16,
separator_spaces: usize,
is_multiline: bool,

View file

@ -395,39 +395,36 @@ fn assigned_field_lift_spaces<'a, 'b: 'a>(
) -> Spaces<'a, AssignedField<'a, Expr<'a>>> {
match value {
AssignedField::RequiredValue(name, sp, value) => {
let new_value = expr_lift_spaces(Parens::NotNeeded, arena, &value.value);
let new_sp = merge_spaces_conservative(arena, sp, new_value.before);
let new_value = expr_lift_spaces_after(Parens::NotNeeded, arena, &value.value);
Spaces {
before: &[],
item: AssignedField::RequiredValue(
name,
new_sp,
sp,
arena.alloc(Loc::at(value.region, new_value.item)),
),
after: new_value.after,
}
}
AssignedField::OptionalValue(name, sp, value) => {
let new_value = expr_lift_spaces(Parens::NotNeeded, arena, &value.value);
let new_sp = merge_spaces_conservative(arena, sp, new_value.before);
let new_value = expr_lift_spaces_after(Parens::NotNeeded, arena, &value.value);
Spaces {
before: &[],
item: AssignedField::OptionalValue(
name,
new_sp,
sp,
arena.alloc(Loc::at(value.region, new_value.item)),
),
after: new_value.after,
}
}
AssignedField::IgnoredValue(name, sp, value) => {
let new_value = expr_lift_spaces(Parens::NotNeeded, arena, &value.value);
let new_sp = merge_spaces_conservative(arena, sp, new_value.before);
let new_value = expr_lift_spaces_after(Parens::NotNeeded, arena, &value.value);
Spaces {
before: &[],
item: AssignedField::IgnoredValue(
name,
new_sp,
sp,
arena.alloc(Loc::at(value.region, new_value.item)),
),
after: new_value.after,