aboutsummaryrefslogtreecommitdiff
path: root/crates/assists/src/handlers/fix_visibility.rs
diff options
context:
space:
mode:
Diffstat (limited to 'crates/assists/src/handlers/fix_visibility.rs')
-rw-r--r--crates/assists/src/handlers/fix_visibility.rs79
1 files changed, 39 insertions, 40 deletions
diff --git a/crates/assists/src/handlers/fix_visibility.rs b/crates/assists/src/handlers/fix_visibility.rs
index de1e8f0bf..6c7824e55 100644
--- a/crates/assists/src/handlers/fix_visibility.rs
+++ b/crates/assists/src/handlers/fix_visibility.rs
@@ -18,7 +18,7 @@ use crate::{utils::vis_offset, AssistContext, AssistId, AssistKind, Assists};
18// fn frobnicate() {} 18// fn frobnicate() {}
19// } 19// }
20// fn main() { 20// fn main() {
21// m::frobnicate<|>() {} 21// m::frobnicate$0() {}
22// } 22// }
23// ``` 23// ```
24// -> 24// ->
@@ -97,7 +97,6 @@ fn add_vis_to_referenced_record_field(acc: &mut Assists, ctx: &AssistContext) ->
97 let parent_name = parent.name(ctx.db()); 97 let parent_name = parent.name(ctx.db());
98 let target_module = parent.module(ctx.db()); 98 let target_module = parent.module(ctx.db());
99 99
100 #[allow(deprecated)]
101 let in_file_source = record_field_def.source(ctx.db())?; 100 let in_file_source = record_field_def.source(ctx.db())?;
102 let (offset, current_visibility, target) = match in_file_source.value { 101 let (offset, current_visibility, target) = match in_file_source.value {
103 hir::FieldSource::Named(it) => { 102 hir::FieldSource::Named(it) => {
@@ -219,14 +218,14 @@ mod tests {
219 check_assist( 218 check_assist(
220 fix_visibility, 219 fix_visibility,
221 r"mod foo { fn foo() {} } 220 r"mod foo { fn foo() {} }
222 fn main() { foo::foo<|>() } ", 221 fn main() { foo::foo$0() } ",
223 r"mod foo { $0pub(crate) fn foo() {} } 222 r"mod foo { $0pub(crate) fn foo() {} }
224 fn main() { foo::foo() } ", 223 fn main() { foo::foo() } ",
225 ); 224 );
226 check_assist_not_applicable( 225 check_assist_not_applicable(
227 fix_visibility, 226 fix_visibility,
228 r"mod foo { pub fn foo() {} } 227 r"mod foo { pub fn foo() {} }
229 fn main() { foo::foo<|>() } ", 228 fn main() { foo::foo$0() } ",
230 ) 229 )
231 } 230 }
232 231
@@ -235,38 +234,38 @@ mod tests {
235 check_assist( 234 check_assist(
236 fix_visibility, 235 fix_visibility,
237 r"mod foo { struct Foo; } 236 r"mod foo { struct Foo; }
238 fn main() { foo::Foo<|> } ", 237 fn main() { foo::Foo$0 } ",
239 r"mod foo { $0pub(crate) struct Foo; } 238 r"mod foo { $0pub(crate) struct Foo; }
240 fn main() { foo::Foo } ", 239 fn main() { foo::Foo } ",
241 ); 240 );
242 check_assist_not_applicable( 241 check_assist_not_applicable(
243 fix_visibility, 242 fix_visibility,
244 r"mod foo { pub struct Foo; } 243 r"mod foo { pub struct Foo; }
245 fn main() { foo::Foo<|> } ", 244 fn main() { foo::Foo$0 } ",
246 ); 245 );
247 check_assist( 246 check_assist(
248 fix_visibility, 247 fix_visibility,
249 r"mod foo { enum Foo; } 248 r"mod foo { enum Foo; }
250 fn main() { foo::Foo<|> } ", 249 fn main() { foo::Foo$0 } ",
251 r"mod foo { $0pub(crate) enum Foo; } 250 r"mod foo { $0pub(crate) enum Foo; }
252 fn main() { foo::Foo } ", 251 fn main() { foo::Foo } ",
253 ); 252 );
254 check_assist_not_applicable( 253 check_assist_not_applicable(
255 fix_visibility, 254 fix_visibility,
256 r"mod foo { pub enum Foo; } 255 r"mod foo { pub enum Foo; }
257 fn main() { foo::Foo<|> } ", 256 fn main() { foo::Foo$0 } ",
258 ); 257 );
259 check_assist( 258 check_assist(
260 fix_visibility, 259 fix_visibility,
261 r"mod foo { union Foo; } 260 r"mod foo { union Foo; }
262 fn main() { foo::Foo<|> } ", 261 fn main() { foo::Foo$0 } ",
263 r"mod foo { $0pub(crate) union Foo; } 262 r"mod foo { $0pub(crate) union Foo; }
264 fn main() { foo::Foo } ", 263 fn main() { foo::Foo } ",
265 ); 264 );
266 check_assist_not_applicable( 265 check_assist_not_applicable(
267 fix_visibility, 266 fix_visibility,
268 r"mod foo { pub union Foo; } 267 r"mod foo { pub union Foo; }
269 fn main() { foo::Foo<|> } ", 268 fn main() { foo::Foo$0 } ",
270 ); 269 );
271 } 270 }
272 271
@@ -277,7 +276,7 @@ mod tests {
277 r" 276 r"
278//- /main.rs 277//- /main.rs
279mod foo; 278mod foo;
280fn main() { foo::Foo<|> } 279fn main() { foo::Foo$0 }
281 280
282//- /foo.rs 281//- /foo.rs
283struct Foo; 282struct Foo;
@@ -292,7 +291,7 @@ struct Foo;
292 check_assist( 291 check_assist(
293 fix_visibility, 292 fix_visibility,
294 r"mod foo { pub struct Foo { bar: (), } } 293 r"mod foo { pub struct Foo { bar: (), } }
295 fn main() { foo::Foo { <|>bar: () }; } ", 294 fn main() { foo::Foo { $0bar: () }; } ",
296 r"mod foo { pub struct Foo { $0pub(crate) bar: (), } } 295 r"mod foo { pub struct Foo { $0pub(crate) bar: (), } }
297 fn main() { foo::Foo { bar: () }; } ", 296 fn main() { foo::Foo { bar: () }; } ",
298 ); 297 );
@@ -301,7 +300,7 @@ struct Foo;
301 r" 300 r"
302//- /lib.rs 301//- /lib.rs
303mod foo; 302mod foo;
304fn main() { foo::Foo { <|>bar: () }; } 303fn main() { foo::Foo { $0bar: () }; }
305//- /foo.rs 304//- /foo.rs
306pub struct Foo { bar: () } 305pub struct Foo { bar: () }
307", 306",
@@ -311,14 +310,14 @@ pub struct Foo { bar: () }
311 check_assist_not_applicable( 310 check_assist_not_applicable(
312 fix_visibility, 311 fix_visibility,
313 r"mod foo { pub struct Foo { pub bar: (), } } 312 r"mod foo { pub struct Foo { pub bar: (), } }
314 fn main() { foo::Foo { <|>bar: () }; } ", 313 fn main() { foo::Foo { $0bar: () }; } ",
315 ); 314 );
316 check_assist_not_applicable( 315 check_assist_not_applicable(
317 fix_visibility, 316 fix_visibility,
318 r" 317 r"
319//- /lib.rs 318//- /lib.rs
320mod foo; 319mod foo;
321fn main() { foo::Foo { <|>bar: () }; } 320fn main() { foo::Foo { $0bar: () }; }
322//- /foo.rs 321//- /foo.rs
323pub struct Foo { pub bar: () } 322pub struct Foo { pub bar: () }
324", 323",
@@ -332,14 +331,14 @@ pub struct Foo { pub bar: () }
332 check_assist_not_applicable( 331 check_assist_not_applicable(
333 fix_visibility, 332 fix_visibility,
334 r"mod foo { pub enum Foo { Bar { bar: () } } } 333 r"mod foo { pub enum Foo { Bar { bar: () } } }
335 fn main() { foo::Foo::Bar { <|>bar: () }; } ", 334 fn main() { foo::Foo::Bar { $0bar: () }; } ",
336 ); 335 );
337 check_assist_not_applicable( 336 check_assist_not_applicable(
338 fix_visibility, 337 fix_visibility,
339 r" 338 r"
340//- /lib.rs 339//- /lib.rs
341mod foo; 340mod foo;
342fn main() { foo::Foo::Bar { <|>bar: () }; } 341fn main() { foo::Foo::Bar { $0bar: () }; }
343//- /foo.rs 342//- /foo.rs
344pub enum Foo { Bar { bar: () } } 343pub enum Foo { Bar { bar: () } }
345", 344",
@@ -347,14 +346,14 @@ pub enum Foo { Bar { bar: () } }
347 check_assist_not_applicable( 346 check_assist_not_applicable(
348 fix_visibility, 347 fix_visibility,
349 r"mod foo { pub struct Foo { pub bar: (), } } 348 r"mod foo { pub struct Foo { pub bar: (), } }
350 fn main() { foo::Foo { <|>bar: () }; } ", 349 fn main() { foo::Foo { $0bar: () }; } ",
351 ); 350 );
352 check_assist_not_applicable( 351 check_assist_not_applicable(
353 fix_visibility, 352 fix_visibility,
354 r" 353 r"
355//- /lib.rs 354//- /lib.rs
356mod foo; 355mod foo;
357fn main() { foo::Foo { <|>bar: () }; } 356fn main() { foo::Foo { $0bar: () }; }
358//- /foo.rs 357//- /foo.rs
359pub struct Foo { pub bar: () } 358pub struct Foo { pub bar: () }
360", 359",
@@ -368,7 +367,7 @@ pub struct Foo { pub bar: () }
368 check_assist( 367 check_assist(
369 fix_visibility, 368 fix_visibility,
370 r"mod foo { pub union Foo { bar: (), } } 369 r"mod foo { pub union Foo { bar: (), } }
371 fn main() { foo::Foo { <|>bar: () }; } ", 370 fn main() { foo::Foo { $0bar: () }; } ",
372 r"mod foo { pub union Foo { $0pub(crate) bar: (), } } 371 r"mod foo { pub union Foo { $0pub(crate) bar: (), } }
373 fn main() { foo::Foo { bar: () }; } ", 372 fn main() { foo::Foo { bar: () }; } ",
374 ); 373 );
@@ -377,7 +376,7 @@ pub struct Foo { pub bar: () }
377 r" 376 r"
378//- /lib.rs 377//- /lib.rs
379mod foo; 378mod foo;
380fn main() { foo::Foo { <|>bar: () }; } 379fn main() { foo::Foo { $0bar: () }; }
381//- /foo.rs 380//- /foo.rs
382pub union Foo { bar: () } 381pub union Foo { bar: () }
383", 382",
@@ -387,14 +386,14 @@ pub union Foo { bar: () }
387 check_assist_not_applicable( 386 check_assist_not_applicable(
388 fix_visibility, 387 fix_visibility,
389 r"mod foo { pub union Foo { pub bar: (), } } 388 r"mod foo { pub union Foo { pub bar: (), } }
390 fn main() { foo::Foo { <|>bar: () }; } ", 389 fn main() { foo::Foo { $0bar: () }; } ",
391 ); 390 );
392 check_assist_not_applicable( 391 check_assist_not_applicable(
393 fix_visibility, 392 fix_visibility,
394 r" 393 r"
395//- /lib.rs 394//- /lib.rs
396mod foo; 395mod foo;
397fn main() { foo::Foo { <|>bar: () }; } 396fn main() { foo::Foo { $0bar: () }; }
398//- /foo.rs 397//- /foo.rs
399pub union Foo { pub bar: () } 398pub union Foo { pub bar: () }
400", 399",
@@ -406,14 +405,14 @@ pub union Foo { pub bar: () }
406 check_assist( 405 check_assist(
407 fix_visibility, 406 fix_visibility,
408 r"mod foo { const FOO: () = (); } 407 r"mod foo { const FOO: () = (); }
409 fn main() { foo::FOO<|> } ", 408 fn main() { foo::FOO$0 } ",
410 r"mod foo { $0pub(crate) const FOO: () = (); } 409 r"mod foo { $0pub(crate) const FOO: () = (); }
411 fn main() { foo::FOO } ", 410 fn main() { foo::FOO } ",
412 ); 411 );
413 check_assist_not_applicable( 412 check_assist_not_applicable(
414 fix_visibility, 413 fix_visibility,
415 r"mod foo { pub const FOO: () = (); } 414 r"mod foo { pub const FOO: () = (); }
416 fn main() { foo::FOO<|> } ", 415 fn main() { foo::FOO$0 } ",
417 ); 416 );
418 } 417 }
419 418
@@ -422,14 +421,14 @@ pub union Foo { pub bar: () }
422 check_assist( 421 check_assist(
423 fix_visibility, 422 fix_visibility,
424 r"mod foo { static FOO: () = (); } 423 r"mod foo { static FOO: () = (); }
425 fn main() { foo::FOO<|> } ", 424 fn main() { foo::FOO$0 } ",
426 r"mod foo { $0pub(crate) static FOO: () = (); } 425 r"mod foo { $0pub(crate) static FOO: () = (); }
427 fn main() { foo::FOO } ", 426 fn main() { foo::FOO } ",
428 ); 427 );
429 check_assist_not_applicable( 428 check_assist_not_applicable(
430 fix_visibility, 429 fix_visibility,
431 r"mod foo { pub static FOO: () = (); } 430 r"mod foo { pub static FOO: () = (); }
432 fn main() { foo::FOO<|> } ", 431 fn main() { foo::FOO$0 } ",
433 ); 432 );
434 } 433 }
435 434
@@ -438,14 +437,14 @@ pub union Foo { pub bar: () }
438 check_assist( 437 check_assist(
439 fix_visibility, 438 fix_visibility,
440 r"mod foo { trait Foo { fn foo(&self) {} } } 439 r"mod foo { trait Foo { fn foo(&self) {} } }
441 fn main() { let x: &dyn foo::<|>Foo; } ", 440 fn main() { let x: &dyn foo::$0Foo; } ",
442 r"mod foo { $0pub(crate) trait Foo { fn foo(&self) {} } } 441 r"mod foo { $0pub(crate) trait Foo { fn foo(&self) {} } }
443 fn main() { let x: &dyn foo::Foo; } ", 442 fn main() { let x: &dyn foo::Foo; } ",
444 ); 443 );
445 check_assist_not_applicable( 444 check_assist_not_applicable(
446 fix_visibility, 445 fix_visibility,
447 r"mod foo { pub trait Foo { fn foo(&self) {} } } 446 r"mod foo { pub trait Foo { fn foo(&self) {} } }
448 fn main() { let x: &dyn foo::Foo<|>; } ", 447 fn main() { let x: &dyn foo::Foo$0; } ",
449 ); 448 );
450 } 449 }
451 450
@@ -454,14 +453,14 @@ pub union Foo { pub bar: () }
454 check_assist( 453 check_assist(
455 fix_visibility, 454 fix_visibility,
456 r"mod foo { type Foo = (); } 455 r"mod foo { type Foo = (); }
457 fn main() { let x: foo::Foo<|>; } ", 456 fn main() { let x: foo::Foo$0; } ",
458 r"mod foo { $0pub(crate) type Foo = (); } 457 r"mod foo { $0pub(crate) type Foo = (); }
459 fn main() { let x: foo::Foo; } ", 458 fn main() { let x: foo::Foo; } ",
460 ); 459 );
461 check_assist_not_applicable( 460 check_assist_not_applicable(
462 fix_visibility, 461 fix_visibility,
463 r"mod foo { pub type Foo = (); } 462 r"mod foo { pub type Foo = (); }
464 fn main() { let x: foo::Foo<|>; } ", 463 fn main() { let x: foo::Foo$0; } ",
465 ); 464 );
466 } 465 }
467 466
@@ -470,7 +469,7 @@ pub union Foo { pub bar: () }
470 check_assist( 469 check_assist(
471 fix_visibility, 470 fix_visibility,
472 r"mod foo { mod bar { fn bar() {} } } 471 r"mod foo { mod bar { fn bar() {} } }
473 fn main() { foo::bar<|>::bar(); } ", 472 fn main() { foo::bar$0::bar(); } ",
474 r"mod foo { $0pub(crate) mod bar { fn bar() {} } } 473 r"mod foo { $0pub(crate) mod bar { fn bar() {} } }
475 fn main() { foo::bar::bar(); } ", 474 fn main() { foo::bar::bar(); } ",
476 ); 475 );
@@ -480,7 +479,7 @@ pub union Foo { pub bar: () }
480 r" 479 r"
481//- /main.rs 480//- /main.rs
482mod foo; 481mod foo;
483fn main() { foo::bar<|>::baz(); } 482fn main() { foo::bar$0::baz(); }
484 483
485//- /foo.rs 484//- /foo.rs
486mod bar { 485mod bar {
@@ -496,7 +495,7 @@ mod bar {
496 check_assist_not_applicable( 495 check_assist_not_applicable(
497 fix_visibility, 496 fix_visibility,
498 r"mod foo { pub mod bar { pub fn bar() {} } } 497 r"mod foo { pub mod bar { pub fn bar() {} } }
499 fn main() { foo::bar<|>::bar(); } ", 498 fn main() { foo::bar$0::bar(); } ",
500 ); 499 );
501 } 500 }
502 501
@@ -507,7 +506,7 @@ mod bar {
507 r" 506 r"
508//- /main.rs 507//- /main.rs
509mod foo; 508mod foo;
510fn main() { foo::bar<|>::baz(); } 509fn main() { foo::bar$0::baz(); }
511 510
512//- /foo.rs 511//- /foo.rs
513mod bar; 512mod bar;
@@ -526,7 +525,7 @@ pub fn baz() {}
526 r" 525 r"
527//- /main.rs 526//- /main.rs
528mod foo; 527mod foo;
529fn main() { foo::bar<|>>::baz(); } 528fn main() { foo::bar$0>::baz(); }
530 529
531//- /foo.rs 530//- /foo.rs
532mod bar { 531mod bar {
@@ -546,7 +545,7 @@ mod bar {
546 fix_visibility, 545 fix_visibility,
547 r" 546 r"
548//- /main.rs crate:a deps:foo 547//- /main.rs crate:a deps:foo
549foo::Bar<|> 548foo::Bar$0
550//- /lib.rs crate:foo 549//- /lib.rs crate:foo
551struct Bar; 550struct Bar;
552", 551",
@@ -561,7 +560,7 @@ struct Bar;
561 fix_visibility, 560 fix_visibility,
562 r" 561 r"
563//- /main.rs crate:a deps:foo 562//- /main.rs crate:a deps:foo
564foo::Bar<|> 563foo::Bar$0
565//- /lib.rs crate:foo 564//- /lib.rs crate:foo
566pub(crate) struct Bar; 565pub(crate) struct Bar;
567", 566",
@@ -573,7 +572,7 @@ pub(crate) struct Bar;
573 r" 572 r"
574//- /main.rs crate:a deps:foo 573//- /main.rs crate:a deps:foo
575fn main() { 574fn main() {
576 foo::Foo { <|>bar: () }; 575 foo::Foo { $0bar: () };
577} 576}
578//- /lib.rs crate:foo 577//- /lib.rs crate:foo
579pub struct Foo { pub(crate) bar: () } 578pub struct Foo { pub(crate) bar: () }
@@ -594,7 +593,7 @@ pub struct Foo { pub(crate) bar: () }
594 use bar::Baz; 593 use bar::Baz;
595 mod bar { pub(super) struct Baz; } 594 mod bar { pub(super) struct Baz; }
596 } 595 }
597 foo::Baz<|> 596 foo::Baz$0
598 ", 597 ",
599 r" 598 r"
600 mod foo { 599 mod foo {