9772: feat: filter out duplicate macro completions r=matklad a=matklad

bors r+
🤖

Co-authored-by: Aleksey Kladov <aleksey.kladov@gmail.com>
This commit is contained in:
bors[bot] 2021-08-03 14:37:25 +00:00 committed by GitHub
commit 4b0c97668c
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
13 changed files with 133 additions and 95 deletions

View file

@ -304,25 +304,4 @@ pub mod prelude {
"#]],
);
}
#[test]
fn local_variable_shadowing() {
// FIXME: this isn't actually correct, should emit `x` only once.
check(
r#"
fn main() {
let x = 92;
{
let x = 92;
x$0;
}
}
"#,
expect![[r#"
lc x i32
lc x i32
fn main() fn()
"#]],
);
}
}

View file

@ -1348,10 +1348,10 @@ fn foo() {
lc foo [type+local]
ev Foo::A() [type_could_unify]
ev Foo::B [type_could_unify]
fn foo() []
en Foo []
fn baz() []
fn bar() []
fn foo() []
"#]],
);
}

View file

@ -118,7 +118,6 @@ impl Unit {
un Union
ev TupleV() (u32)
ct CONST
ma makro!() #[macro_export] macro_rules! makro
me self.foo() fn(self)
"##]],
);
@ -155,6 +154,8 @@ impl Unit {
#[test]
fn shadowing_shows_single_completion() {
cov_mark::check!(shadowing_shows_single_completion);
check_empty(
r#"
fn foo() {
@ -165,7 +166,6 @@ fn foo() {
}
}
"#,
// FIXME: should be only one bar here
expect![[r#"
kw unsafe
kw match
@ -182,7 +182,6 @@ fn foo() {
kw super
kw crate
lc bar i32
lc bar i32
fn foo() fn()
bt u32
"#]],

View file

@ -29,7 +29,6 @@ impl Tra$0
st Unit
ma makro!() #[macro_export] macro_rules! makro
un Union
ma makro!() #[macro_export] macro_rules! makro
bt u32
"##]],
)
@ -53,7 +52,6 @@ impl Trait for Str$0
st Unit
ma makro!() #[macro_export] macro_rules! makro
un Union
ma makro!() #[macro_export] macro_rules! makro
bt u32
"##]],
)

View file

@ -67,7 +67,6 @@ fn in_source_file_item_list() {
kw crate
md module
ma makro!() #[macro_export] macro_rules! makro
ma makro!() #[macro_export] macro_rules! makro
"##]],
)
}
@ -172,7 +171,6 @@ fn in_impl_assoc_item_list() {
kw crate
md module
ma makro!() #[macro_export] macro_rules! makro
ma makro!() #[macro_export] macro_rules! makro
"##]],
)
}
@ -206,7 +204,6 @@ fn in_trait_assoc_item_list() {
kw crate
md module
ma makro!() #[macro_export] macro_rules! makro
ma makro!() #[macro_export] macro_rules! makro
"##]],
);
}
@ -243,7 +240,6 @@ impl Test for () {
kw crate
md module
ma makro!() #[macro_export] macro_rules! makro
ma makro!() #[macro_export] macro_rules! makro
"##]],
);
}

View file

@ -122,7 +122,6 @@ fn foo() {
bn TupleV TupleV($1)$0
ev TupleV
ct CONST
ma makro!() #[macro_export] macro_rules! makro
"##]],
);
}
@ -143,7 +142,6 @@ fn foo() {
st Tuple
st Unit
ma makro!() #[macro_export] macro_rules! makro
ma makro!() #[macro_export] macro_rules! makro
"##]],
);
}
@ -163,7 +161,6 @@ fn foo(a$0) {
st Tuple
st Unit
ma makro!() #[macro_export] macro_rules! makro
ma makro!() #[macro_export] macro_rules! makro
"##]],
);
}

View file

@ -28,7 +28,6 @@ struct Foo<'lt, T, const C: usize> where $0 {}
st Unit
ma makro!() #[macro_export] macro_rules! makro
un Union
ma makro!() #[macro_export] macro_rules! makro
bt u32
"##]],
);
@ -47,7 +46,6 @@ struct Foo<'lt, T, const C: usize> where T: $0 {}
tt Trait
md module
ma makro!() #[macro_export] macro_rules! makro
ma makro!() #[macro_export] macro_rules! makro
"##]],
);
}
@ -67,7 +65,6 @@ struct Foo<'lt, T, const C: usize> where 'lt: $0 {}
tt Trait
md module
ma makro!() #[macro_export] macro_rules! makro
ma makro!() #[macro_export] macro_rules! makro
"##]],
);
}
@ -85,7 +82,6 @@ struct Foo<'lt, T, const C: usize> where for<'a> T: $0 {}
tt Trait
md module
ma makro!() #[macro_export] macro_rules! makro
ma makro!() #[macro_export] macro_rules! makro
"##]],
);
}
@ -109,7 +105,6 @@ struct Foo<'lt, T, const C: usize> where for<'a> $0 {}
st Unit
ma makro!() #[macro_export] macro_rules! makro
un Union
ma makro!() #[macro_export] macro_rules! makro
bt u32
"##]],
);
@ -136,7 +131,6 @@ impl Record {
st Unit
ma makro!() #[macro_export] macro_rules! makro
un Union
ma makro!() #[macro_export] macro_rules! makro
bt u32
"##]],
);

View file

@ -31,7 +31,6 @@ struct Foo<'lt, T, const C: usize> {
st Unit
ma makro!() #[macro_export] macro_rules! makro
un Union
ma makro!() #[macro_export] macro_rules! makro
bt u32
"##]],
)
@ -60,7 +59,6 @@ struct Foo<'lt, T, const C: usize>(f$0);
st Unit
ma makro!() #[macro_export] macro_rules! makro
un Union
ma makro!() #[macro_export] macro_rules! makro
bt u32
"##]],
)
@ -85,7 +83,6 @@ fn x<'lt, T, const C: usize>() -> $0
st Unit
ma makro!() #[macro_export] macro_rules! makro
un Union
ma makro!() #[macro_export] macro_rules! makro
bt u32
"##]],
);
@ -113,7 +110,6 @@ fn foo<'lt, T, const C: usize>() {
st Unit
ma makro!() #[macro_export] macro_rules! makro
un Union
ma makro!() #[macro_export] macro_rules! makro
bt u32
"##]],
);
@ -164,7 +160,6 @@ fn foo<'lt, T: Trait2<$0>, const CONST_PARAM: usize>(_: T) {}
tt Trait2
un Union
ct CONST
ma makro!() #[macro_export] macro_rules! makro
bt u32
"##]],
);