aboutsummaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
* Fix edge case for ImportGranularity guessingLukas Wirth2021-06-083-8/+30
|
* Merge #9171bors[bot]2021-06-075-36/+33
|\ | | | | | | | | | | | | | | 9171: internal: simplify r=Veykril a=Veykril bors r+ Co-authored-by: Lukas Wirth <[email protected]>
| * simplifyLukas Wirth2021-06-075-36/+33
| |
* | Merge #9170bors[bot]2021-06-077-90/+32
|\| | | | | | | | | | | | | | | 9170: internal: Remove unnecessary `completion::macro_in_item_position` module r=Veykril a=Veykril bors r+ Co-authored-by: Lukas Wirth <[email protected]>
| * Remove unnecessary completion::macro_in_item_positionLukas Wirth2021-06-076-72/+17
| |
| * Reorder CompletionContext fieldsLukas Wirth2021-06-072-18/+15
| |
* | Merge #9169bors[bot]2021-06-078-30/+170
|\ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | 9169: internal: steps towards attribute macro token mapping r=jonas-schievink a=jonas-schievink This doesn't work yet, but we seem to be getting a bit further along (for example, we now stop highlighting `use` items inside item with attribute macros as if they were written verbatim). bors r+ Co-authored-by: Jonas Schievink <[email protected]>
| * | Attempt to track attr macros during highlightingJonas Schievink2021-06-072-0/+40
| | |
| * | Make "expand macro" command work with attribute macrosJonas Schievink2021-06-072-7/+43
| | |
| * | Handle attribute macros in `descend_into_macros`Jonas Schievink2021-06-066-23/+87
| | |
* | | Merge #9144bors[bot]2021-06-071-15/+337
|\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 9144: Extend convert_tuple_struct_to_named_struct to also apply to enum tuple variants r=matklad a=joshuawarner32 This is largely copied and adapted from the existing `convert_tuple_struct_to_named_struct` code. Not sure if maybe some of this code can/should be shared between those two assists - but the differences are significant enough to make it at least seem like a non-trivial refactor. Co-authored-by: Joshua Warner <[email protected]>
| * | | fmtJoshua Warner2021-06-061-3/+12
| | | |
| * | | Refactor to be just one assistJoshua Warner2021-06-053-532/+328
| | | |
| * | | Add assist for converting a tuple enum variant to a named variantJoshua Warner2021-06-052-0/+517
| | | |
* | | | Merge #9166bors[bot]2021-06-071-7/+9
|\ \ \ \ | |_|_|/ |/| | | | | | | | | | | | | | | | | | | | | | | 9166: Clarify label documentation r=matklad a=flodiebold Also some other cleanups while I'm there. Co-authored-by: Florian Diebold <[email protected]>
| * | | Further clarificationFlorian Diebold2021-06-071-1/+2
| | | |
| * | | One additional grammar fixFlorian Diebold2021-06-071-1/+1
| | | |
| * | | Clarify label documentationFlorian Diebold2021-06-071-7/+8
| | | | | | | | | | | | Also some other cleanups while I'm there.
* | | | Merge #9164bors[bot]2021-06-0712-75/+108
|\ \ \ \ | |/ / / |/| | | | | | | | | | | | | | | | | | | | | | | | | | | 9164: internal: Reduce the number of direct fields in `CompletionContext` some more r=Veykril a=Veykril Doesn't make the code much simpler yet. bors r+ Co-authored-by: Lukas Wirth <[email protected]>
| * | | Move more things into PathCompletionContextLukas Wirth2021-06-078-46/+62
| | | |
| * | | Simplify CompletionContext by introducing a path CallKind enumLukas Wirth2021-06-066-32/+49
| | | |
* | | | Merge #9161bors[bot]2021-06-071-1/+1
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 9161: Fix incorrect config usage in hover references r=Veykril a=Veykril bors r+ Co-authored-by: Lukas Wirth <[email protected]>
| * | | | Fix incorrect config usage in hover referencesLukas Wirth2021-06-071-1/+1
| |/ / /
* | | | Merge #9160bors[bot]2021-06-071-2/+2
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 9160: internal: make `Documentation::new` non-generic r=lnicola a=lnicola Co-authored-by: Laurențiu Nicola <[email protected]>
| * | | | Make Documentation::new non-genericLaurențiu Nicola2021-06-071-2/+2
|/ / / /
* | | | Merge #9157bors[bot]2021-06-071-1/+1
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 9157: minor: Use HTTPS for clippy lint JSON r=lnicola a=lnicola Co-authored-by: Laurențiu Nicola <[email protected]>
| * | | | Use HTTPS for clippy lint JSONLaurențiu Nicola2021-06-071-1/+1
|/ / / /
* | | | Merge #9106bors[bot]2021-06-072-7/+91
|\ \ \ \ | |_|_|/ |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 9106: feat: goto definition on an impl fn goes to that fn in the trait r=lf- a=lf- e.g. if you have a trait T and `impl T for S` for some struct, if you goto definition on some function name inside the impl, it will go to the definition of that function inside the `trait T` block, rather than the current behaviour of not going anywhere at all. ![ra goto def trait the other way](https://user-images.githubusercontent.com/6652840/120403989-39aa3280-c2fa-11eb-9359-639346878acd.gif) Co-authored-by: Jade <[email protected]>
| * | | feat: goto def on impl items also goes to the defn in the traitJade2021-06-071-18/+56
| | | | | | | | | | | | | | | | | | | | It was trivial to extend this to associated consts/associated types and I just didn't think of it.
| * | | feat: goto definition on an impl fn goes to that fn in the traitJade2021-06-072-7/+53
|/ / / | | | | | | | | | | | | | | | | | | e.g. if you have a trait T and `impl T for S` for some struct, if you goto definition on some function name inside the impl, it will go to the definition of that function inside the `trait T` block, rather than the current behaviour of not going anywhere at all.
* | | Merge #9155bors[bot]2021-06-061-2/+4
|\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 9155: internal: replace attribute with equivalent whitespace r=jonas-schievink a=jonas-schievink This is needed to that the `TokenMap` we create contains offsets that match the source. Currently the offsets don't match because the attribute is removed, shifting all subsequent token offsets by the attribute's text length. Currently this fix has no visible effect because we don't remap tokens in attribute macros. bors r+ Co-authored-by: Jonas Schievink <[email protected]>
| * | | Replace attribute with equivalent whitespaceJonas Schievink2021-06-061-2/+4
|/ / / | | | | | | | | | | | | This is needed to that the `TokenMap` we create contains offsets that match the source.
* | | Merge #9149bors[bot]2021-06-051-3/+49
|\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 9149: feat: Support goto-definition for include macros input path r=Veykril a=Veykril ![0l6l9iWPNE](https://user-images.githubusercontent.com/3757771/120891155-3fa85800-c607-11eb-9b20-7ac330dceb4b.gif) Fixes #5871 Co-authored-by: Lukas Wirth <[email protected]>
| * | | Support goto-definition for include macro pathsLukas Wirth2021-06-051-3/+49
| | | |
* | | | Merge #9150bors[bot]2021-06-052-314/+731
|\ \ \ \ | |_|/ / |/| | | | | | | | | | | | | | | | | | | | | | | 9150: Unescape generated clippy lints r=lnicola a=Veykril Co-authored-by: Lukas Wirth <[email protected]>
| * | | Unescape generated clippy lintsLukas Wirth2021-06-052-314/+731
| | | |
* | | | Merge #9140bors[bot]2021-06-054-40/+75
|\ \ \ \ | |/ / / |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 9140: feat: Render documentation for derive completion r=Veykril a=Veykril ![eEzGiq2wNa](https://user-images.githubusercontent.com/3757771/120847308-9c5a3300-c573-11eb-958d-e0f22f4757ed.gif) Nothing fancy as all the std derives aren't really documented though maybe some 3rd party crates document them equally to their trait counterparts. Co-authored-by: Lukas Wirth <[email protected]>
| * | | Complete third-party attributesLukas Wirth2021-06-041-0/+19
| | | |
| * | | Render documentation for derive completionLukas Wirth2021-06-043-40/+56
| |/ /
* | | Merge #9147bors[bot]2021-06-054-22/+21
|\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | 9147: internal: enable proc macros and build scripts in cli r=flodiebold a=lnicola Co-authored-by: Laurențiu Nicola <[email protected]>
| * | | Enable proc macros and build scripts by default in CLILaurențiu Nicola2021-06-054-22/+21
| | | |
* | | | Merge #9148bors[bot]2021-06-051-1/+32
|\ \ \ \ | |/ / / |/| | | | | | | | | | | | | | | | | | | | | | | | | | | 9148: minor: Prevent renaming of aliases on usages r=Veykril a=Veykril Otherwise trying to rename a usage that goes through an alias will still rename the aliased item instead, cc https://github.com/rust-analyzer/rust-analyzer/issues/5671 bors r+ Co-authored-by: Lukas Wirth <[email protected]>
| * | | Prevent renaming of aliases on usagesLukas Wirth2021-06-051-1/+32
| |/ /
* | | Merge #9146bors[bot]2021-06-051-9/+9
|\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 9146: minor: Fix incorrect list nesting in format_like feature description r=Veykril a=Veykril bors r+ Closes #6261 Co-authored-by: Lukas Wirth <[email protected]>
| * | | Fix incorrect list nesting in format_like feature descriptionLukas Wirth2021-06-051-9/+9
| |/ /
* | | Merge #9145bors[bot]2021-06-051-0/+3
|\ \ \ | |_|/ |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 9145: internal: Enable attribute macro expansion in `analysis-stats` r=flodiebold a=flodiebold Before: ``` > $ rust-analyzer -q analysis-stats --with-proc-macro --load-output-dirs . Database loaded: 19.08s, 277minstr crates: 34, mods: 688, decls: 13202, fns: 10412 Item Collection: 16.21s, 76ginstr exprs: 290580, ??ty: 2508 (0%), ?ty: 1814 (0%), !ty: 947 Inference: 27.46s, 108ginstr Total: 43.67s, 184ginstr ``` After: ``` > $ ./target/release/rust-analyzer -q analysis-stats --with-proc-macro --load-output-dirs . Database loaded: 1.09s, 277minstr crates: 34, mods: 688, decls: 14790, fns: 11006 Item Collection: 18.20s, 78ginstr exprs: 297826, ??ty: 493 (0%), ?ty: 558 (0%), !ty: 342 Inference: 28.34s, 111ginstr Total: 46.54s, 190ginstr ``` Co-authored-by: Florian Diebold <[email protected]>
| * | Enable attribute macro expansion in `analysis-stats`Florian Diebold2021-06-051-0/+3
|/ / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Before: ``` > $ rust-analyzer -q analysis-stats --with-proc-macro --load-output-dirs . Database loaded: 19.08s, 277minstr crates: 34, mods: 688, decls: 13202, fns: 10412 Item Collection: 16.21s, 76ginstr exprs: 290580, ??ty: 2508 (0%), ?ty: 1814 (0%), !ty: 947 Inference: 27.46s, 108ginstr Total: 43.67s, 184ginstr ``` After: ``` > $ ./target/release/rust-analyzer -q analysis-stats --with-proc-macro --load-output-dirs . Database loaded: 1.09s, 277minstr crates: 34, mods: 688, decls: 14790, fns: 11006 Item Collection: 18.20s, 78ginstr exprs: 297826, ??ty: 493 (0%), ?ty: 558 (0%), !ty: 342 Inference: 28.34s, 111ginstr Total: 46.54s, 190ginstr ```
* | Merge #9141bors[bot]2021-06-041-0/+17
|\ \ | |/ |/| | | | | | | | | | | 9141: fix: Don't inline mutable locals in 'inline_local_variable' r=Veykril a=Veykril Fixes #9139 Co-authored-by: Lukas Wirth <[email protected]>
| * Don't inline mutable locals in 'inline_local_variable'Lukas Wirth2021-06-041-0/+17
|/
* Merge #9138bors[bot]2021-06-048-3473/+4064
|\ | | | | | | | | | | | | | | | | | | | | | | | | 9138: feat: Implement hover for lints r=Veykril a=Veykril fixes https://github.com/rust-analyzer/rust-analyzer/issues/8857, fixes https://github.com/rust-analyzer/rust-analyzer/issues/3941 ![URXBanNxYe](https://user-images.githubusercontent.com/3757771/120830905-4bd8da80-c55f-11eb-9f55-ff5a321726fa.gif) We also generate the default lints(and lint groups 🎉) instead now by invoking `rustc -W help` and parsing the output from that. Co-authored-by: Lukas Wirth <[email protected]>