Fix incorrect newline emission in Attrs::docs

This commit is contained in:
Lukas Wirth 2021-03-17 16:10:58 +01:00
parent ec824a92d0
commit 5734b347dd
4 changed files with 80 additions and 62 deletions

View file

@ -53,15 +53,15 @@ pub fn call_info(db: &RootDatabase, position: FilePosition) -> Option<CallInfo>
match callable.kind() {
hir::CallableKind::Function(func) => {
res.doc = func.docs(db).map(|it| it.as_str().to_string());
res.doc = func.docs(db).map(|it| it.into());
format_to!(res.signature, "fn {}", func.name(db));
}
hir::CallableKind::TupleStruct(strukt) => {
res.doc = strukt.docs(db).map(|it| it.as_str().to_string());
res.doc = strukt.docs(db).map(|it| it.into());
format_to!(res.signature, "struct {}", strukt.name(db));
}
hir::CallableKind::TupleEnumVariant(variant) => {
res.doc = variant.docs(db).map(|it| it.as_str().to_string());
res.doc = variant.docs(db).map(|it| it.into());
format_to!(
res.signature,
"enum {}::{}",

View file

@ -220,11 +220,11 @@ fn bar() {
}
"#,
expect![[r#"
test
------
fn foo(j: u32) -> u32
(<j: u32>)
"#]],
test
------
fn foo(j: u32) -> u32
(<j: u32>)
"#]],
);
}
@ -249,19 +249,19 @@ pub fn do() {
add_one($0
}"#,
expect![[r##"
Adds one to the number given.
Adds one to the number given.
# Examples
# Examples
```
let five = 5;
```
let five = 5;
assert_eq!(6, my_crate::add_one(5));
```
------
fn add_one(x: i32) -> i32
(<x: i32>)
"##]],
assert_eq!(6, my_crate::add_one(5));
```
------
fn add_one(x: i32) -> i32
(<x: i32>)
"##]],
);
}
@ -291,19 +291,19 @@ pub fn do_it() {
}
"#,
expect![[r##"
Adds one to the number given.
Adds one to the number given.
# Examples
# Examples
```
let five = 5;
```
let five = 5;
assert_eq!(6, my_crate::add_one(5));
```
------
fn add_one(x: i32) -> i32
(<x: i32>)
"##]],
assert_eq!(6, my_crate::add_one(5));
```
------
fn add_one(x: i32) -> i32
(<x: i32>)
"##]],
);
}
@ -335,13 +335,13 @@ pub fn foo(mut r: WriteHandler<()>) {
}
"#,
expect![[r#"
Method is called when writer finishes.
Method is called when writer finishes.
By default this method stops actor's `Context`.
------
fn finished(&mut self, ctx: &mut {unknown})
(<ctx: &mut {unknown}>)
"#]],
By default this method stops actor's `Context`.
------
fn finished(&mut self, ctx: &mut {unknown})
(<ctx: &mut {unknown}>)
"#]],
);
}
@ -389,11 +389,11 @@ fn main() {
}
"#,
expect![[r#"
A cool tuple struct
------
struct S(u32, i32)
(u32, <i32>)
"#]],
A cool tuple struct
------
struct S(u32, i32)
(u32, <i32>)
"#]],
);
}
@ -431,11 +431,11 @@ fn main() {
}
"#,
expect![[r#"
A Variant
------
enum E::A(i32)
(<i32>)
"#]],
A Variant
------
enum E::A(i32)
(<i32>)
"#]],
);
}