diff options
| author | Lukas Wirth <lukastw97@gmail.com> | 2021-09-30 18:15:55 +0200 |
|---|---|---|
| committer | Lukas Wirth <lukastw97@gmail.com> | 2021-09-30 18:15:55 +0200 |
| commit | d7d16a7ac917d1493409a6f0d7d2991d2075be4f (patch) | |
| tree | dec01b17e30a7d19429a8904671a5d96700f81eb | |
| parent | 533ca584c31a251bc47f978b55df9b69058dabba (diff) | |
| download | rust-d7d16a7ac917d1493409a6f0d7d2991d2075be4f.tar.gz rust-d7d16a7ac917d1493409a6f0d7d2991d2075be4f.zip | |
Don't show flyimport completions in use renames
| -rw-r--r-- | crates/ide_completion/src/completions/flyimport.rs | 13 | ||||
| -rw-r--r-- | crates/ide_completion/src/context.rs | 1 | ||||
| -rw-r--r-- | crates/ide_completion/src/patterns.rs | 2 |
3 files changed, 16 insertions, 0 deletions
diff --git a/crates/ide_completion/src/completions/flyimport.rs b/crates/ide_completion/src/completions/flyimport.rs index 9e6d26640e7..d7c8c54315c 100644 --- a/crates/ide_completion/src/completions/flyimport.rs +++ b/crates/ide_completion/src/completions/flyimport.rs @@ -1220,4 +1220,17 @@ fn function() { "#]], ); } + + #[test] + fn flyimport_rename() { + check( + r#" +mod module { + pub struct Struct; +} +use self as Str$0; + "#, + expect![[r#""#]], + ); + } } diff --git a/crates/ide_completion/src/context.rs b/crates/ide_completion/src/context.rs index 9d3e894a3db..ddf8722bc85 100644 --- a/crates/ide_completion/src/context.rs +++ b/crates/ide_completion/src/context.rs @@ -383,6 +383,7 @@ impl<'a> CompletionContext<'a> { | ImmediateLocation::ModDeclaration(_) | ImmediateLocation::RecordPat(_) | ImmediateLocation::RecordExpr(_) + | ImmediateLocation::Rename ) ) } diff --git a/crates/ide_completion/src/patterns.rs b/crates/ide_completion/src/patterns.rs index 381a6a83aac..d5d81bf2f16 100644 --- a/crates/ide_completion/src/patterns.rs +++ b/crates/ide_completion/src/patterns.rs @@ -32,6 +32,7 @@ pub(crate) enum ImmediatePrevSibling { pub(crate) enum ImmediateLocation { Use, UseTree, + Rename, Impl, Trait, RecordField, @@ -201,6 +202,7 @@ pub(crate) fn determine_location( ast::Use(_it) => ImmediateLocation::Use, ast::UseTree(_it) => ImmediateLocation::UseTree, ast::UseTreeList(_it) => ImmediateLocation::UseTree, + ast::Rename(_it) => ImmediateLocation::Rename, ast::StmtList(_it) => ImmediateLocation::StmtList, ast::SourceFile(_it) => ImmediateLocation::ItemList, ast::ItemList(_it) => ImmediateLocation::ItemList, |
