rust/crates/ide_assists/src/handlers
bors[bot] 21913d0fdb
Merge #7873 #7933
7873: Consider unresolved qualifiers during flyimport r=matklad a=SomeoneToIgnore

Closes https://github.com/rust-analyzer/rust-analyzer/issues/7679

Takes unresolved qualifiers into account, providing better completions (or none, if the path is resolved or do not match).

Does not handle cases when both path qualifier and some trait has to be imported: there are many extra issues with those (such as overlapping imports, for instance) that will require large diffs to address.

Also does not do a fuzzy search on qualifier, that requires some adjustments in `import_map` for better queries and changes to the default replace range which also seems relatively big to include here.

![qualifier_completion](https://user-images.githubusercontent.com/2690773/110040808-0af8dc00-7d4c-11eb-83db-65af94e843bb.gif)


7933: Improve compilation speed r=matklad a=matklad

bors r+
🤖

Co-authored-by: Kirill Bulatov <mail4score@gmail.com>
Co-authored-by: Aleksey Kladov <aleksey.kladov@gmail.com>
2021-03-09 11:58:48 +00:00
..
add_explicit_type.rs
add_lifetime_to_type.rs
add_missing_impl_members.rs
add_turbo_fish.rs Use upstream cov-mark 2021-03-08 22:19:44 +02:00
apply_demorgan.rs Use upstream cov-mark 2021-03-08 22:19:44 +02:00
auto_import.rs Add rustdocs and use better names 2021-03-08 23:59:37 +02:00
change_visibility.rs Use upstream cov-mark 2021-03-08 22:19:44 +02:00
convert_comment_block.rs
convert_integer_literal.rs
early_return.rs
expand_glob_import.rs
extract_function.rs Use upstream cov-mark 2021-03-08 22:19:44 +02:00
extract_struct_from_enum_variant.rs Hygiene is an internal implementation detail of the compiler 2021-03-08 22:14:52 +03:00
extract_variable.rs Use upstream cov-mark 2021-03-08 22:19:44 +02:00
fill_match_arms.rs Use upstream cov-mark 2021-03-08 22:19:44 +02:00
fix_visibility.rs
flip_binexpr.rs
flip_comma.rs
flip_trait_bound.rs
generate_default_from_enum_variant.rs Use upstream cov-mark 2021-03-08 22:19:44 +02:00
generate_default_from_new.rs Use upstream cov-mark 2021-03-08 22:19:44 +02:00
generate_derive.rs
generate_enum_is_method.rs
generate_enum_projection_method.rs
generate_from_impl_for_enum.rs Use upstream cov-mark 2021-03-08 22:19:44 +02:00
generate_function.rs generate_function assist don't render snippet if ret type inferred 2021-03-08 14:38:36 -08:00
generate_getter_mut.rs
generate_getter.rs
generate_impl.rs
generate_new.rs
generate_setter.rs
infer_function_return_type.rs Use upstream cov-mark 2021-03-08 22:19:44 +02:00
inline_function.rs Use upstream cov-mark 2021-03-08 22:19:44 +02:00
inline_local_variable.rs Use upstream cov-mark 2021-03-08 22:19:44 +02:00
introduce_named_lifetime.rs
invert_if.rs
merge_imports.rs
merge_match_arms.rs
move_bounds.rs
move_guard.rs
move_module_to_file.rs Use upstream cov-mark 2021-03-08 22:19:44 +02:00
pull_assignment_up.rs Use upstream cov-mark 2021-03-08 22:19:44 +02:00
qualify_path.rs Add rustdocs and use better names 2021-03-08 23:59:37 +02:00
raw_string.rs Use upstream cov-mark 2021-03-08 22:19:44 +02:00
remove_dbg.rs
remove_mut.rs
remove_unused_param.rs Use upstream cov-mark 2021-03-08 22:19:44 +02:00
reorder_fields.rs Use upstream cov-mark 2021-03-08 22:19:44 +02:00
reorder_impl.rs Use upstream cov-mark 2021-03-08 22:19:44 +02:00
replace_derive_with_manual_impl.rs Less lifetines: derive SemanticsScope in place 2021-03-08 23:59:20 +02:00
replace_for_loop_with_for_each.rs Use upstream cov-mark 2021-03-08 22:19:44 +02:00
replace_if_let_with_match.rs
replace_impl_trait_with_generic.rs
replace_let_with_if_let.rs
replace_qualified_name_with_use.rs Use upstream cov-mark 2021-03-08 22:19:44 +02:00
replace_string_with_char.rs Only replace quotes in replace_string_with_char assist 2021-03-06 21:21:18 +01:00
replace_unwrap_with_match.rs
split_import.rs
toggle_ignore.rs
unmerge_use.rs Use upstream cov-mark 2021-03-08 22:19:44 +02:00
unwrap_block.rs
wrap_return_type_in_result.rs Use upstream cov-mark 2021-03-08 22:19:44 +02:00