aboutsummaryrefslogtreecommitdiff
path: root/crates
Commit message (Collapse)AuthorAgeFilesLines
...
* | | | | | Merge #8285bors[bot]2021-04-024-8/+26
|\ \ \ \ \ \ | |_|/ / / / |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 8285: Don't recheck obligations if we have learned nothing new r=matklad a=flodiebold This is just the most trivial check: If no inference variables have been updated, and there are no new obligations, we can just skip trying to solve them again. We could be smarter about it, but this already helps quite a bit, and I don't want to touch this too much before we replace the inference table by Chalk's. Fixes #8263 (well, improves it quite a bit). Co-authored-by: Florian Diebold <[email protected]>
| * | | | | Don't recheck obligations if we have learned nothing newFlorian Diebold2021-04-014-8/+26
| | |/ / / | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This is just the most trivial check: If no inference variables have been updated, and there are no new obligations, we can just skip trying to solve them again. We could be smarter about it, but this already helps quite a bit, and I don't want to touch this too much before we replace the inference table by Chalk's. Fixes #8263 (well, improves it quite a bit).
* | | | | Merge #8265bors[bot]2021-04-012-47/+192
|\ \ \ \ \ | |_|/ / / |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 8265: Improve rustc diagnostic mapping r=jonas-schievink a=jonas-schievink Try to mirror rustc diagnostics more closely by: * Emitting hint-level diagnostics at *all* macro invocation sites that caused the diagnostic * Previously we emitted a copy of the diagnostic (not at hint level) at the last macro invocation site only * Emitting the original diagnostic inside the macro, if it was caused by a macro * Always including related information pointing to the invocation site or the macro, respectively (the old code contained a bug that would sometimes omit it) Fixes https://github.com/rust-analyzer/rust-analyzer/issues/8260 ![screenshot-2021-03-30-19:34:56](https://user-images.githubusercontent.com/1786438/113031484-1266a600-918f-11eb-9164-fed01c8ba37e.png) ![screenshot-2021-03-30-19:35:10](https://user-images.githubusercontent.com/1786438/113031486-12ff3c80-918f-11eb-8f15-9d7f23b69653.png) Co-authored-by: Jonas Schievink <[email protected]> Co-authored-by: Jonas Schievink <[email protected]>
| * | | | Check for and skip dummy macro filesJonas Schievink2021-04-012-120/+16
| | | | |
| * | | | Adjust message when pointing at location in macroJonas Schievink2021-04-011-2/+10
| | | | |
| * | | | Search for a suitable primary locationJonas Schievink2021-03-311-9/+27
| | | | |
| * | | | Rename `convert_location` -> `location`Jonas Schievink2021-03-311-11/+11
| | | | |
| * | | | Improve rustc diagnostic mappingJonas Schievink2021-03-303-49/+272
| | | | |
* | | | | Merge #8283bors[bot]2021-04-015-7/+96
|\ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 8283: Resolve associated types r=flodiebold a=Veykril Prior we were only resolving paths until the first type was found, then discarding the result if the path wasn't fully consumed. That of course causes associated types to not resolve. Fixes #5003 Co-authored-by: Lukas Wirth <[email protected]>
| * | | | | Resolve associated types with type anchorsLukas Wirth2021-04-013-12/+42
| | | | | |
| * | | | | Resolve associated typesLukas Wirth2021-04-014-5/+64
| | | | | |
* | | | | | Include remaining memory in memory usage statsJonas Schievink2021-04-011-1/+2
| |_|/ / / |/| | | |
* | | | | Merge #8274bors[bot]2021-04-012-0/+6
|\ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 8274: Adding a few more gifs and screenshots for features in manual r=Veykril a=MozarellaMan Related #8267,#6539. Gifs are [here](https://github.com/rust-analyzer/rust-analyzer/issues/6539#issuecomment-809574840) Finishing up the last PR, for the last two features that didn't have a visual example. For syntax highlighting, I wasn't able to find a theme that displayed the difference between an enum and struct, but I only tried a few apart from the default so there could be one out there! e.g., with the default light theme, `Ord` and `Ordering` in `use std::cmp::{Ord, Ordering}` had the same highlight colour. So I just went with displaying `mut` items being underlined. Co-authored-by: Ayomide Bamidele <[email protected]>
| * | | | | Additional syntax highlighting screenshot in manualAyomide Bamidele2021-03-311-0/+1
| | | | | |
| * | | | | Gif of "let = " typing assistAyomide Bamidele2021-03-311-0/+1
| | | | | |
| * | | | | Gifs and screenshots for features in manual (syntax highlighting and typing)Ayomide Bamidele2021-03-312-0/+4
| |/ / / /
* / / / / Fix block inner item defined in macroEdwin Cheng2021-03-312-0/+32
|/ / / /
* | | | Merge #8210bors[bot]2021-03-314-1/+174
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 8210: Implement "Extract type alias" assist r=jonas-schievink a=jonas-schievink Co-authored-by: Jonas Schievink <[email protected]> Co-authored-by: Jonas Schievink <[email protected]>
| * | | | Don't use snippetsJonas Schievink2021-03-292-19/+14
| | | | |
| * | | | Use `find_node_at_range`Jonas Schievink2021-03-292-26/+7
| | | | |
| * | | | Snippet support in extract_type_aliasJonas Schievink2021-03-272-15/+26
| | | | |
| * | | | Implement "Extract type alias" assistJonas Schievink2021-03-263-0/+186
| | | | |
* | | | | Merge #8271bors[bot]2021-03-311-2/+17
|\ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 8271: Fix fail to parse u128 in proc-macro r=edwin0cheng a=edwin0cheng fixes #8270 bors r+ Co-authored-by: Edwin Cheng <[email protected]>
| * | | | | Fix parse u128 bug in proc-macroEdwin Cheng2021-03-311-2/+17
| | | | | |
* | | | | | Merge #8269bors[bot]2021-03-311-0/+9
|\ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 8269: internal: document semantics for missing names r=flodiebold a=matklad Co-authored-by: Aleksey Kladov <[email protected]>
| * | | | | | internal: document semantics for missing namesAleksey Kladov2021-03-311-0/+9
| | | | | | |
* | | | | | | Merge #8267bors[bot]2021-03-3124-0/+44
|\ \ \ \ \ \ \ | |_|/ / / / / |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 8267: Adding gifs and screenshots for features in manual r=matklad a=MozarellaMan For #6539 This includes most of gif or screenshot examples of most items in the "Features" header. With the exceptions of: - **On Typing Assists** - couldn't get it to work for a demo, I'm probably missing something? - **Structural search and replace** - looked to be already a visual example of the feature - **Workspace symbol** - wasn't sure how best to show this, all of the examples maybe? Also wasn't sure of the best code example to show it off - **Semantic Syntax Highlighting** - seemed obvious enough to not need a screenshot, but I could easily add this All the gifs/pngs are hosted in this [comment](https://github.com/rust-analyzer/rust-analyzer/issues/6539#issuecomment-809574840). Please let me know if any of them aren't suitable (and why) and I'll improve it! Or if you don't like the theme/font Co-authored-by: Ayomide Bamidele <[email protected]>
| * | | | | | Gifs and screenshots for features in manualAyomide Bamidele2021-03-3124-0/+44
| | | | | | |
* | | | | | | Merge #8266bors[bot]2021-03-312-1/+46
|\ \ \ \ \ \ \ | |_|/ / / / / |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 8266: Fix generic arguments being incorrectly offset in qualified trait casts r=flodiebold a=Veykril We reverse the segments and generic args of the lowered path after building it, this wasn't accounted for when inserting the self parameter in `Type as Trait` segments. Fixes #5886 Co-authored-by: Lukas Wirth <[email protected]>
| * | | | | | Fix generic arguments being incorrectly offset in qualified trait castsLukas Wirth2021-03-302-1/+46
| | |_|_|/ / | |/| | | |
* | | | | | Revert "8024: Added test case for highlighting trait items."Chetan Khilosiya2021-03-302-104/+0
| | | | | | | | | | | | | | | | | | | | | | | | This reverts commit d7dcd41801b319f64f3ca2ed22735ab70092e491.
* | | | | | 8024: Fix for function name change.Chetan Khilosiya2021-03-301-2/+2
| | | | | |
* | | | | | 8024: Added test case for highlighting trait items.Chetan Khilosiya2021-03-302-0/+104
| | | | | |
* | | | | | 8024: Updated the implementation for trait modifier.Chetan Khilosiya2021-03-306-20/+30
| | | | | | | | | | | | | | | | | | | | | | | | Fixed the test cases.
* | | | | | 8024: Added the trait modifier for methodsChetan Khilosiya2021-03-304-1/+24
| |_|_|/ / |/| | | | | | | | | | | | | | method in impls and method calls will have trait modifier.
* | | | | Merge #8186bors[bot]2021-03-3017-40/+100
|\ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 8186: Lower traits to `TraitRef` instead of `TypeRef` r=matklad a=Veykril Co-authored-by: Lukas Wirth <[email protected]>
| * | | | | Remove TraitRef::ErrorLukas Wirth2021-03-293-17/+15
| | | | | |
| * | | | | Rename target_ty to self_tyLukas Wirth2021-03-2916-27/+27
| | | | | |
| * | | | | Lower traits to TraitRef instead of TypeRefLukas Wirth2021-03-296-14/+76
| | | | | |
* | | | | | Merge #8261bors[bot]2021-03-301-25/+15
|\ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 8261: Fix expansion of OR-patterns in match check r=Veykril a=Jesse-Bakker Fixes #8249 Co-authored-by: Jesse Bakker <[email protected]>
| * | | | | | Fix expansion of OR-patterns in match checkJesse Bakker2021-03-301-25/+15
| | | | | | |
* | | | | | | Merge #8262bors[bot]2021-03-303-12/+46
|\ \ \ \ \ \ \ | |_|_|/ / / / |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 8262: internal: revive google_cpu_profile infra r=matklad a=matklad bors r+ 🤖 Co-authored-by: Aleksey Kladov <[email protected]>
| * | | | | | internal: revive google_cpu_profile infraAleksey Kladov2021-03-303-12/+46
| |/ / / / /
* | | | | | Merge #8256bors[bot]2021-03-302-13/+256
|\ \ \ \ \ \ | |/ / / / / |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 8256: Item movers improvements r=ivan770 a=ivan770 Closes #8236 Co-authored-by: ivan770 <[email protected]>
| * | | | | Fix code styleivan7702021-03-302-0/+2
| | | | | |
| * | | | | Improved node lookup algorithm, added more movable nodesivan7702021-03-301-13/+254
| | | | | |
* | | | | | internal: switch from CLI to internal benchmarkingAleksey Kladov2021-03-306-262/+76
|/ / / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | We have a CLI for benchmarking, but no one actually uses it it seems. Let's try switching to "internal" benchmarks, implemented as rust tests. They should be easier to "script" to automate tracking of perf regressions.
* | | | | Accurately classify assoc. types in pathsJonas Schievink2021-03-302-18/+38
| | | | |
* | | | | Merge #8247bors[bot]2021-03-291-0/+2
|\ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 8247: internal: ensure that runaway type-inference doesn't block the main loop r=flodiebold a=matklad We have a bug where type-checking `per_query_memory_usage` takes a couple of seconds. It also reveals another bug: our type inference is not cancellable. Co-authored-by: Aleksey Kladov <[email protected]>
| * | | | | internal: ensure that runaway type-inference doesn't block the main loopAleksey Kladov2021-03-291-0/+2
| | |/ / / | |/| | | | | | | | | | | | | | | | | | | | | | | We have a bug where type-checking `per_query_memory_usage` takes a couple of seconds. It also reveals another bug: our type inference is not cancellable.