about summary refs log tree commit diff
diff options
context:
space:
mode:
authorAriel Davis <ariel.z.davis@icloud.com>2021-09-29 21:55:15 -0700
committerAriel Davis <ariel.z.davis@icloud.com>2021-09-29 21:55:15 -0700
commit00a615b819ee0bc565148415f0b9fcb947dfc006 (patch)
tree24d508a5b113b7451c07afdb5c3fb330ad689c63
parentb21f15a23767c8d06ab5da60f59b8b197c45831a (diff)
downloadrust-00a615b819ee0bc565148415f0b9fcb947dfc006.tar.gz
rust-00a615b819ee0bc565148415f0b9fcb947dfc006.zip
Add pub(super) along with pub(crate) and pub as a completion keyword
-rw-r--r--crates/ide_completion/src/completions/keyword.rs1
-rw-r--r--crates/ide_completion/src/tests/item.rs3
-rw-r--r--crates/ide_completion/src/tests/item_list.rs6
-rw-r--r--crates/ide_completion/src/tests/type_pos.rs1
4 files changed, 11 insertions, 0 deletions
diff --git a/crates/ide_completion/src/completions/keyword.rs b/crates/ide_completion/src/completions/keyword.rs
index 9a4cd8628ae..31aabd98d3e 100644
--- a/crates/ide_completion/src/completions/keyword.rs
+++ b/crates/ide_completion/src/completions/keyword.rs
@@ -64,6 +64,7 @@ pub(crate) fn complete_expr_keyword(acc: &mut Completions, ctx: &CompletionConte
         && (expects_item || ctx.expects_non_trait_assoc_item() || ctx.expect_field())
     {
         add_keyword("pub(crate)", "pub(crate)");
+        add_keyword("pub(super)", "pub(super)");
         add_keyword("pub", "pub");
     }
 
diff --git a/crates/ide_completion/src/tests/item.rs b/crates/ide_completion/src/tests/item.rs
index e77082ebb85..d94fab2f5f2 100644
--- a/crates/ide_completion/src/tests/item.rs
+++ b/crates/ide_completion/src/tests/item.rs
@@ -87,6 +87,7 @@ fn after_struct_name() {
         r"struct Struct $0",
         expect![[r##"
             kw pub(crate)
+            kw pub(super)
             kw pub
             kw unsafe
             kw fn
@@ -120,6 +121,7 @@ fn after_fn_name() {
         r"fn func() $0",
         expect![[r##"
             kw pub(crate)
+            kw pub(super)
             kw pub
             kw unsafe
             kw fn
@@ -157,6 +159,7 @@ struct Foo {
 "#,
         expect![[r#"
             kw pub(crate)
+            kw pub(super)
             kw pub
         "#]],
     )
diff --git a/crates/ide_completion/src/tests/item_list.rs b/crates/ide_completion/src/tests/item_list.rs
index f355d37afc2..4c769630549 100644
--- a/crates/ide_completion/src/tests/item_list.rs
+++ b/crates/ide_completion/src/tests/item_list.rs
@@ -14,6 +14,7 @@ fn in_mod_item_list() {
         r#"mod tests { $0 }"#,
         expect![[r##"
             kw pub(crate)
+            kw pub(super)
             kw pub
             kw unsafe
             kw fn
@@ -45,6 +46,7 @@ fn in_source_file_item_list() {
         r#"$0"#,
         expect![[r##"
             kw pub(crate)
+            kw pub(super)
             kw pub
             kw unsafe
             kw fn
@@ -77,6 +79,7 @@ fn in_item_list_after_attr() {
         r#"#[attr] $0"#,
         expect![[r#"
             kw pub(crate)
+            kw pub(super)
             kw pub
             kw unsafe
             kw fn
@@ -161,6 +164,7 @@ fn in_impl_assoc_item_list() {
         r#"impl Struct { $0 }"#,
         expect![[r##"
             kw pub(crate)
+            kw pub(super)
             kw pub
             kw unsafe
             kw fn
@@ -181,6 +185,7 @@ fn in_impl_assoc_item_list_after_attr() {
         r#"impl Struct { #[attr] $0 }"#,
         expect![[r#"
             kw pub(crate)
+            kw pub(super)
             kw pub
             kw unsafe
             kw fn
@@ -230,6 +235,7 @@ impl Test for () {
 "#,
         expect![[r##"
             kw pub(crate)
+            kw pub(super)
             kw pub
             kw unsafe
             kw fn
diff --git a/crates/ide_completion/src/tests/type_pos.rs b/crates/ide_completion/src/tests/type_pos.rs
index b6cf8945e23..a03f1e7ff8d 100644
--- a/crates/ide_completion/src/tests/type_pos.rs
+++ b/crates/ide_completion/src/tests/type_pos.rs
@@ -44,6 +44,7 @@ struct Foo<'lt, T, const C: usize>(f$0);
 "#,
         expect![[r##"
             kw pub(crate)
+            kw pub(super)
             kw pub
             kw self
             kw super