aboutsummaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
* Merge #8993bors[bot]2021-05-252-11/+5
|\ | | | | | | | | | | | | | | | | 8993: fix: don't show pd/ppd completions where it shouldn't be r=flodiebold a=eduardocanellas Closes #8992 Co-authored-by: Eduardo Canellas <[email protected]>
| * fix: don't show pd/ppd completions where it shouldn't beEduardo Canellas2021-05-252-11/+5
| |
* | Merge #8994bors[bot]2021-05-251-1/+5
|\ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 8994: Check for subdirs in vfs loader exclusions. r=matklad a=ammkrn The current logic used to transfer global_excludes into vfs exclusions only transfers global_excludes that are the parent of an item in dirs.include. This commit additionally adds an item from global_exclude to the vfs exclusions if the global_exclude is a child of an included item. Co-authored-by: ammkrn <[email protected]>
| * | Check for subdirs in vfs loader exclusions.ammkrn2021-05-251-1/+5
| |/ | | | | | | | | | | | | | | The current logic used to transfer global_excludes into vfs exclusions only transfers global_excludes that are the parent of an item in dirs.include. This commit additionally adds an item from global_exclude to the vfs exclusions if the global_exclude is a child of an included item.
* | Merge #8991bors[bot]2021-05-253-13/+57
|\ \ | |/ |/| | | | | | | | | | | | | 8991: Consider trait to be in scope for trait-impls r=Veykril a=Veykril Fixes #8912 bors r+ Co-authored-by: Lukas Wirth <[email protected]>
| * Consider trait to be in scope for trait-implLukas Wirth2021-05-253-13/+57
|/
* Merge #8990bors[bot]2021-05-251-2/+26
|\ | | | | | | | | | | | | | | | | | | | | | | 8990: feat: Also do goto implementation on assoc consts r=lnicola a=lf- I forgot to put this into #8988, sorry. Goto implementation on a const on the trait will go to the implementations with their respective definitions of the const, if present. Co-authored-by: Jade <[email protected]>
| * Also do goto implementation on assoc constsJade2021-05-251-2/+26
| | | | | | | | | | | | | | | | I forgot to put this into #8988, sorry. Goto implementation on a const on the trait will go to the implementations with their respective definitions of the const, if present.
* | Merge #8987bors[bot]2021-05-253-16/+43
|\ \ | |/ |/| | | | | | | | | | | 8987: Fix lowering of FnOnce() without return type r=flodiebold a=flodiebold This should result in an implicit `-> ()`, not leaving out the binding. Co-authored-by: Florian Diebold <[email protected]>
| * Hide `-> ()` in Fn traitsFlorian Diebold2021-05-252-5/+7
| |
| * Fix lowering of FnOnce() without return typeFlorian Diebold2021-05-252-17/+42
| | | | | | | | This should result in an implicit `-> ()`, not leaving out the binding.
* | Merge #8988bors[bot]2021-05-251-1/+45
|\ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 8988: feat: go to implementation on trait functions r=matklad a=lf- Fix #8537. GIF: ![output](https://user-images.githubusercontent.com/6652840/119501981-45a45c00-bd1e-11eb-8336-9145f2888643.gif) Co-authored-by: Jade <[email protected]>
| * | feat: go to implementation on trait functionsJade2021-05-251-1/+45
| | | | | | | | | | | | | | | | | | | | | Fix #8537. GIF: https://user-images.githubusercontent.com/6652840/119501981-45a45c00-bd1e-11eb-8336-9145f2888643.gif
* | | Merge #8989bors[bot]2021-05-252-1/+41
|\ \ \ | |_|/ |/| | | | | | | | | | | | | | | | | | | | 8989: fix: Fix type inference not working for new Try trait r=Veykril a=Veykril Fixes https://github.com/rust-analyzer/rust-analyzer/issues/8907 bors r+ Co-authored-by: Lukas Wirth <[email protected]>
| * | Fix type inference not working for new Try traitLukas Wirth2021-05-252-1/+41
|/ /
* | Merge #8767bors[bot]2021-05-256-102/+167
|\ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 8767: implement range formatting r=matklad a=euclio Fixes #7580. This PR implements the `textDocument/rangeFormatting` request using `rustfmt`'s `--file-lines` option. Still needs some tests. What I want to know is how I should handle the instability of the `--file-lines` option. It's still unstable in rustfmt, so it's only available on nightly, and needs a special flag to enable. Is there a way for `rust-analyzer` to detect if it's using nightly rustfmt, or for users to opt-in? Co-authored-by: Andy Russell <[email protected]>
| * | implement range formattingAndy Russell2021-05-236-102/+167
| | |
* | | Merge #8986bors[bot]2021-05-251-0/+32
|\ \ \ | | |/ | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 8986: Add go to type definition for struct fields within struct r=matklad a=lf- Example: ```rust struct A; struct B { a/*<- cursor*/: A, } ``` Go to type definition used to not work on this position. It now goes to `A` as expected. Co-authored-by: Jade <[email protected]>
| * | Add go to type definition for struct fields within structJade2021-05-251-0/+32
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Example: ```rust struct A; struct B { a/*<- cursor*/: A, } ``` Go to type definition used to not work on this position. It now goes to `A` as expected.
* | | Merge #8985bors[bot]2021-05-251-15/+62
|\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | 8985: minor: Minor test fixes / new tests r=flodiebold a=flodiebold Co-authored-by: Florian Diebold <[email protected]>
| * | | Minor test fixes / new testsFlorian Diebold2021-05-251-15/+62
|/ / /
* | | Merge #8983bors[bot]2021-05-252-1/+45
|\ \ \ | |/ / |/| | | | | | | | | | | | | | | | | | | | | | | 8983: Fix type mismatch caused by macros r=flodiebold a=flodiebold MacroStmts should be completely transparent, but it prevented coercion. (I should maybe give `infer_expr` and `infer_expr_inner` better names.) Co-authored-by: Florian Diebold <[email protected]>
| * | Fix type mismatch caused by macrosFlorian Diebold2021-05-252-1/+45
|/ / | | | | | | | | | | MacroStmts should be completely transparent, but it prevented coercion. (I should maybe give `infer_expr` and `infer_expr_inner` better names.)
* | Merge #8942bors[bot]2021-05-2510-62/+124
|\ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 8942: Add `library` semantic token modifier to items from other crates r=arzg a=arzg Closes #5772. A lot of code here is pretty repetitive; please let me know if you have any ideas how to improve it, or whether it’s fine as-is. Side-note: How can I add tests for this? I don’t see a way for the test Rust code in `test_highlighting` to reference other crates to observe the new behaviour. Co-authored-by: Aramis Razzaghipour <[email protected]>
| * | Refactor application of `library` semantic token modifierAramis Razzaghipour2021-05-251-62/+15
| | |
| * | Remove superfluous early-returnsAramis Razzaghipour2021-05-241-18/+22
| | |
| * | Rename ‘foreign’ semantic token modifier to ‘library’Aramis Razzaghipour2021-05-245-20/+20
| | |
| * | Add testing of foreign item highlightingAramis Razzaghipour2021-05-242-1/+55
| | |
| * | Highlight foreign modules as suchAramis Razzaghipour2021-05-241-1/+9
| | |
| * | Remove hir krate methodsAramis Razzaghipour2021-05-244-59/+11
| | |
| * | Add highlighting of items from other cratesAramis Razzaghipour2021-05-246-12/+103
| | |
* | | Merge #8979bors[bot]2021-05-241-5/+9
|\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 8979: minor: update `CrateGraph` comment r=jonas-schievink a=jonas-schievink `cfg` flags are now implemented, and crates *may* have names, it doesn't doesn't matter for name resolution bors r+ Co-authored-by: Jonas Schievink <[email protected]>
| * | | Update `CrateGraph` commentJonas Schievink2021-05-241-5/+9
| | | | | | | | | | | | | | | | | | | | `cfg` flags are now implemented, and crates *may* have names, it doesn't doesn't matter for name resolution
* | | | Merge #8978bors[bot]2021-05-243-13/+14
|\ \ \ \ | |/ / / |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 8978: internal: intern `AttrInput` r=jonas-schievink a=jonas-schievink saves ~10 MB on r-a bors r+ Co-authored-by: Jonas Schievink <[email protected]>
| * | | internal: intern `AttrInput`Jonas Schievink2021-05-243-13/+14
|/ / /
* | | Merge #8975bors[bot]2021-05-244-62/+112
|\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 8975: Use todo!() as placeholder body for generated match arms r=matklad a=jDomantas `todo!()` seems to be a better fit for this than `{}`. Seeing that this assist predates stabilization of `todo` my guess is that simply no one bothered to change it yet. Also fixed the issue where if the last arm was not block-like, rust-analyzer would not add a comma after it and would generate invalid code. Co-authored-by: Domantas Jadenkus <[email protected]>
| * | | add test that it does not create extraneous commasDomantas Jadenkus2021-05-241-0/+20
| | | |
| * | | tidyDomantas Jadenkus2021-05-242-2/+3
| | | |
| * | | generate match arms with todo!() as placeholder bodyDomantas Jadenkus2021-05-242-60/+89
| | | |
* | | | Merge #8977bors[bot]2021-05-247-90/+101
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 8977: internal: minor `TokenMap` cleanups r=jonas-schievink a=jonas-schievink bors r+ Co-authored-by: Jonas Schievink <[email protected]>
| * | | | FixupJonas Schievink2021-05-242-4/+8
| | | | |
| * | | | Make `TokenTextRange` privateJonas Schievink2021-05-245-11/+10
| | | | |
| * | | | Move `TokenMap` to its own fileJonas Schievink2021-05-243-81/+89
| | | | |
* | | | | Merge #8976bors[bot]2021-05-245-25/+25
|\ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 8976: internal: rename hypothetical -> speculative r=matklad a=matklad bors r+ 🤖 Co-authored-by: Aleksey Kladov <[email protected]>
| * | | | | internal: rename hypothetical -> speculativeAleksey Kladov2021-05-245-25/+25
|/ / / / / | | | | | | | | | | | | | | | | | | | | Lets steal this good naming from Roslyn before I forget about it yet again.
* | | | | Merge #8970bors[bot]2021-05-241-15/+21
|\ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 8970: fix: duplicate dependencies that have multiple DepKinds r=jonas-schievink a=jonas-schievink Cargo collapses identical dependencies that are listed under `[dependencies]` and `[build-dependencies]` into a single `NodeDep`. We have to undo that by duplicating the dependency for each of its listed `DepKind`s. Not doing that would incorrectly treat a dependency as `DepKind::Normal`, even though it is *also* meant to be a `DepKind::Build`. Fixes https://github.com/rust-analyzer/rust-analyzer/pull/8812#issuecomment-847125395 bors r+ Co-authored-by: Jonas Schievink <[email protected]>
| * | | | | Duplicate dependencies that have multiple DepKindsJonas Schievink2021-05-241-15/+21
| |/ / / /
* | | | | Merge #8967bors[bot]2021-05-241-1/+1
|\ \ \ \ \ | |_|/ / / |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | 8967: fix cursor position after item move command r=matklad a=eduardocanellas Co-authored-by: Eduardo Canellas <[email protected]>
| * | | | fix: cursor position after item move commandEduardo Canellas2021-05-241-1/+1
| | | | | | | | | | | | | | | | | | | | closes Item movers need some fixes #8492
* | | | | Merge #8963bors[bot]2021-05-2419-60/+116
|\ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 8963: Bump deps r=matklad a=lnicola Co-authored-by: Laurențiu Nicola <[email protected]>