From c7fefd522347a57460058c78d0c96b78eac535f7 Mon Sep 17 00:00:00 2001 From: Peh <20146907+randomicon00@users.noreply.github.com> Date: Thu, 8 Sep 2022 22:37:31 +0100 Subject: [PATCH] fix: add semicolon completion to mod --- .../src/completions/.mod_.rs.swp | Bin 0 -> 24576 bytes crates/ide-completion/src/completions/mod_.rs | 20 ++++++++++++++++++ 2 files changed, 20 insertions(+) create mode 100644 crates/ide-completion/src/completions/.mod_.rs.swp diff --git a/crates/ide-completion/src/completions/.mod_.rs.swp b/crates/ide-completion/src/completions/.mod_.rs.swp new file mode 100644 index 0000000000000000000000000000000000000000..52d5cea48b2a7a54bbe6a0cd34a00d38a14829f6 GIT binary patch literal 24576 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 literal 0 HcmV?d00001 diff --git a/crates/ide-completion/src/completions/mod_.rs b/crates/ide-completion/src/completions/mod_.rs index 9c975b92953..950731eb4ca 100644 --- a/crates/ide-completion/src/completions/mod_.rs +++ b/crates/ide-completion/src/completions/mod_.rs @@ -53,6 +53,7 @@ pub(crate) fn complete_mod( let existing_mod_declarations = current_module .children(ctx.db) .filter_map(|module| Some(module.name(ctx.db)?.to_string())) + .filter(|module| module != ctx.original_token.text()) .collect::>(); let module_declaration_file = @@ -351,4 +352,23 @@ fn ignored_bar() {} "#]], ); } + + #[test] + fn semi_colon_completion() { + check( + r#" +//- /lib.rs +mod foo; +//- /foo.rs +mod bar { + mod baz$0 +} +//- /foo/bar/baz.rs +fn baz() {} +"#, + expect![[r#" + md baz; + "#]], + ); + } } -- 2.44.0