Auto merge of #14058 - gftea:master, r=Veykril
fix negative trait bound in outline view (#14044) try to fix and close #14044
This commit is contained in:
commit
ccd142c616
@ -160,7 +160,11 @@ fn collapse_ws(node: &SyntaxNode, output: &mut String) {
|
|||||||
let label = match target_trait {
|
let label = match target_trait {
|
||||||
None => format!("impl {}", target_type.syntax().text()),
|
None => format!("impl {}", target_type.syntax().text()),
|
||||||
Some(t) => {
|
Some(t) => {
|
||||||
format!("impl {} for {}", t.syntax().text(), target_type.syntax().text(),)
|
format!("impl {}{} for {}",
|
||||||
|
it.excl_token().map(|x| x.to_string()).unwrap_or_default(),
|
||||||
|
t.syntax().text(),
|
||||||
|
target_type.syntax().text(),
|
||||||
|
)
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
@ -213,6 +217,29 @@ fn check(ra_fixture: &str, expect: Expect) {
|
|||||||
expect.assert_debug_eq(&structure)
|
expect.assert_debug_eq(&structure)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#[test]
|
||||||
|
fn test_nagative_trait_bound() {
|
||||||
|
let txt = r#"impl !Unpin for Test {}"#;
|
||||||
|
check(
|
||||||
|
txt,
|
||||||
|
expect![[r#"
|
||||||
|
[
|
||||||
|
StructureNode {
|
||||||
|
parent: None,
|
||||||
|
label: "impl !Unpin for Test",
|
||||||
|
navigation_range: 16..20,
|
||||||
|
node_range: 0..23,
|
||||||
|
kind: SymbolKind(
|
||||||
|
Impl,
|
||||||
|
),
|
||||||
|
detail: None,
|
||||||
|
deprecated: false,
|
||||||
|
},
|
||||||
|
]
|
||||||
|
"#]],
|
||||||
|
);
|
||||||
|
}
|
||||||
|
|
||||||
#[test]
|
#[test]
|
||||||
fn test_file_structure() {
|
fn test_file_structure() {
|
||||||
check(
|
check(
|
||||||
|
Loading…
Reference in New Issue
Block a user