21913d0fdb
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> |
||
---|---|---|
.. | ||
add_explicit_type.rs | ||
add_lifetime_to_type.rs | ||
add_missing_impl_members.rs | ||
add_turbo_fish.rs | ||
apply_demorgan.rs | ||
auto_import.rs | ||
change_visibility.rs | ||
convert_comment_block.rs | ||
convert_integer_literal.rs | ||
early_return.rs | ||
expand_glob_import.rs | ||
extract_function.rs | ||
extract_struct_from_enum_variant.rs | ||
extract_variable.rs | ||
fill_match_arms.rs | ||
fix_visibility.rs | ||
flip_binexpr.rs | ||
flip_comma.rs | ||
flip_trait_bound.rs | ||
generate_default_from_enum_variant.rs | ||
generate_default_from_new.rs | ||
generate_derive.rs | ||
generate_enum_is_method.rs | ||
generate_enum_projection_method.rs | ||
generate_from_impl_for_enum.rs | ||
generate_function.rs | ||
generate_getter_mut.rs | ||
generate_getter.rs | ||
generate_impl.rs | ||
generate_new.rs | ||
generate_setter.rs | ||
infer_function_return_type.rs | ||
inline_function.rs | ||
inline_local_variable.rs | ||
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 | ||
pull_assignment_up.rs | ||
qualify_path.rs | ||
raw_string.rs | ||
remove_dbg.rs | ||
remove_mut.rs | ||
remove_unused_param.rs | ||
reorder_fields.rs | ||
reorder_impl.rs | ||
replace_derive_with_manual_impl.rs | ||
replace_for_loop_with_for_each.rs | ||
replace_if_let_with_match.rs | ||
replace_impl_trait_with_generic.rs | ||
replace_let_with_if_let.rs | ||
replace_qualified_name_with_use.rs | ||
replace_string_with_char.rs | ||
replace_unwrap_with_match.rs | ||
split_import.rs | ||
toggle_ignore.rs | ||
unmerge_use.rs | ||
unwrap_block.rs | ||
wrap_return_type_in_result.rs |