mirror of
https://github.com/rust-lang/rust-analyzer
synced 2024-12-27 05:23:24 +00:00
fix: remove space within {}
when no fields in struct
This commit is contained in:
parent
43576989a1
commit
aa1f1344cc
2 changed files with 35 additions and 11 deletions
|
@ -249,19 +249,23 @@ fn display_fields(
|
|||
}
|
||||
} else {
|
||||
f.write_char('{')?;
|
||||
f.write_char(separator)?;
|
||||
for field in &fields[..count] {
|
||||
f.write_str(indent)?;
|
||||
field.hir_fmt(f)?;
|
||||
f.write_char(',')?;
|
||||
|
||||
if !fields.is_empty() {
|
||||
f.write_char(separator)?;
|
||||
for field in &fields[..count] {
|
||||
f.write_str(indent)?;
|
||||
field.hir_fmt(f)?;
|
||||
f.write_char(',')?;
|
||||
f.write_char(separator)?;
|
||||
}
|
||||
|
||||
if fields.len() > count {
|
||||
f.write_str(indent)?;
|
||||
f.write_str("/* … */")?;
|
||||
f.write_char(separator)?;
|
||||
}
|
||||
}
|
||||
|
||||
if fields.len() > count {
|
||||
f.write_str(indent)?;
|
||||
f.write_str("/* … */")?;
|
||||
f.write_char(separator)?;
|
||||
}
|
||||
f.write_str("}")?;
|
||||
}
|
||||
|
||||
|
|
|
@ -1039,7 +1039,27 @@ fn hover_record_struct_limit() {
|
|||
struct Foo { /* … */ }
|
||||
```
|
||||
"#]],
|
||||
)
|
||||
);
|
||||
|
||||
// No extra spaces within `{}` when there are no fields
|
||||
check_hover_fields_limit(
|
||||
5,
|
||||
r#"
|
||||
struct Foo$0 {}
|
||||
"#,
|
||||
expect![[r#"
|
||||
*Foo*
|
||||
|
||||
```rust
|
||||
test
|
||||
```
|
||||
|
||||
```rust
|
||||
// size = 0, align = 1
|
||||
struct Foo {}
|
||||
```
|
||||
"#]],
|
||||
);
|
||||
}
|
||||
|
||||
#[test]
|
||||
|
|
Loading…
Reference in a new issue