mirror of
https://github.com/rust-lang/rust-analyzer
synced 2024-12-24 12:03:31 +00:00
do not add to pub use
statements
This commit is contained in:
parent
33e53d4721
commit
03a61134f2
2 changed files with 44 additions and 1 deletions
|
@ -639,6 +639,48 @@ use std::fmt::{self, Display};
|
|||
|
||||
fn main() {
|
||||
fmt;
|
||||
}
|
||||
",
|
||||
);
|
||||
}
|
||||
|
||||
#[test]
|
||||
fn does_not_replace_pub_use() {
|
||||
check_assist(
|
||||
replace_qualified_name_with_use,
|
||||
r"
|
||||
pub use std::fmt;
|
||||
|
||||
impl std::io<|> for Foo {
|
||||
}
|
||||
",
|
||||
r"
|
||||
use std::io;
|
||||
|
||||
pub use std::fmt;
|
||||
|
||||
impl io for Foo {
|
||||
}
|
||||
",
|
||||
);
|
||||
}
|
||||
|
||||
#[test]
|
||||
fn does_not_replace_pub_crate_use() {
|
||||
check_assist(
|
||||
replace_qualified_name_with_use,
|
||||
r"
|
||||
pub(crate) use std::fmt;
|
||||
|
||||
impl std::io<|> for Foo {
|
||||
}
|
||||
",
|
||||
r"
|
||||
use std::io;
|
||||
|
||||
pub(crate) use std::fmt;
|
||||
|
||||
impl io for Foo {
|
||||
}
|
||||
",
|
||||
);
|
||||
|
|
|
@ -4,7 +4,7 @@
|
|||
|
||||
use hir::{self, ModPath};
|
||||
use ra_syntax::{
|
||||
ast::{self, NameOwner},
|
||||
ast::{self, NameOwner, VisibilityOwner},
|
||||
AstNode, Direction, SmolStr,
|
||||
SyntaxKind::{PATH, PATH_SEGMENT},
|
||||
SyntaxNode, T,
|
||||
|
@ -378,6 +378,7 @@ fn best_action_for_target(
|
|||
let best_action = container
|
||||
.children()
|
||||
.filter_map(ast::Use::cast)
|
||||
.filter(|u| u.visibility().is_none())
|
||||
.filter_map(|it| it.use_tree())
|
||||
.map(|u| walk_use_tree_for_best_action(&mut storage, None, u, target))
|
||||
.fold(None, |best, a| match best {
|
||||
|
|
Loading…
Reference in a new issue