Commit Graph

10902 Commits

Author SHA1 Message Date
Jonas Schievink 563d585594 Use IdRange for variants 2020-06-25 16:52:15 +02:00
Jonas Schievink b06214d164 Generalize FieldIds -> IdRange<T> 2020-06-25 16:42:59 +02:00
Jonas Schievink 2a8fc9e682 adt.rs: fetch struct/union data from item tree 2020-06-25 16:41:08 +02:00
Jonas Schievink d84b3ff6a1 Collect field/variant attrs in ItemTree 2020-06-25 14:39:27 +02:00
Jonas Schievink 9ba7726579 Allow iterating fields in the ItemTree 2020-06-25 13:50:27 +02:00
bors[bot] e2465ee2e9 Merge #5053
5053: Fix matchig brace for pipes r=matklad a=matklad



bors r+
🤖

Co-authored-by: Aleksey Kladov <aleksey.kladov@gmail.com>
2020-06-25 08:16:50 +00:00
Aleksey Kladov 394a3dbcb5 Fix matchig brace for pipes 2020-06-25 10:16:06 +02:00
bors[bot] 193ea7cf9a Merge #5052
5052: Minor, move code r=matklad a=matklad



bors r+
🤖

Co-authored-by: Aleksey Kladov <aleksey.kladov@gmail.com>
2020-06-25 07:51:54 +00:00
Aleksey Kladov 1ccf33d88f Minor, move code 2020-06-25 09:51:30 +02:00
bors[bot] 0d2e695ffc Merge #5050
5050: Simplify r=matklad a=matklad



bors r+
🤖

Co-authored-by: Aleksey Kladov <aleksey.kladov@gmail.com>
2020-06-25 07:28:27 +00:00
Aleksey Kladov 941d4bfa53 Simplify 2020-06-25 09:27:59 +02:00
Aleksey Kladov 5d401092f0 Minor rename 2020-06-25 09:19:01 +02:00
bors[bot] edf8f419b5 Merge #5049
5049: Rename ra_flycheck -> flycheck r=matklad a=matklad



bors r+
🤖

Co-authored-by: Aleksey Kladov <aleksey.kladov@gmail.com>
2020-06-25 07:15:30 +00:00
Aleksey Kladov 0ec5d4f55c Rename ra_flycheck -> flycheck 2020-06-25 09:13:46 +02:00
bors[bot] 44d525d4e0 Merge #5048
5048: Unify code style for worker threads r=matklad a=matklad

bors r+
🤖

Co-authored-by: Aleksey Kladov <aleksey.kladov@gmail.com>
2020-06-25 07:01:14 +00:00
Aleksey Kladov 5a184fe855 Unify style 2020-06-25 09:00:33 +02:00
bors[bot] fb70eb6e21 Merge #5047
5047: matching brace works for | in lambdas r=matklad a=matklad



bors r+
🤖

Co-authored-by: Aleksey Kladov <aleksey.kladov@gmail.com>
2020-06-25 06:50:18 +00:00
Aleksey Kladov db58b3e063 matching brace works for | in lambdas 2020-06-25 08:49:26 +02:00
Aleksey Kladov dab8808e82 Abstract over channel 2020-06-25 08:39:33 +02:00
Aleksey Kladov 69e6924dd5 Use Handle/Actor terminology for flycheck 2020-06-25 08:24:27 +02:00
bors[bot] 659b16981a Merge #5046
5046: Fix progress reporting for flycheck r=matklad a=matklad

bors r+

Co-authored-by: veetaha <veetaha2@gmail.com>
Co-authored-by: Veetaha <veetaha2@gmail.com>
Co-authored-by: Aleksey Kladov <aleksey.kladov@gmail.com>
2020-06-25 06:08:30 +00:00
Aleksey Kladov 874a5f80c7 Scale progress down
There are two reasons why we don't want a generic ra_progress crate
just yet:

*First*, it introduces a common interface between separate components,
and that is usually undesirable (b/c components start to fit the
interface, rather than doing what makes most sense for each particular
component).

*Second*, it introduces a separate async channel for progress, which
makes it harder to correlate progress reports with the work done. Ie,
when we see 100% progress, it's not blindly obvious that the work has
actually finished, we might have some pending messages still.
2020-06-25 08:01:03 +02:00
Aleksey Kladov 76a530242a Merge branch 'Veetaha-feat/sync-branch' 2020-06-25 07:56:47 +02:00
bors[bot] 78e94e4570 Merge #5044
5044: Tweak visibility r=matklad a=matklad



bors r+
🤖

Co-authored-by: Aleksey Kladov <aleksey.kladov@gmail.com>
2020-06-25 00:16:32 +00:00
Aleksey Kladov 10ee6eb733 Tweak visibility 2020-06-25 01:02:08 +02:00
Aleksey Kladov 012a7e57b9 Reduce visibility 2020-06-25 01:02:08 +02:00
Aleksey Kladov 19b063e055 Merge LoopState into GlobalState 2020-06-25 01:02:04 +02:00
bors[bot] 104fad65da Merge #5025
5025: Don't mess with messy temp dir and just download into extension dir r=matklad a=Veetaha

Temp dirs are messy. Dealing with them requires handling quite a bunch of
edge cases. As proposed by lnicola this seems better to just put the temp files
in the extension dir and not care much about suddenly leaving garbage.
Instead we get shorter and less platform-caveat-y code.
We will also assume users don't try to issue a download in different vscode windows simultaneously.

Fixes #5019 

Co-authored-by: Veetaha <veetaha2@gmail.com>
2020-06-24 22:09:28 +00:00
Veetaha c1d39571c9 Append 10 random hex chars to temp artifact files 2020-06-25 01:00:30 +03:00
bors[bot] bff7307b8c Merge #5039
5039: Flatten module hierarchy r=matklad a=matklad



bors r+
🤖

Co-authored-by: Aleksey Kladov <aleksey.kladov@gmail.com>
2020-06-24 16:58:44 +00:00
Aleksey Kladov 693489e5ee Flatten module hierarchy 2020-06-24 18:57:30 +02:00
Aleksey Kladov d6c204c750 Cleanup visibility 2020-06-24 18:54:05 +02:00
bors[bot] 946b2c28a7 Merge #5038
5038: Make `iterate_method_candidates` non-generic r=jonas-schievink a=jonas-schievink

Closes https://github.com/rust-analyzer/rust-analyzer/issues/4975

bors r+ 🤖 ;)

Co-authored-by: Jonas Schievink <jonas.schievink@ferrous-systems.com>
2020-06-24 15:45:39 +00:00
Jonas Schievink cefb2204cb Make iterate_method_candidates non-generic 2020-06-24 17:45:38 +02:00
bors[bot] 7e61f4c59e Merge #5035 #5037
5035: Less error-prone naming r=matklad a=matklad



bors r+
🤖

5037: Don't watch dirs if not asked to r=matklad a=matklad



bors r+
🤖

Co-authored-by: Aleksey Kladov <aleksey.kladov@gmail.com>
2020-06-24 15:18:13 +00:00
Aleksey Kladov 089ea36b2e Don't watch dirs if not asked to 2020-06-24 17:11:07 +02:00
bors[bot] e9bdb05e96 Merge #4990
4990: Introduce an ItemTree layer to avoid reparsing files r=matklad a=jonas-schievink

This reduces the latency of "go to definition" in a simple benchmark on rust-analyzer by around 30%.

cc https://github.com/rust-analyzer/rust-analyzer/issues/1650
Closes https://github.com/rust-analyzer/rust-analyzer/issues/3485

Co-authored-by: Aleksey Kladov <aleksey.kladov@gmail.com>
Co-authored-by: Jonas Schievink <jonas.schievink@ferrous-systems.com>
Co-authored-by: Jonas Schievink <jonasschievink@gmail.com>
2020-06-24 15:07:37 +00:00
Aleksey Kladov 6937bcb67d Less error-prone naming 2020-06-24 16:59:15 +02:00
Aleksey Kladov ddc5a3e567 Fix infinite cargo check bug 2020-06-24 16:59:15 +02:00
Jonas Schievink 2928600374 Reorder items 2020-06-24 16:54:21 +02:00
Jonas Schievink d6fd7809b0 Clean up and fix inner item collection a bit 2020-06-24 16:54:21 +02:00
Jonas Schievink 3b50b0b2b6 Use a HashMap instead of Vec
This is no longer enforcing stack discipline, so a Vec isn't necessary
or helpful
2020-06-24 16:54:21 +02:00
Jonas Schievink 59d4640b64 Remove unneeded HirFileId argument 2020-06-24 16:54:21 +02:00
Jonas Schievink d4ddec2bdf Shrink arenas after building ItemTree 2020-06-24 16:54:21 +02:00
Jonas Schievink 94169ee504 ItemTree: Use more boxed slices 2020-06-24 16:54:21 +02:00
Jonas Schievink abdba92334 Don't allocate empty generics 2020-06-24 16:54:21 +02:00
Jonas Schievink 43cad21623 Don't allocate common visibilities 2020-06-24 16:54:20 +02:00
Jonas Schievink 16fd4dabb7 Remove file id from item tree
It's not needed, and `source` is only used by tests anyways
2020-06-24 16:53:56 +02:00
Jonas Schievink c019002d17 Slightly reduce ItemTree memory footprint 2020-06-24 16:53:56 +02:00
Jonas Schievink f9a1a9cd3c Merge item tree traits
The Source trait isn't needed anymore since we no longer merge
extern crate items with use items.
2020-06-24 16:53:56 +02:00