From 532aaba234eb26e672e62847afb8f208237b4af9 Mon Sep 17 00:00:00 2001 From: funkill2 Date: Tue, 2 Jul 2019 00:51:18 +0300 Subject: inline snapshots --- crates/ra_ide_api/src/completion/complete_path.rs | 523 +++++++++++++++------- 1 file changed, 366 insertions(+), 157 deletions(-) (limited to 'crates') diff --git a/crates/ra_ide_api/src/completion/complete_path.rs b/crates/ra_ide_api/src/completion/complete_path.rs index b42b7c458..a41cab359 100644 --- a/crates/ra_ide_api/src/completion/complete_path.rs +++ b/crates/ra_ide_api/src/completion/complete_path.rs @@ -74,10 +74,11 @@ pub(super) fn complete_path(acc: &mut Completions, ctx: &CompletionContext) { mod tests { use test_utils::covers; - use crate::completion::{CompletionKind, check_completion, do_completion}; + use crate::completion::{CompletionKind, do_completion, CompletionItem}; + use insta::assert_debug_snapshot_matches; - fn check_reference_completion(code: &str, expected_completions: &str) { - check_completion(code, expected_completions, CompletionKind::Reference); + fn do_reference_completion(code: &str) -> Vec { + do_completion(code, CompletionKind::Reference) } #[test] @@ -115,227 +116,435 @@ mod tests { #[test] fn completes_mod_with_docs() { - check_reference_completion( - "mod_with_docs", - r" - use self::my<|>; - - /// Some simple - /// docs describing `mod my`. - mod my { - struct Bar; - } - ", + assert_debug_snapshot_matches!( + do_reference_completion( + r" + use self::my<|>; + + /// Some simple + /// docs describing `mod my`. + mod my { + struct Bar; + } + " + ), + @r###"[ + CompletionItem { + label: "my", + source_range: [27; 29), + delete: [27; 29), + insert: "my", + kind: Module, + documentation: Documentation( + "Some simple\ndocs describing `mod my`.", + ), + }, +]"### ); } #[test] fn completes_use_item_starting_with_self() { - check_reference_completion( - "use_item_starting_with_self", - r" - use self::m::<|>; + assert_debug_snapshot_matches!( + do_reference_completion( + r" + use self::m::<|>; - mod m { - struct Bar; - } - ", + mod m { + struct Bar; + } + " + ), + @r###"[ + CompletionItem { + label: "Bar", + source_range: [30; 30), + delete: [30; 30), + insert: "Bar", + kind: Struct, + }, +]"### ); } #[test] fn completes_use_item_starting_with_crate() { - check_reference_completion( - "use_item_starting_with_crate", - " - //- /lib.rs - mod foo; - struct Spam; - //- /foo.rs - use crate::Sp<|> - ", + assert_debug_snapshot_matches!( + do_reference_completion( + " + //- /lib.rs + mod foo; + struct Spam; + //- /foo.rs + use crate::Sp<|> + " + ), + @r###"[ + CompletionItem { + label: "Spam", + source_range: [11; 13), + delete: [11; 13), + insert: "Spam", + kind: Struct, + }, + CompletionItem { + label: "foo", + source_range: [11; 13), + delete: [11; 13), + insert: "foo", + kind: Module, + }, +]"### ); } #[test] fn completes_nested_use_tree() { - check_reference_completion( - "nested_use_tree", - " - //- /lib.rs - mod foo; - struct Spam; - //- /foo.rs - use crate::{Sp<|>}; - ", + assert_debug_snapshot_matches!( + do_reference_completion( + " + //- /lib.rs + mod foo; + struct Spam; + //- /foo.rs + use crate::{Sp<|>}; + " + ), + @r###"[ + CompletionItem { + label: "Spam", + source_range: [12; 14), + delete: [12; 14), + insert: "Spam", + kind: Struct, + }, + CompletionItem { + label: "foo", + source_range: [12; 14), + delete: [12; 14), + insert: "foo", + kind: Module, + }, +]"### ); } #[test] fn completes_deeply_nested_use_tree() { - check_reference_completion( - "deeply_nested_use_tree", - " - //- /lib.rs - mod foo; - pub mod bar { - pub mod baz { - pub struct Spam; + assert_debug_snapshot_matches!( + do_reference_completion( + " + //- /lib.rs + mod foo; + pub mod bar { + pub mod baz { + pub struct Spam; + } } - } - //- /foo.rs - use crate::{bar::{baz::Sp<|>}}; - ", + //- /foo.rs + use crate::{bar::{baz::Sp<|>}}; + " + ), + @r###"[ + CompletionItem { + label: "Spam", + source_range: [23; 25), + delete: [23; 25), + insert: "Spam", + kind: Struct, + }, +]"### ); } #[test] fn completes_enum_variant() { - check_reference_completion( - "enum_variant", - " - //- /lib.rs - /// An enum - enum E { - /// Foo Variant - Foo, - /// Bar Variant with i32 - Bar(i32) - } - fn foo() { let _ = E::<|> } - ", + assert_debug_snapshot_matches!( + do_reference_completion( + " + //- /lib.rs + /// An enum + enum E { + /// Foo Variant + Foo, + /// Bar Variant with i32 + Bar(i32) + } + fn foo() { let _ = E::<|> } + " + ), + @r###"[ + CompletionItem { + label: "Bar", + source_range: [116; 116), + delete: [116; 116), + insert: "Bar", + kind: EnumVariant, + detail: "(i32)", + documentation: Documentation( + "Bar Variant with i32", + ), + }, + CompletionItem { + label: "Foo", + source_range: [116; 116), + delete: [116; 116), + insert: "Foo", + kind: EnumVariant, + detail: "()", + documentation: Documentation( + "Foo Variant", + ), + }, +]"### ); } #[test] fn completes_enum_variant_with_details() { - check_reference_completion( - "enum_variant_with_details", - " - //- /lib.rs - struct S { field: u32 } - /// An enum - enum E { - /// Foo Variant (empty) - Foo, - /// Bar Variant with i32 and u32 - Bar(i32, u32), - /// - S(S), - } - fn foo() { let _ = E::<|> } - ", + assert_debug_snapshot_matches!( + do_reference_completion( + " + //- /lib.rs + struct S { field: u32 } + /// An enum + enum E { + /// Foo Variant (empty) + Foo, + /// Bar Variant with i32 and u32 + Bar(i32, u32), + /// + S(S), + } + fn foo() { let _ = E::<|> } + " + ), + @r###"[ + CompletionItem { + label: "Bar", + source_range: [180; 180), + delete: [180; 180), + insert: "Bar", + kind: EnumVariant, + detail: "(i32, u32)", + documentation: Documentation( + "Bar Variant with i32 and u32", + ), + }, + CompletionItem { + label: "Foo", + source_range: [180; 180), + delete: [180; 180), + insert: "Foo", + kind: EnumVariant, + detail: "()", + documentation: Documentation( + "Foo Variant (empty)", + ), + }, + CompletionItem { + label: "S", + source_range: [180; 180), + delete: [180; 180), + insert: "S", + kind: EnumVariant, + detail: "(S)", + documentation: Documentation( + "", + ), + }, +]"### ); } #[test] fn completes_struct_associated_method() { - check_reference_completion( - "struct_associated_method", - " - //- /lib.rs - /// A Struct - struct S; - - impl S { - /// An associated method - fn m() { } - } + assert_debug_snapshot_matches!( + do_reference_completion( + " + //- /lib.rs + /// A Struct + struct S; + + impl S { + /// An associated method + fn m() { } + } - fn foo() { let _ = S::<|> } - ", + fn foo() { let _ = S::<|> } + " + ), + @r###"[ + CompletionItem { + label: "m", + source_range: [100; 100), + delete: [100; 100), + insert: "m()$0", + kind: Function, + detail: "fn m()", + documentation: Documentation( + "An associated method", + ), + }, +]"### ); } #[test] fn completes_struct_associated_const() { - check_reference_completion( - "struct_associated_const", - " - //- /lib.rs - /// A Struct - struct S; - - impl S { - /// An associated const - const C: i32 = 42; - } + assert_debug_snapshot_matches!( + do_reference_completion( + " + //- /lib.rs + /// A Struct + struct S; + + impl S { + /// An associated const + const C: i32 = 42; + } - fn foo() { let _ = S::<|> } - ", + fn foo() { let _ = S::<|> } + " + ), + @r###"[ + CompletionItem { + label: "C", + source_range: [107; 107), + delete: [107; 107), + insert: "C", + kind: Const, + detail: "const C: i32 = 42;", + documentation: Documentation( + "An associated const", + ), + }, +]"### ); } #[test] fn completes_struct_associated_type() { - check_reference_completion( - "struct_associated_type", - " - //- /lib.rs - /// A Struct - struct S; - - impl S { - /// An associated type - type T = i32; - } + assert_debug_snapshot_matches!( + do_reference_completion( + " + //- /lib.rs + /// A Struct + struct S; + + impl S { + /// An associated type + type T = i32; + } - fn foo() { let _ = S::<|> } - ", + fn foo() { let _ = S::<|> } + " + ), + @r###"[ + CompletionItem { + label: "T", + source_range: [101; 101), + delete: [101; 101), + insert: "T", + kind: TypeAlias, + detail: "type T = i32;", + documentation: Documentation( + "An associated type", + ), + }, +]"### ); } #[test] fn completes_enum_associated_method() { - check_reference_completion( - "enum_associated_method", - " - //- /lib.rs - /// An enum - enum S {}; - - impl S { - /// An associated method - fn m() { } - } + assert_debug_snapshot_matches!( + do_reference_completion( + " + //- /lib.rs + /// An enum + enum S {}; + + impl S { + /// An associated method + fn m() { } + } - fn foo() { let _ = S::<|> } - ", + fn foo() { let _ = S::<|> } + " + ), + @r###"[ + CompletionItem { + label: "m", + source_range: [100; 100), + delete: [100; 100), + insert: "m()$0", + kind: Function, + detail: "fn m()", + documentation: Documentation( + "An associated method", + ), + }, +]"### ); } #[test] fn completes_union_associated_method() { - check_reference_completion( - "union_associated_method", - " - //- /lib.rs - /// A union - union U {}; - - impl U { - /// An associated method - fn m() { } - } + assert_debug_snapshot_matches!( + do_reference_completion( + " + //- /lib.rs + /// A union + union U {}; + + impl U { + /// An associated method + fn m() { } + } - fn foo() { let _ = U::<|> } - ", + fn foo() { let _ = U::<|> } + " + ), + @r###"[ + CompletionItem { + label: "m", + source_range: [101; 101), + delete: [101; 101), + insert: "m()$0", + kind: Function, + detail: "fn m()", + documentation: Documentation( + "An associated method", + ), + }, +]"### ); } #[test] fn completes_use_paths_across_crates() { - check_reference_completion( - "completes_use_paths_across_crates", - " - //- /main.rs - use foo::<|>; - - //- /foo/lib.rs - pub mod bar { - pub struct S; - } - ", + assert_debug_snapshot_matches!( + do_reference_completion( + " + //- /main.rs + use foo::<|>; + + //- /foo/lib.rs + pub mod bar { + pub struct S; + } + " + ), + @r###"[ + CompletionItem { + label: "bar", + source_range: [9; 9), + delete: [9; 9), + insert: "bar", + kind: Module, + }, +]"### ); } } -- cgit v1.2.3 From c596cd133c894ca084dcba5a3502438b605c0515 Mon Sep 17 00:00:00 2001 From: funkill2 Date: Tue, 2 Jul 2019 00:52:03 +0300 Subject: remove snapshot files --- ...on_item__completes_use_paths_across_crates.snap | 15 -------- .../completion_item__deeply_nested_use_tree.snap | 15 -------- .../completion_item__enum_associated_method.snap | 19 ---------- .../snapshots/completion_item__enum_variant.snap | 30 ---------------- ...completion_item__enum_variant_with_details.snap | 41 ---------------------- .../snapshots/completion_item__mod_with_docs.snap | 18 ---------- .../completion_item__nested_use_tree.snap | 22 ------------ .../completion_item__struct_associated_const.snap | 19 ---------- .../completion_item__struct_associated_method.snap | 19 ---------- .../completion_item__struct_associated_type.snap | 19 ---------- .../completion_item__union_associated_method.snap | 19 ---------- ...pletion_item__use_item_starting_with_crate.snap | 22 ------------ ...mpletion_item__use_item_starting_with_self.snap | 15 -------- 13 files changed, 273 deletions(-) delete mode 100644 crates/ra_ide_api/src/completion/snapshots/completion_item__completes_use_paths_across_crates.snap delete mode 100644 crates/ra_ide_api/src/completion/snapshots/completion_item__deeply_nested_use_tree.snap delete mode 100644 crates/ra_ide_api/src/completion/snapshots/completion_item__enum_associated_method.snap delete mode 100644 crates/ra_ide_api/src/completion/snapshots/completion_item__enum_variant.snap delete mode 100644 crates/ra_ide_api/src/completion/snapshots/completion_item__enum_variant_with_details.snap delete mode 100644 crates/ra_ide_api/src/completion/snapshots/completion_item__mod_with_docs.snap delete mode 100644 crates/ra_ide_api/src/completion/snapshots/completion_item__nested_use_tree.snap delete mode 100644 crates/ra_ide_api/src/completion/snapshots/completion_item__struct_associated_const.snap delete mode 100644 crates/ra_ide_api/src/completion/snapshots/completion_item__struct_associated_method.snap delete mode 100644 crates/ra_ide_api/src/completion/snapshots/completion_item__struct_associated_type.snap delete mode 100644 crates/ra_ide_api/src/completion/snapshots/completion_item__union_associated_method.snap delete mode 100644 crates/ra_ide_api/src/completion/snapshots/completion_item__use_item_starting_with_crate.snap delete mode 100644 crates/ra_ide_api/src/completion/snapshots/completion_item__use_item_starting_with_self.snap (limited to 'crates') diff --git a/crates/ra_ide_api/src/completion/snapshots/completion_item__completes_use_paths_across_crates.snap b/crates/ra_ide_api/src/completion/snapshots/completion_item__completes_use_paths_across_crates.snap deleted file mode 100644 index 113deafb1..000000000 --- a/crates/ra_ide_api/src/completion/snapshots/completion_item__completes_use_paths_across_crates.snap +++ /dev/null @@ -1,15 +0,0 @@ ---- -created: "2019-05-23T22:23:35.108690807Z" -creator: insta@0.8.1 -source: crates/ra_ide_api/src/completion/completion_item.rs -expression: kind_completions ---- -[ - CompletionItem { - label: "bar", - source_range: [9; 9), - delete: [9; 9), - insert: "bar", - kind: Module, - }, -] diff --git a/crates/ra_ide_api/src/completion/snapshots/completion_item__deeply_nested_use_tree.snap b/crates/ra_ide_api/src/completion/snapshots/completion_item__deeply_nested_use_tree.snap deleted file mode 100644 index aacdeb763..000000000 --- a/crates/ra_ide_api/src/completion/snapshots/completion_item__deeply_nested_use_tree.snap +++ /dev/null @@ -1,15 +0,0 @@ ---- -created: "2019-05-23T22:23:35.085633034Z" -creator: insta@0.8.1 -source: crates/ra_ide_api/src/completion/completion_item.rs -expression: kind_completions ---- -[ - CompletionItem { - label: "Spam", - source_range: [23; 25), - delete: [23; 25), - insert: "Spam", - kind: Struct, - }, -] diff --git a/crates/ra_ide_api/src/completion/snapshots/completion_item__enum_associated_method.snap b/crates/ra_ide_api/src/completion/snapshots/completion_item__enum_associated_method.snap deleted file mode 100644 index ee6518fc8..000000000 --- a/crates/ra_ide_api/src/completion/snapshots/completion_item__enum_associated_method.snap +++ /dev/null @@ -1,19 +0,0 @@ ---- -created: "2019-06-29T10:30:34.110468474Z" -creator: insta@0.8.1 -source: crates/ra_ide_api/src/completion/completion_item.rs -expression: kind_completions ---- -[ - CompletionItem { - label: "m", - source_range: [100; 100), - delete: [100; 100), - insert: "m()$0", - kind: Function, - detail: "fn m()", - documentation: Documentation( - "An associated method", - ), - }, -] diff --git a/crates/ra_ide_api/src/completion/snapshots/completion_item__enum_variant.snap b/crates/ra_ide_api/src/completion/snapshots/completion_item__enum_variant.snap deleted file mode 100644 index e40217ca8..000000000 --- a/crates/ra_ide_api/src/completion/snapshots/completion_item__enum_variant.snap +++ /dev/null @@ -1,30 +0,0 @@ ---- -created: "2019-05-23T22:23:35.090178265Z" -creator: insta@0.8.1 -source: crates/ra_ide_api/src/completion/completion_item.rs -expression: kind_completions ---- -[ - CompletionItem { - label: "Bar", - source_range: [116; 116), - delete: [116; 116), - insert: "Bar", - kind: EnumVariant, - detail: "(i32)", - documentation: Documentation( - "Bar Variant with i32", - ), - }, - CompletionItem { - label: "Foo", - source_range: [116; 116), - delete: [116; 116), - insert: "Foo", - kind: EnumVariant, - detail: "()", - documentation: Documentation( - "Foo Variant", - ), - }, -] diff --git a/crates/ra_ide_api/src/completion/snapshots/completion_item__enum_variant_with_details.snap b/crates/ra_ide_api/src/completion/snapshots/completion_item__enum_variant_with_details.snap deleted file mode 100644 index e09d7988a..000000000 --- a/crates/ra_ide_api/src/completion/snapshots/completion_item__enum_variant_with_details.snap +++ /dev/null @@ -1,41 +0,0 @@ ---- -created: "2019-05-23T22:23:35.091325331Z" -creator: insta@0.8.1 -source: crates/ra_ide_api/src/completion/completion_item.rs -expression: kind_completions ---- -[ - CompletionItem { - label: "Bar", - source_range: [180; 180), - delete: [180; 180), - insert: "Bar", - kind: EnumVariant, - detail: "(i32, u32)", - documentation: Documentation( - "Bar Variant with i32 and u32", - ), - }, - CompletionItem { - label: "Foo", - source_range: [180; 180), - delete: [180; 180), - insert: "Foo", - kind: EnumVariant, - detail: "()", - documentation: Documentation( - "Foo Variant (empty)", - ), - }, - CompletionItem { - label: "S", - source_range: [180; 180), - delete: [180; 180), - insert: "S", - kind: EnumVariant, - detail: "(S)", - documentation: Documentation( - "", - ), - }, -] diff --git a/crates/ra_ide_api/src/completion/snapshots/completion_item__mod_with_docs.snap b/crates/ra_ide_api/src/completion/snapshots/completion_item__mod_with_docs.snap deleted file mode 100644 index f2b26e393..000000000 --- a/crates/ra_ide_api/src/completion/snapshots/completion_item__mod_with_docs.snap +++ /dev/null @@ -1,18 +0,0 @@ ---- -created: "2019-05-23T22:23:35.093689514Z" -creator: insta@0.8.1 -source: crates/ra_ide_api/src/completion/completion_item.rs -expression: kind_completions ---- -[ - CompletionItem { - label: "my", - source_range: [23; 25), - delete: [23; 25), - insert: "my", - kind: Module, - documentation: Documentation( - "Some simple\ndocs describing `mod my`.", - ), - }, -] diff --git a/crates/ra_ide_api/src/completion/snapshots/completion_item__nested_use_tree.snap b/crates/ra_ide_api/src/completion/snapshots/completion_item__nested_use_tree.snap deleted file mode 100644 index 4c143d28e..000000000 --- a/crates/ra_ide_api/src/completion/snapshots/completion_item__nested_use_tree.snap +++ /dev/null @@ -1,22 +0,0 @@ ---- -created: "2019-05-23T22:23:35.099358768Z" -creator: insta@0.8.1 -source: crates/ra_ide_api/src/completion/completion_item.rs -expression: kind_completions ---- -[ - CompletionItem { - label: "Spam", - source_range: [12; 14), - delete: [12; 14), - insert: "Spam", - kind: Struct, - }, - CompletionItem { - label: "foo", - source_range: [12; 14), - delete: [12; 14), - insert: "foo", - kind: Module, - }, -] diff --git a/crates/ra_ide_api/src/completion/snapshots/completion_item__struct_associated_const.snap b/crates/ra_ide_api/src/completion/snapshots/completion_item__struct_associated_const.snap deleted file mode 100644 index f7bc6177c..000000000 --- a/crates/ra_ide_api/src/completion/snapshots/completion_item__struct_associated_const.snap +++ /dev/null @@ -1,19 +0,0 @@ ---- -created: "2019-05-23T22:23:35.101474826Z" -creator: insta@0.8.1 -source: crates/ra_ide_api/src/completion/completion_item.rs -expression: kind_completions ---- -[ - CompletionItem { - label: "C", - source_range: [107; 107), - delete: [107; 107), - insert: "C", - kind: Const, - detail: "const C: i32 = 42;", - documentation: Documentation( - "An associated const", - ), - }, -] diff --git a/crates/ra_ide_api/src/completion/snapshots/completion_item__struct_associated_method.snap b/crates/ra_ide_api/src/completion/snapshots/completion_item__struct_associated_method.snap deleted file mode 100644 index 45080a802..000000000 --- a/crates/ra_ide_api/src/completion/snapshots/completion_item__struct_associated_method.snap +++ /dev/null @@ -1,19 +0,0 @@ ---- -created: "2019-05-23T22:23:35.102351365Z" -creator: insta@0.8.1 -source: crates/ra_ide_api/src/completion/completion_item.rs -expression: kind_completions ---- -[ - CompletionItem { - label: "m", - source_range: [100; 100), - delete: [100; 100), - insert: "m()$0", - kind: Function, - detail: "fn m()", - documentation: Documentation( - "An associated method", - ), - }, -] diff --git a/crates/ra_ide_api/src/completion/snapshots/completion_item__struct_associated_type.snap b/crates/ra_ide_api/src/completion/snapshots/completion_item__struct_associated_type.snap deleted file mode 100644 index f40065286..000000000 --- a/crates/ra_ide_api/src/completion/snapshots/completion_item__struct_associated_type.snap +++ /dev/null @@ -1,19 +0,0 @@ ---- -created: "2019-05-23T22:23:35.105188762Z" -creator: insta@0.8.1 -source: crates/ra_ide_api/src/completion/completion_item.rs -expression: kind_completions ---- -[ - CompletionItem { - label: "T", - source_range: [101; 101), - delete: [101; 101), - insert: "T", - kind: TypeAlias, - detail: "type T = i32;", - documentation: Documentation( - "An associated type", - ), - }, -] diff --git a/crates/ra_ide_api/src/completion/snapshots/completion_item__union_associated_method.snap b/crates/ra_ide_api/src/completion/snapshots/completion_item__union_associated_method.snap deleted file mode 100644 index 1c1a250f4..000000000 --- a/crates/ra_ide_api/src/completion/snapshots/completion_item__union_associated_method.snap +++ /dev/null @@ -1,19 +0,0 @@ ---- -created: "2019-06-29T10:37:44.968500164Z" -creator: insta@0.8.1 -source: crates/ra_ide_api/src/completion/completion_item.rs -expression: kind_completions ---- -[ - CompletionItem { - label: "m", - source_range: [101; 101), - delete: [101; 101), - insert: "m()$0", - kind: Function, - detail: "fn m()", - documentation: Documentation( - "An associated method", - ), - }, -] diff --git a/crates/ra_ide_api/src/completion/snapshots/completion_item__use_item_starting_with_crate.snap b/crates/ra_ide_api/src/completion/snapshots/completion_item__use_item_starting_with_crate.snap deleted file mode 100644 index 17e831c84..000000000 --- a/crates/ra_ide_api/src/completion/snapshots/completion_item__use_item_starting_with_crate.snap +++ /dev/null @@ -1,22 +0,0 @@ ---- -created: "2019-05-23T22:23:35.105336210Z" -creator: insta@0.8.1 -source: crates/ra_ide_api/src/completion/completion_item.rs -expression: kind_completions ---- -[ - CompletionItem { - label: "Spam", - source_range: [11; 13), - delete: [11; 13), - insert: "Spam", - kind: Struct, - }, - CompletionItem { - label: "foo", - source_range: [11; 13), - delete: [11; 13), - insert: "foo", - kind: Module, - }, -] diff --git a/crates/ra_ide_api/src/completion/snapshots/completion_item__use_item_starting_with_self.snap b/crates/ra_ide_api/src/completion/snapshots/completion_item__use_item_starting_with_self.snap deleted file mode 100644 index d1abc6b5b..000000000 --- a/crates/ra_ide_api/src/completion/snapshots/completion_item__use_item_starting_with_self.snap +++ /dev/null @@ -1,15 +0,0 @@ ---- -created: "2019-05-23T22:23:35.106923266Z" -creator: insta@0.8.1 -source: crates/ra_ide_api/src/completion/completion_item.rs -expression: kind_completions ---- -[ - CompletionItem { - label: "Bar", - source_range: [26; 26), - delete: [26; 26), - insert: "Bar", - kind: Struct, - }, -] -- cgit v1.2.3