diff options
Diffstat (limited to 'crates/assists/src/handlers/fix_visibility.rs')
-rw-r--r-- | crates/assists/src/handlers/fix_visibility.rs | 79 |
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 |
279 | mod foo; | 278 | mod foo; |
280 | fn main() { foo::Foo<|> } | 279 | fn main() { foo::Foo$0 } |
281 | 280 | ||
282 | //- /foo.rs | 281 | //- /foo.rs |
283 | struct Foo; | 282 | struct 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 |
303 | mod foo; | 302 | mod foo; |
304 | fn main() { foo::Foo { <|>bar: () }; } | 303 | fn main() { foo::Foo { $0bar: () }; } |
305 | //- /foo.rs | 304 | //- /foo.rs |
306 | pub struct Foo { bar: () } | 305 | pub 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 |
320 | mod foo; | 319 | mod foo; |
321 | fn main() { foo::Foo { <|>bar: () }; } | 320 | fn main() { foo::Foo { $0bar: () }; } |
322 | //- /foo.rs | 321 | //- /foo.rs |
323 | pub struct Foo { pub bar: () } | 322 | pub 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 |
341 | mod foo; | 340 | mod foo; |
342 | fn main() { foo::Foo::Bar { <|>bar: () }; } | 341 | fn main() { foo::Foo::Bar { $0bar: () }; } |
343 | //- /foo.rs | 342 | //- /foo.rs |
344 | pub enum Foo { Bar { bar: () } } | 343 | pub 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 |
356 | mod foo; | 355 | mod foo; |
357 | fn main() { foo::Foo { <|>bar: () }; } | 356 | fn main() { foo::Foo { $0bar: () }; } |
358 | //- /foo.rs | 357 | //- /foo.rs |
359 | pub struct Foo { pub bar: () } | 358 | pub 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 |
379 | mod foo; | 378 | mod foo; |
380 | fn main() { foo::Foo { <|>bar: () }; } | 379 | fn main() { foo::Foo { $0bar: () }; } |
381 | //- /foo.rs | 380 | //- /foo.rs |
382 | pub union Foo { bar: () } | 381 | pub 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 |
396 | mod foo; | 395 | mod foo; |
397 | fn main() { foo::Foo { <|>bar: () }; } | 396 | fn main() { foo::Foo { $0bar: () }; } |
398 | //- /foo.rs | 397 | //- /foo.rs |
399 | pub union Foo { pub bar: () } | 398 | pub 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 |
482 | mod foo; | 481 | mod foo; |
483 | fn main() { foo::bar<|>::baz(); } | 482 | fn main() { foo::bar$0::baz(); } |
484 | 483 | ||
485 | //- /foo.rs | 484 | //- /foo.rs |
486 | mod bar { | 485 | mod 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 |
509 | mod foo; | 508 | mod foo; |
510 | fn main() { foo::bar<|>::baz(); } | 509 | fn main() { foo::bar$0::baz(); } |
511 | 510 | ||
512 | //- /foo.rs | 511 | //- /foo.rs |
513 | mod bar; | 512 | mod bar; |
@@ -526,7 +525,7 @@ pub fn baz() {} | |||
526 | r" | 525 | r" |
527 | //- /main.rs | 526 | //- /main.rs |
528 | mod foo; | 527 | mod foo; |
529 | fn main() { foo::bar<|>>::baz(); } | 528 | fn main() { foo::bar$0>::baz(); } |
530 | 529 | ||
531 | //- /foo.rs | 530 | //- /foo.rs |
532 | mod bar { | 531 | mod 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 |
549 | foo::Bar<|> | 548 | foo::Bar$0 |
550 | //- /lib.rs crate:foo | 549 | //- /lib.rs crate:foo |
551 | struct Bar; | 550 | struct 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 |
564 | foo::Bar<|> | 563 | foo::Bar$0 |
565 | //- /lib.rs crate:foo | 564 | //- /lib.rs crate:foo |
566 | pub(crate) struct Bar; | 565 | pub(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 |
575 | fn main() { | 574 | fn main() { |
576 | foo::Foo { <|>bar: () }; | 575 | foo::Foo { $0bar: () }; |
577 | } | 576 | } |
578 | //- /lib.rs crate:foo | 577 | //- /lib.rs crate:foo |
579 | pub struct Foo { pub(crate) bar: () } | 578 | pub 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 { |