Commit message (Collapse) | Author | Age | Files | Lines | |
---|---|---|---|---|---|
* | Reimplement import merging by making it recursive properly nesting all levels | Lukas Wirth | 2020-09-12 | 2 | -19/+15 |
| | |||||
* | Properly preserve macro braces | Kirill Bulatov | 2020-09-11 | 1 | -25/+16 |
| | |||||
* | Merge #5955 | bors[bot] | 2020-09-11 | 1 | -75/+86 |
|\ | | | | | | | | | | | | | | | | | | | 5955: Remove merge import code duplication r=jonas-schievink a=Veykril This removes the code duplication caused by #5935, this also allows the assist to merge imports that have equal visibility and prevents merges of unequal visibility. This PR also fixes an iteration mistake in the mentioned PR: Turns out I made a mistake when writing the `segment_iter` function, I was assuming that the `children` of a path will just be the segments, which is obviously not the case. This also brings insertion order of shorter paths in line with how `rustfmt` orders them. Co-authored-by: Lukas Wirth <[email protected]> | ||||
| * | Allow merge_imports assists to merge imports of equal visibility | Lukas Wirth | 2020-09-05 | 1 | -0/+50 |
| | | |||||
| * | Remove duplicated import merge logic | Lukas Wirth | 2020-09-05 | 1 | -75/+36 |
| | | |||||
* | | One more test | Kirill Bulatov | 2020-09-10 | 1 | -0/+2 |
| | | |||||
* | | Use better heuristics for replacement text when removing dbg! | Kirill Bulatov | 2020-09-10 | 1 | -37/+116 |
|/ | |||||
* | Merge #5940 | bors[bot] | 2020-09-04 | 1 | -0/+168 |
|\ | | | | | | | | | | | | | | | 5940: Implement "Replace `impl Trait` function argument with the named generic" assist. r=matklad a=alekseysidorov Fixes #5085 Co-authored-by: Aleksei Sidorov <[email protected]> | ||||
| * | Remove unnecessary comma | Aleksei Sidorov | 2020-09-04 | 1 | -9/+9 |
| | | |||||
| * | Fix tests | Aleksei Sidorov | 2020-09-04 | 1 | -15/+22 |
| | | |||||
| * | Fix nitpicks | Aleksei Sidorov | 2020-09-04 | 1 | -7/+12 |
| | | |||||
| * | Resolve most of corner cases | Aleksei Sidorov | 2020-09-03 | 1 | -8/+102 |
| | | |||||
| * | Initial implementation of the #5085 issue | Aleksei Sidorov | 2020-09-03 | 1 | -0/+62 |
| | | |||||
* | | Add extra insert_use test for pub(crate) re-export handling | Lukas Wirth | 2020-09-03 | 1 | -4/+5 |
| | | |||||
* | | Disable insert_import in extract_struct_from_enum_variant until its fixed | Lukas Wirth | 2020-09-03 | 1 | -0/+4 |
| | | |||||
* | | Fix import insertion breaking nested modules | Lukas Wirth | 2020-09-03 | 3 | -18/+21 |
| | | |||||
* | | Fix inserting imports in front of inner attributes | Lukas Wirth | 2020-09-03 | 1 | -2/+3 |
| | | |||||
* | | Replace insert_use_statement with the new insert_use | Lukas Wirth | 2020-09-03 | 3 | -46/+58 |
|/ | |||||
* | Reduce path_from_text usage | Aleksey Kladov | 2020-08-31 | 1 | -13/+17 |
| | |||||
* | **Inline Variable** works with field shorthand | Aleksey Kladov | 2020-08-26 | 1 | -2/+29 |
| | |||||
* | Minor | Aleksey Kladov | 2020-08-25 | 1 | -2/+1 |
| | |||||
* | Merge #5733 | bors[bot] | 2020-08-24 | 1 | -115/+617 |
|\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 5733: Fix expand glob import bugs r=matklad a=unexge fixes https://github.com/rust-analyzer/rust-analyzer/issues/5709 TODOs: - [x] Incorrect node replacing <details> <summary>Details</summary> ```rust use crate::{ body::scope::{ExprScopes, ScopeId}, body::Body, builtin_type::BuiltinType, db::DefDatabase, expr::{ExprId, PatId}, generics::GenericParams, item_scope::{BuiltinShadowMode, BUILTIN_SCOPE}, nameres::CrateDefMap, path::*<|>, per_ns::PerNs, visibility::{RawVisibility, Visibility}, AdtId, AssocContainerId, ConstId, ContainerId, DefWithBodyId, EnumId, EnumVariantId, FunctionId, GenericDefId, HasModule, ImplId, LocalModuleId, Lookup, ModuleDefId, ModuleId, StaticId, StructId, TraitId, TypeAliasId, TypeParamId, VariantId, }; ``` becames ```rust use crate::{PathKind, name, name, ModPath}; ``` </details> - [x] Ignoring visibility <details> <summary>Details</summary> ```rust mod foo { mod bar { pub struct Bar; } } use foo::bar::*; fn baz(bar: Bar) {} ``` becames ```rust mod foo { mod bar { pub struct Bar; } } use foo::bar::Bar; fn baz(bar: Bar) {} ``` although mod `bar` is private </details> - [x] Eating attributes Co-authored-by: unexge <[email protected]> | ||||
| * | Use new `Definition::usages` API in expand glob import | unexge | 2020-08-20 | 1 | -1/+1 |
| | | |||||
| * | Fix importing private modules in expand glob import | unexge | 2020-08-20 | 1 | -0/+52 |
| | | |||||
| * | Fix importing unused traits in expand glob import | unexge | 2020-08-20 | 1 | -28/+73 |
| | | |||||
| * | Use fixme instead of todo | unexge | 2020-08-20 | 1 | -1/+1 |
| | | |||||
| * | Use `Definition::find_usages` for finding used items in expand glob import | unexge | 2020-08-20 | 1 | -110/+137 |
| | | |||||
| * | Run rustfmt | unexge | 2020-08-20 | 1 | -3/+5 |
| | | |||||
| * | Handle more cases in AST replacing in expand glob import | unexge | 2020-08-20 | 1 | -34/+219 |
| | | |||||
| * | Improve AST replacing in expand glob import | unexge | 2020-08-20 | 1 | -38/+229 |
| | | |||||
* | | Invert if should be smart about is_some, is_none, is_ok, is_err | dragfire | 2020-08-24 | 1 | -0/+18 |
| | | |||||
* | | :arrow_up: ungrammar | Aleksey Kladov | 2020-08-21 | 2 | -2/+2 |
|/ | |||||
* | **Remove Unused Parameter** refactoring | Aleksey Kladov | 2020-08-19 | 3 | -5/+134 |
| | |||||
* | Future proof find-usages API | Aleksey Kladov | 2020-08-19 | 2 | -2/+2 |
| | | | | | | We might want to provide more efficient impls for check if usages exist, limiting the search, filtering and cancellation, so let's violate YAGNI a bit here. | ||||
* | Merge #5776 #5780 | bors[bot] | 2020-08-17 | 1 | -4/+59 |
|\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 5776: Fix eslint errors on .eslintrc.js and rollup.config.js r=matklad a=fuafa Eslint complains if these two files does not include in the `tsconfig.json`. ``` Parsing error: "parserOptions.project" has been set for @typescript-eslint/parser. The file does not match your project config: .eslintrc.js. The file must be included in at least one of the projects provided.eslint ``` ![image](https://user-images.githubusercontent.com/20750310/90338269-176d4f80-e01b-11ea-8710-3ea817b235d2.png) 5780: Fixup whitespace when adding missing impl items r=matklad a=jDomantas Generate properly formatted whitespace when adding impl items - with an empty line between items and removing extra whitespace that often appears at the end. This is my first time working on rust analyzer so I'm not very familiar with its internal APIs. If there's a better way to do such syntax tree editing I'd be glad to hear it. Co-authored-by: xiaofa <[email protected]> Co-authored-by: jDomantas <[email protected]> | ||||
| * | fixup whitespace when adding missing impl items | jDomantas | 2020-08-14 | 1 | -4/+59 |
| | | |||||
* | | Don't expose hir::Path out of hir | Aleksey Kladov | 2020-08-15 | 4 | -44/+35 |
|/ | | | | | | | | | | | | | | Conjecture: it's impossible to use hir::Path *correctly* from an IDE. I am not entirely sure about this, and we might need to add it back at some point, but I have to arguments that convince me that we probably won't: * `hir::Path` has to know about hygiene, which an IDE can't set up properly. * `hir::Path` lacks identity, but you actually have to know identity to resolve it correctly | ||||
* | Rename ra_assists -> assists | Aleksey Kladov | 2020-08-13 | 39 | -0/+14036 |