aboutsummaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
...
| * | | | 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]>
| * | Exclude `crates/ide_db/src/helpers/generated_lints.rs` from `tidy::check_todo`Lukas Wirth2021-06-041-3/+5
| | |
| * | Replace `-` with `_` in generated lint namesLukas Wirth2021-06-043-150/+151
| | |
| * | Generate default lint groupsLukas Wirth2021-06-042-9/+53
| | |
| * | Generate default lint completionsLukas Wirth2021-06-047-777/+1130
| | |
| * | Implement hover for lintsLukas Wirth2021-06-045-2835/+3026
| | |
* | | Merge #9137bors[bot]2021-06-041-0/+1
|\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 9137: fix: fix incorrect "unresolved import" error when using derive helpers r=jonas-schievink a=jonas-schievink Fixes https://github.com/rust-analyzer/rust-analyzer/issues/9133 cursed bug bors r+ Co-authored-by: Jonas Schievink <[email protected]>
| * | | Return `ReachedFixedPoint::No` when resolving derive helperJonas Schievink2021-06-041-0/+1
| | | |
* | | | Merge #9136bors[bot]2021-06-046-1/+75
|\ \ \ \ | |_|/ / |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 9136: feat: Add function references hover action r=Veykril a=Veykril ![image](https://user-images.githubusercontent.com/3757771/120811670-8422ed80-c54c-11eb-87f5-dd65c1f8ef7d.png) This is off by default as this can slow down hover messages significantly for very big projects I believe. Fixes #6590 bors r+ Co-authored-by: Lukas Wirth <[email protected]>
| * | | Add function references hover actionLukas Wirth2021-06-046-1/+75
|/ / /
* | | Merge #9135bors[bot]2021-06-041-540/+492
|\ \ \ | |/ / |/| | | | | | | | | | | | | | | | | 9135: Reorganize inlay_hints tests r=Veykril a=Veykril bors r+ Co-authored-by: Lukas Wirth <[email protected]>
| * | Cleanup parameter_hint_heuristics inlay hints testLukas Wirth2021-06-041-87/+68
| | |
| * | Reorganize inlay_hints testsLukas Wirth2021-06-041-522/+493
|/ /
* | Merge #9128bors[bot]2021-06-0317-35/+234
|\ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 9128: feat: expand procedural attribute macros r=jonas-schievink a=jonas-schievink This adds experimental support for attribute macros. They can be enabled by setting `rust-analyzer.experimental.procAttrMacros` to `true`. Known issues: * Tokens aren't remapped, presumably because we edit the input syntax tree (this causes IDE features to not work inside items with attribute macros on them) * Macro errors aren't reported correctly Closes https://github.com/rust-analyzer/rust-analyzer/issues/8971 Fixes https://github.com/rust-analyzer/rust-analyzer/issues/8964 / https://github.com/la10736/rstest/issues/120 Fixes https://github.com/rust-analyzer/rust-analyzer/issues/2984 Fixes https://github.com/rust-analyzer/rust-analyzer/issues/5412 Fixes https://github.com/rust-analyzer/rust-analyzer/issues/6029 Fixes https://github.com/rust-analyzer/rust-analyzer/issues/6687 https://github.com/rust-analyzer/rust-analyzer/issues/6740 is still not fixed – we now expand `#[proc_macro_hack]`, but fail to expand the resulting `proc_macro_call!()` macro. Co-authored-by: Jonas Schievink <[email protected]>
| * | Set enable_proc_attr_macros in hir_ty TestDBJonas Schievink2021-06-031-1/+9
| | |
| * | Update list of built-in attributesJonas Schievink2021-06-031-16/+22
| | |
| * | Make it opt-inJonas Schievink2021-06-039-4/+44
| | |
| * | Expand procedural attribute macrosJonas Schievink2021-06-037-14/+159
|/ /
* | Merge #9130bors[bot]2021-06-031-70/+57
|\ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 9130: Prefix/suffix parameter inlay hint hiding heuristic is more strict r=Veykril a=Veykril Instead of just plainly checking prefix/suffix of the argument string to the parameter name we only check for prefixes and suffixes if they are split apart via an underscore meaning, with the argument `foo`, it will be hidden for the parameter name `foo_bar` but not for `foobar`. bors r+ Closes https://github.com/rust-analyzer/rust-analyzer/issues/8878 Co-authored-by: Lukas Wirth <[email protected]>
| * | Prefix/suffix parameter inlay hint hiding heuristic is more strictLukas Wirth2021-06-031-70/+57
| | |
* | | Merge #9129bors[bot]2021-06-035-5/+5
|\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | 9129: NFC: remove redundant clones (clippy::perf) r=Veykril a=matthiaskrgr Co-authored-by: Matthias Krüger <[email protected]>
| * | | NFC: remove redundant clones (clippy::perf)Matthias Krüger2021-06-035-5/+5
|/ / /
* | | Merge #9127bors[bot]2021-06-032-4/+43
|\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 9127: internal: make variant fields inherit the enum's visibility in the ItemTree r=jonas-schievink a=jonas-schievink No observable changes from what I can tell, but this is "more correct". bors r+ Co-authored-by: Jonas Schievink <[email protected]>
| * | | ItemTree: make variant fields inherit the enum's visibilityJonas Schievink2021-06-032-4/+43
| | | |
* | | | Merge #9124bors[bot]2021-06-0313-60/+43
|\ \ \ \ | |/ / / |/| | | | | | | | | | | | | | | | | | | | | | | 9124: Apply a few clippy suggestions r=lnicola a=clemenswasser Co-authored-by: Clemens Wasser <[email protected]>
| * | | Use push_strClemens Wasser2021-06-031-2/+2
| | | |
| * | | Apply more clippy suggestions and update generatedClemens Wasser2021-06-0311-142/+51
| | | |
| * | | Apply a few clippy suggestionsClemens Wasser2021-06-034-47/+121
| | | |
* | | | Merge #9104bors[bot]2021-06-033-2/+80
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 9104: Implement `#[rustc_skip_array_during_method_dispatch]` r=flodiebold a=jonas-schievink haxx run the world Closes https://github.com/rust-analyzer/rust-analyzer/issues/8552 Part of https://github.com/rust-analyzer/rust-analyzer/issues/9056 Co-authored-by: Jonas Schievink <[email protected]>
| * | | | Add commentJonas Schievink2021-06-031-0/+3
| | | | |
| * | | | Implement `#[rustc_skip_array_during_method_dispatch]`Jonas Schievink2021-06-013-2/+77
| | | | |
* | | | | Merge #9105bors[bot]2021-06-035-15/+50
|\ \ \ \ \ | |_|/ / / |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 9105: internal: calculate pattern adjustments r=flodiebold a=iDawer This extends `InferenceResult` with `pub pat_adjustments: FxHashMap<PatId, Vec<Ty>>`. Fixes #9095 Co-authored-by: Dawer <[email protected]>