aboutsummaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
* Merge #4964bors[bot]2020-06-207-192/+109
|\ | | | | | | | | | | | | | | | | | | | | 4964: Move ReqQueue to lsp-server r=matklad a=matklad bors r+ 🤖 Co-authored-by: Aleksey Kladov <[email protected]>
| * Move ReqQueue to lsp-serverAleksey Kladov2020-06-207-192/+109
|/
* Merge #4961bors[bot]2020-06-204-170/+188
|\ | | | | | | | | | | | | | | 4961: Centralize handing of in-flight requests r=matklad a=matklad Co-authored-by: Aleksey Kladov <[email protected]>
| * Centralize handing of in-flight requestsAleksey Kladov2020-06-204-170/+188
| |
* | Merge #4958bors[bot]2020-06-204-24/+312
|\ \ | |/ |/| | | | | | | | | | | | | 4958: Infer FnSig via Fn traits r=flodiebold a=adamrk Addresses https://github.com/rust-analyzer/rust-analyzer/issues/4481. When inferring types check if the callee implements one of the builtin `Fn` traits. Also autoderef the callee before trying to figure out it's `FnSig`. Co-authored-by: adamrk <[email protected]>
| * Push obligation instead of matching on solutionadamrk2020-06-202-45/+40
| |
| * Get Output assoc type by nameadamrk2020-06-201-13/+3
| |
| * Add test for dyn Fn Outputadamrk2020-06-201-0/+68
| |
| * move tests to ra_hir_tyadamrk2020-06-202-104/+155
| |
| * Fixes to callable_sig_from_fn_traitadamrk2020-06-202-67/+72
| |
| * Make get_fn_trait a method of FnTraitadamrk2020-06-203-21/+21
| |
| * Switch back callable_sig for known fn typesadamrk2020-06-202-4/+4
| |
| * Infer FnSig from Fn traitsadamrk2020-06-195-18/+197
| |
* | Merge #4952bors[bot]2020-06-192-0/+94
|\ \ | | | | | | | | | | | | | | | | | | | | | | | | 4952: Shift bound variables correctly when using assoc type shorthand r=matklad a=flodiebold Fixes #4885. Fixes #4800. Co-authored-by: Florian Diebold <[email protected]>
| * | Shift bound variables correctly when using assoc type shorthandFlorian Diebold2020-06-192-0/+94
| | | | | | | | | | | | | | | Fixes #4885. Fixes #4800.
* | | Merge #4951bors[bot]2020-06-192-6/+31
|\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | 4951: Don't panic on crates depending on themselves r=matklad a=flodiebold Fixes #3883. Co-authored-by: Florian Diebold <[email protected]>
| * | | Don't panic on crates depending on themselvesFlorian Diebold2020-06-192-6/+31
| | | | | | | | | | | | | | | | Fixes #3883.
* | | | Merge #4955bors[bot]2020-06-191-3/+2
|\ \ \ \ | |_|/ / |/| | | | | | | | | | | | | | | | | | | | | | | 4955: Update workaround comment r=matklad a=Veetaha Co-authored-by: Veetaha <[email protected]>
| * | | Update workaround commentVeetaha2020-06-191-3/+2
| |/ /
* | | Merge #4950bors[bot]2020-06-193-17/+47
|\ \ \ | |_|/ |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | 4950: Use correct substs for super trait assoc types r=matklad a=flodiebold When referring to an associated type of a super trait, we used the substs of the subtrait. That led to the #4931 crash if the subtrait had less parameters, but it could also lead to other incorrectness if just the order was different. Fixes #4931. Co-authored-by: Florian Diebold <[email protected]>
| * | Use correct substs for super trait assoc typesFlorian Diebold2020-06-193-17/+47
|/ / | | | | | | | | | | | | | | When referring to an associated type of a super trait, we used the substs of the subtrait. That led to the #4931 crash if the subtrait had less parameters, but it could also lead to other incorrectness if just the order was different. Fixes #4931.
* | Merge #4957bors[bot]2020-06-192-1/+33
|\ \ | |/ |/| | | | | | | | | | | | | | | | | 4957: Fix substs in resolve_value_path for ImplSelf r=flodiebold a=Speedy37 Fixes #4953. This is the first fix I do in hir_ty, I hope I got it right :) Co-authored-by: Vincent Rouillé <[email protected]>
| * Fix substs in resolve_value_path for ImplSelfVincent Rouillé2020-06-192-1/+33
|/ | | | Fixes #4953.
* Merge #4851bors[bot]2020-06-195-5/+134
|\ | | | | | | | | | | | | | | | | | | | | | | 4851: Add quickfix to add a struct field r=TimoFreiberg a=TimoFreiberg Related to #4563 I created a quickfix for record literals first because the NoSuchField diagnostic was already there. To offer that quickfix for FieldExprs with unknown fields I'd need to add a new diagnostic (or create a `NoSuchField` diagnostic for those cases) I think it'd make sense to make this a snippet completion (to select the generated type), but this would require changing the `Analysis` API and I'd like some feedback before I touch that. Co-authored-by: Timo Freiberg <[email protected]>
| * Add quickfix to add a struct fieldTimo Freiberg2020-06-125-5/+134
| |
* | Merge #4937bors[bot]2020-06-191-1/+4
|\ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 4937: Allow overriding rust-analyzer display version r=matklad a=oxalica The build script invokes `git` for version information which is displayed when rust-analyzer is called with `--version`. But in build environment without `git` or when the source code is not a git repo, there's no way to manually specify the version information. This patch respects environment variable ~`REV`~ `RUST_ANALYZER_REV` in compile time for overriding. Related: https://github.com/NixOS/nixpkgs/pull/90976 Co-authored-by: oxalica <[email protected]>
| * | Fix fmtoxalica2020-06-181-1/+2
| | |
| * | Allow overriding rust-analyzer display revisionoxalica2020-06-181-1/+3
| | |
* | | Merge #4839bors[bot]2020-06-1911-38/+1360
|\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 4839: `Go to Type Definition` hover action. r=matklad a=vsrs ![hover_actions_goto](https://user-images.githubusercontent.com/62505555/83335671-0122e380-a2b7-11ea-9922-fbdcfb11a7f3.gif) This implementation supports things like `dyn Trait<SomeType>`, `-> impl Trait`, etc. Co-authored-by: vsrs <[email protected]>
| * | | Apply suggestions from code reviewvsrs2020-06-183-65/+328
| | | |
| * | | Add Type::walk methodvsrs2020-06-183-75/+132
| | | |
| * | | Remove AdtOrTraitvsrs2020-06-184-50/+39
| | | |
| * | | Add `rust-analyzer.gotoLocation` commandvsrs2020-06-186-8/+25
| | | |
| * | | Add associated type test.vsrs2020-06-183-2/+65
| | | |
| * | | Fix type "items" order.vsrs2020-06-182-24/+36
| | | |
| * | | Add `Go to Type Definition` hover action.vsrs2020-06-188-35/+956
| | | |
| * | | Fix rust-analyzer.debug.openDebugPane optionvsrs2020-06-182-2/+2
| | | |
| * | | Fix empty hover action group for a runnable.vsrs2020-06-181-1/+1
| | | |
* | | | Merge #4948bors[bot]2020-06-194-11/+30
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 4948: Speedup VFS::partition r=matklad a=matklad The task of `partition` function is to bin the flat list of paths into disjoint filesets. Ideally, it should be incremental -- each new file should be added to a specific fileset. However, preliminary measurnments show that it is actually fast enough if we just optimize this to use a binary search instead of a linear scan. bors r+ 🤖 Co-authored-by: Aleksey Kladov <[email protected]>
| * | | | Speedup VFS::partitionAleksey Kladov2020-06-194-11/+30
|/ / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The task of `partition` function is to bin the flat list of paths into disjoint filesets. Ideally, it should be incremental -- each new file should be added to a specific fileset. However, preliminary measurnments show that it is actually fast enough if we just optimize this to use a binary search instead of a linear scan.
* | | | Merge #4930bors[bot]2020-06-181-28/+49
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 4930: Avoid all unchecked indexing in match checking r=flodiebold a=jonas-schievink Fixes https://github.com/rust-analyzer/rust-analyzer/issues/4416, but replaces it with a false positive. r? @flodiebold Co-authored-by: Jonas Schievink <[email protected]>
| * | | | Avoid all unchecked indexing in match checkingJonas Schievink2020-06-171-28/+49
| | | | |
* | | | | Merge #4941bors[bot]2020-06-182-8/+4
|\ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 4941: Simplify r=matklad a=matklad bors r+ 🤖 Co-authored-by: Aleksey Kladov <[email protected]>
| * | | | | SimplifyAleksey Kladov2020-06-182-8/+4
| | |_|/ / | |/| | |
* | | | | Merge #4903bors[bot]2020-06-185-41/+56
|\ \ \ \ \ | |/ / / / |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 4903: Add highlighting support for doc comments r=matklad a=Nashenas88 The language server protocol includes a semantic modifier for documentation. This change exports that modifier for doc comments so users can choose to highlight them differently compared to regular comments. Example: <img width="375" alt="Screen Shot 2020-06-16 at 10 34 14 AM" src="https://user-images.githubusercontent.com/1673130/84788271-f6599580-afbc-11ea-96e5-7a0215da620b.png"> CC @woody77 Co-authored-by: Paul Daniel Faria <[email protected]>
| * | | | Remove logic to mark all doctest code asPaul Daniel Faria2020-06-182-14/+13
| | | | |
| * | | | Ensure all existing doctest code highlights have documentation modifierPaul Daniel Faria2020-06-173-21/+22
| | | | |
| * | | | Add highlighting support for doc commentsPaul Daniel Faria2020-06-175-41/+56
| | | | |
* | | | | Merge #4935bors[bot]2020-06-182-10/+4
|\ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 4935: Simplify r=matklad a=matklad bors r+ 🤖 Co-authored-by: Aleksey Kladov <[email protected]>
| * | | | | SimplifyAleksey Kladov2020-06-182-10/+4
| | |_|/ / | |/| | |