Commit graph

14517 commits

Author SHA1 Message Date
bors[bot]
93e1896049
Merge #7275
7275: Make arena index vs ID naming consistent r=matklad a=arzg

This makes naming consistent with `la_arena::RawId`. Alternatively, la-arena’s documentation could be updated to use ‘index’ terminology instead of ‘ID’ terminology, and `RawId` renamed to `RawIdx`.

This pull request doesn’t compile because dependencies on la-arena go through crates.io, so existing dependencies on the crate are referencing an old version. As such, this PR will only compile once a new la-arena version has been published.

Co-authored-by: Aramis Razzaghipour <aramisnoah@gmail.com>
2021-01-17 08:01:20 +00:00
Aramis Razzaghipour
1d103cf087
Use ‘index’ terminology for arena consistently 2021-01-17 18:38:08 +11:00
bors[bot]
3224ecea87
Merge #7276
7276: Remove map module from la-arena public API r=lnicola a=arzg

It’s unlikely that more items will be added to the module, so it’s simpler for users if `ArenaMap` is re-exported and the module made private.

This doesn’t compile for the same reason that #7275 doesn’t:

> This pull request doesn’t compile because dependencies on la-arena go through crates.io, so existing dependencies on the crate are referencing an old version. As such, this PR will only compile once a new la-arena version has been published.

Co-authored-by: Aramis Razzaghipour <aramisnoah@gmail.com>
2021-01-17 07:20:36 +00:00
bors[bot]
f5f011ba71
Merge #7304
7304: Depend on local copy of la-arena instead of crates.io’s r=lnicola a=arzg

This addresses [this comment](https://github.com/rust-analyzer/rust-analyzer/pull/7276#issuecomment-760909936). #7275 and #7276 should start compiling if this is merged.

Co-authored-by: Aramis Razzaghipour <aramisnoah@gmail.com>
2021-01-17 07:05:44 +00:00
Aramis Razzaghipour
709034d123
Depend on local copy of la-arena instead of crates.io’s 2021-01-17 17:52:57 +11:00
bors[bot]
0976a1ec8a
Merge #7300
7300: When building an item-tree, keep fewer nodes in memory r=matklad a=matklad

bors r+
🤖

Co-authored-by: Aleksey Kladov <aleksey.kladov@gmail.com>
2021-01-16 20:08:10 +00:00
Aleksey Kladov
b38414c7f4 When building an item-tree, keep fewer nodes in memory 2021-01-16 23:07:28 +03:00
bors[bot]
397b5e5d8e
Merge #7296
7296: Simpler and faster rowan r=matklad a=matklad

bors r+
🤖

Co-authored-by: Aleksey Kladov <aleksey.kladov@gmail.com>
2021-01-16 18:37:56 +00:00
Aleksey Kladov
842ed790ea Simpler and faster rowan
This removes thread-local syntax node caching, which improves perf a
bunch
2021-01-16 21:36:01 +03:00
bors[bot]
9a349f280f
Merge #7295
7295: Share import_assets and related entities r=matklad a=SomeoneToIgnore

Part of https://github.com/rust-analyzer/rust-analyzer/pull/7293
Addresses https://github.com/rust-analyzer/rust-analyzer/pull/7293#issuecomment-761569558

Prepares `import_assets` and related to be used later for the trait fuzzy importing.
Also moves fuzzy imports into a separate completion module and renames them, as suggested in https://github.com/rust-analyzer/rust-analyzer/pull/7293#discussion_r558896685

Co-authored-by: Kirill Bulatov <mail4score@gmail.com>
2021-01-16 17:52:29 +00:00
Kirill Bulatov
497fc232e7 Unindent the test 2021-01-16 19:51:42 +02:00
Kirill Bulatov
7ae1309ac5 Use specific kind for the flyimport completions 2021-01-16 19:40:59 +02:00
Kirill Bulatov
6742f38e49 Share import_assets and related entities 2021-01-16 19:33:36 +02:00
bors[bot]
3782c78d75
Merge #7290
7290: Add test mark for skipping single use item in Unmerge use assist r=Veykril a=unexge

followup for https://github.com/rust-analyzer/rust-analyzer/pull/7289

Co-authored-by: unexge <unexge@gmail.com>
2021-01-15 21:06:19 +00:00
unexge
cbe9335954 Add test mark for skipping single use item 2021-01-15 22:57:10 +03:00
bors[bot]
d93d3d6d73
Merge #7289
7289: Add Unmerge Use assist r=matklad a=unexge

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

Co-authored-by: unexge <unexge@gmail.com>
2021-01-15 19:43:59 +00:00
unexge
c303014f39 Create new nodes only when applying changes 2021-01-15 22:35:42 +03:00
unexge
a3a722de9f Add Unmerge Use assist 2021-01-15 22:14:51 +03:00
bors[bot]
8a869e870a
Merge #7288
7288: Handle self/super/crate in PathSegment as NameRef r=matklad a=Veykril

Wrapping self/super/crate in NameRef as per https://github.com/rust-analyzer/rust-analyzer/pull/7261#issuecomment-760023172



Co-authored-by: Lukas Wirth <lukastw97@gmail.com>
2021-01-15 18:40:47 +00:00
Lukas Wirth
cb863390f2 Handle self/super/crate in PathSegment as NameRef 2021-01-15 19:21:23 +01:00
bors[bot]
148e3d0f6a
Merge #7287
7287: Make SyntaxPtr lookup logarithmic r=matklad a=matklad

bors r+
🤖

Co-authored-by: Aleksey Kladov <aleksey.kladov@gmail.com>
2021-01-15 17:46:36 +00:00
Aleksey Kladov
26ef7e39f4 Make SyntaxPtr lookup logarithmic
closes #3934

cc https://github.com/rust-analyzer/rowan/pull/81
2021-01-15 20:40:40 +03:00
bors[bot]
92c0379560
Merge #7285
7285: Don't duplicate rustc diagnostics fixes r=matklad a=jonas-schievink

Should fix https://github.com/rust-analyzer/rust-analyzer/issues/6851

Co-authored-by: Jonas Schievink <jonasschievink@gmail.com>
2021-01-15 17:34:31 +00:00
bors[bot]
a8587f153b
Merge #7286
7286: Remove useless wrapper r=matklad a=matklad

bors r+
🤖

Co-authored-by: Aleksey Kladov <aleksey.kladov@gmail.com>
2021-01-15 17:16:27 +00:00
Aleksey Kladov
6dbba4d75d Remove useless wrapper 2021-01-15 20:15:33 +03:00
Jonas Schievink
36500fe496 Don't duplicate rustc diagnostics fixes 2021-01-15 18:11:54 +01:00
bors[bot]
0c58aa9dc0
Merge #7209
7209: Support yield keyword r=Veykril a=sasurau4

Part of #4309 
The inference of yield will be implemented at another PR.

Co-authored-by: Daiki Ihara <sasurau4@gmail.com>
2021-01-15 14:48:21 +00:00
Daiki Ihara
138514bea2 Add test for yield_expr 2021-01-15 23:35:17 +09:00
Daiki Ihara
85cd3524e2 Add support for yiled keyword 2021-01-15 23:35:17 +09:00
Daiki Ihara
d9b1fa6da3 Upgrade ungrammar to v1.7 2021-01-15 23:35:17 +09:00
bors[bot]
d6a708b1ea
Merge #7281
7281: Insert `;` when completing keywords in let r=matklad a=matklad

bors r+
🤖

Co-authored-by: Aleksey Kladov <aleksey.kladov@gmail.com>
2021-01-15 12:51:20 +00:00
Aleksey Kladov
f2ba2048d1 Insert ; when completing keywords in let 2021-01-15 15:49:59 +03:00
Aleksey Kladov
41ea260201 Simplify 2021-01-15 15:14:31 +03:00
Aleksey Kladov
9b1bc19d67 Add braces when completing ifs 2021-01-15 15:01:32 +03:00
bors[bot]
054e206152
Merge #7272
7272: Group file source edits by FileId r=matklad a=Veykril



Co-authored-by: Lukas Wirth <lukastw97@gmail.com>
2021-01-15 09:43:08 +00:00
bors[bot]
dc48de28d8
Merge #7278
7278: bump arena r=matklad a=matklad

bors r+
🤖

Co-authored-by: Aleksey Kladov <aleksey.kladov@gmail.com>
2021-01-15 08:36:26 +00:00
Aleksey Kladov
5c66053bd1 bump arena 2021-01-15 11:35:55 +03:00
Aleksey Kladov
b3b6e56222 bump arena 2021-01-15 11:31:29 +03:00
bors[bot]
986e8e9e5a
Merge #7274
7274: Flesh out la-arena crate r=lnicola a=arzg

As requested in #7267, I’ve added some basic documentation and added more keys to the crate’s `Cargo.toml`.

Co-authored-by: Aramis Razzaghipour <aramisnoah@gmail.com>
2021-01-15 08:18:22 +00:00
Aramis Razzaghipour
9b5ba090db
Remove map module from la-arena public API
It’s unlikely that more items will be added to the module,
so it’s simpler for users if `ArenaMap` is re-exported
and the module made private.
2021-01-15 11:14:04 +11:00
Aramis Razzaghipour
a45099ee3e
Add more keys to la-arena Cargo.toml 2021-01-15 10:53:35 +11:00
Aramis Razzaghipour
6dc79952db
Add docs to la-arena crate 2021-01-15 10:40:17 +11:00
Lukas Wirth
d5095329a1 Phase out SourceFileEdits in favour of a plain HashMap 2021-01-14 22:43:36 +01:00
Lukas Wirth
e23bfafb32 Fix assert_never invoking assert_always 2021-01-14 22:43:09 +01:00
Lukas Wirth
f51457a643 Group file source edits by FileId 2021-01-14 18:35:22 +01:00
bors[bot]
f88f3d6885
Merge #7271
7271: prepare to publish el libro de arena r=matklad a=matklad

bors r+
🤖

Co-authored-by: Aleksey Kladov <aleksey.kladov@gmail.com>
2021-01-14 16:06:30 +00:00
Aleksey Kladov
4c4e54ac8a prepare to publish el libro de arena 2021-01-14 19:06:02 +03:00
bors[bot]
540edee3cd
Merge #7270
7270: Introduce more appropriate assertion mechanism r=matklad a=matklad

bors r+
🤖

Co-authored-by: Aleksey Kladov <aleksey.kladov@gmail.com>
2021-01-14 15:27:20 +00:00
Aleksey Kladov
8dc68ecdfc Introduce more appropriate assertion mechanism
rust-analyzer is a long-running program, so we *should* handle assertion
failures.

See also https://www.sqlite.org/assert.html.
2021-01-14 18:25:19 +03:00
bors[bot]
aeacaeed4e
Merge #7269
7269: Fix server path comparison r=lnicola a=lnicola



Co-authored-by: Laurențiu Nicola <lnicola@dend.ro>
2021-01-14 13:40:06 +00:00