Commit Graph

14929 Commits

Author SHA1 Message Date
bors[bot]
0791c8e44c
Merge #7336
7336: Rename `CrateDefMap` to `DefMap` r=matklad a=jonas-schievink

I propose handling local items by computing a `DefMap` for every block expression, using the regular (early) name resolution algorithm. The result of that will be a `DefMap` that has a reference to the parent `DefMap`, which is either the one computed for the containing block expression, or the crate's root `DefMap`. Name resolution will fall back to a name in the parent `DefMap` if it cannot be resolved in the inner block.

The `DefMap`s computed for block expressions will go through a separate query that can be garbage-collected much more aggressively, since these `DefMap`s should be cheap to compute and are never part of a crate's public API.

The first step towards that is to make `CrateDefMap` not specific to crates anymore, hence this rename (if this plans sounds reasonable).

cc https://github.com/rust-analyzer/rust-analyzer/issues/7325 and https://github.com/rust-analyzer/rust-analyzer/issues/1165

Co-authored-by: Jonas Schievink <jonasschievink@gmail.com>
2021-01-18 20:12:11 +00:00
Lukas Wirth
e31420fbe2 Remove obsolete RangeInfo usage in references 2021-01-18 21:10:01 +01:00
bors[bot]
8164e2ea31
Merge #7339
7339: Delete optional arg for inline attr and add doc alias attr completion r=lnicola a=bnjjj

close #7167

Co-authored-by: Benjamin Coenen <5719034+bnjjj@users.noreply.github.com>
2021-01-18 19:54:40 +00:00
Benjamin Coenen
52bce6bf5d Delete optional arg for inline attr and add doc alias attr completion #7167
Signed-off-by: Benjamin Coenen <5719034+bnjjj@users.noreply.github.com>
2021-01-18 20:50:45 +01:00
bors[bot]
342bf41022
Merge #7297 #7338
7297: Propose trait associated items and autoimport traits on completion r=matklad a=SomeoneToIgnore

![trait_imports](https://user-images.githubusercontent.com/2690773/104819998-6faeb480-583a-11eb-8b45-b7351b51b90e.gif)

Closes #7248

7338: Parse `impl const Trait` r=Veykril a=Veykril

Closes #7313

bors r+

Co-authored-by: Kirill Bulatov <mail4score@gmail.com>
Co-authored-by: Lukas Wirth <lukastw97@gmail.com>
2021-01-18 19:40:11 +00:00
Benjamin Coenen
35d9944c17 Add assist: add lifetime to type #7200
Signed-off-by: Benjamin Coenen <5719034+bnjjj@users.noreply.github.com>
2021-01-18 20:38:52 +01:00
Kirill Bulatov
f01cfe9114 Small token fix
Co-authored-by: Aleksey Kladov <aleksey.kladov@gmail.com>
2021-01-18 21:30:04 +02:00
bors[bot]
cb0d77ab3c
Merge #7337
7337: Remove obsolete RangeInfo usage in rename r=Veykril a=Veykril

bors r+

Co-authored-by: Lukas Wirth <lukastw97@gmail.com>
2021-01-18 19:29:09 +00:00
Lukas Wirth
21a6384ce6 Remove obsolete RangeInfo usage in rename 2021-01-18 20:28:20 +01:00
Jonas Schievink
57a82fb05b Rename CrateDefMap to DefMap 2021-01-18 20:18:05 +01:00
Lukas Wirth
b26002410b Parse impl const Trait 2021-01-18 20:18:02 +01:00
bors[bot]
39282ec419
Merge #7332
7332: Rename reference search uses ide_db::search directly r=matklad a=Veykril

https://github.com/rust-analyzer/rust-analyzer/pull/7251#discussion_r556644241

Co-authored-by: Lukas Wirth <lukastw97@gmail.com>
2021-01-18 19:00:04 +00:00
bors[bot]
08efb8a943
Merge #7334
7334: Add back jemalloc support r=jonas-schievink a=jonas-schievink

jemalloc is useful due to its introspection API, which allows obtaining quick and accurate memory usage statistics without running into `mallinfo`'s limitations.

Co-authored-by: Jonas Schievink <jonasschievink@gmail.com>
2021-01-18 18:40:14 +00:00
Jonas Schievink
9b5fa1c61a Add back jemalloc support 2021-01-18 19:39:46 +01:00
bors[bot]
6764d790ac
Merge #7333
7333: cargo update r=kjeremy a=kjeremy

Update test_serialize_proc_macro for new serde version.

I'm assuming the test update is legitimate but I would like someone to double check since I'm not familiar with this area.

Co-authored-by: kjeremy <kjeremy@gmail.com>
2021-01-18 18:24:47 +00:00
kjeremy
a8b984185b cargo update
Update test_serialize_proc_macro for new serde version
2021-01-18 13:13:24 -05:00
Lukas Wirth
6015a66cae Make rename reference search use ide_db::search directly 2021-01-18 18:57:59 +01:00
bors[bot]
a1c72451bb
Merge #7331
7331: shrink_to_fit `TokenMap`'s backing storage r=jonas-schievink a=jonas-schievink

Reduces `HygieneFrameQuery`'s memory usage by like 10 MB or so

bors r+

Co-authored-by: Jonas Schievink <jonasschievink@gmail.com>
2021-01-18 17:49:52 +00:00
bors[bot]
fcc109e890
Merge #7326
7326: Use `is_ident` when converting Path to an Identifier r=edwin0cheng a=kevaundray



Co-authored-by: Kevaundray Wedderburn <kevtheappdev@gmail.com>
2021-01-18 17:40:11 +00:00
Jonas Schievink
2d799cf5e0 shrink_to_fit TokenMap's backing storage 2021-01-18 18:40:06 +01:00
bors[bot]
9210f480ac
Merge #7329
7329: Add test for reference search on self declaration param r=Veykril a=Veykril

Closes #7316

bors r+

Co-authored-by: Lukas Wirth <lukastw97@gmail.com>
2021-01-18 17:24:48 +00:00
Lukas Wirth
22b9b9abe7 Add test for reference search on self declaration param 2021-01-18 18:21:40 +01:00
bors[bot]
6105dbfc2e
Merge #7327
7327: Remove `item_tree::Expr` r=jonas-schievink a=jonas-schievink

It's empty and unused

bors r+

Co-authored-by: Jonas Schievink <jonasschievink@gmail.com>
2021-01-18 17:11:38 +00:00
Jonas Schievink
6f4f285f37 Remove item_tree::Expr
It's empty and unused
2021-01-18 18:05:40 +01:00
Kevaundray Wedderburn
da104bb0f5 cargo fmt 2021-01-18 16:58:29 +00:00
bors[bot]
c72d3a7c09
Merge #7324
7324: Add `MacroType` r=jonas-schievink a=jonas-schievink

Adds syntax-level support for macros in type position.

Based on https://github.com/rust-analyzer/rust-analyzer/pull/7291 due to the ungrammar update

Co-authored-by: Jonas Schievink <jonasschievink@gmail.com>
2021-01-18 16:57:17 +00:00
Jonas Schievink
872bf09381 Add MacroType syntax 2021-01-18 17:56:35 +01:00
Kevaundray Wedderburn
725c20e8c5 use is_ident method 2021-01-18 16:54:07 +00:00
bors[bot]
9daba961f2
Merge #7291
7291: Wrap remaining self/super/crate in Name{Ref} r=matklad a=Veykril

That should be the remaining special casing for `self` 🎉 

Co-authored-by: Lukas Wirth <lukastw97@gmail.com>
2021-01-18 16:13:06 +00:00
bors[bot]
cc58459ee3
Merge #7323
7323: Minor r=matklad a=matklad

bors r+
🤖

Co-authored-by: Aleksey Kladov <aleksey.kladov@gmail.com>
2021-01-18 13:11:37 +00:00
Aleksey Kladov
738cf7d495 Minor 2021-01-18 16:09:44 +03:00
bors[bot]
1b5405620f
Merge #7322
7322: Use assert_never properly r=matklad a=matklad

bors r+
🤖

Co-authored-by: Aleksey Kladov <aleksey.kladov@gmail.com>
2021-01-18 12:58:54 +00:00
Aleksey Kladov
a60168e674 Use assert_never properly 2021-01-18 15:58:10 +03:00
bors[bot]
1f53026997
Merge #7320
7320: Enable serde_json unbounded_depth feature r=lnicola a=lnicola

bors r+

Co-authored-by: Laurențiu Nicola <lnicola@dend.ro>
2021-01-18 12:05:39 +00:00
Laurențiu Nicola
d6b3dc1a6f Enable serde_json unbounded_depth feature 2021-01-18 14:04:20 +02:00
bors[bot]
0e760a6ad2
Merge #7319
7319: Avoid blocking the main loop when editing Cargo.toml r=matklad a=matklad

bors r+
🤖

Co-authored-by: Aleksey Kladov <aleksey.kladov@gmail.com>
2021-01-18 11:56:20 +00:00
Aleksey Kladov
add87f5424 Avoid blocking the main loop when editing Cargo.toml
I've noticed a bunch of "main loop too long" warnings in console when
typing in Cargo.toml. Profiling showed that the culprit is `rustc
--print cfg` call.

I moved it to the background project loading phase, where it belongs.
This highlighted a problem: we generally use single `cfg`, while it
really should be per crate.
2021-01-18 14:52:12 +03:00
bors[bot]
e1190bac64
Merge #7318
7318: Add profile call r=matklad a=matklad

bors r+
🤖

Co-authored-by: Aleksey Kladov <aleksey.kladov@gmail.com>
2021-01-18 11:02:19 +00:00
Aleksey Kladov
cc963d2b11 Add profile call 2021-01-18 14:01:52 +03:00
bors[bot]
5e6e890947
Merge #7317
7317: Add profile call r=matklad a=matklad

bors r+
🤖

Co-authored-by: Aleksey Kladov <aleksey.kladov@gmail.com>
2021-01-18 10:30:43 +00:00
Aleksey Kladov
e13065b8ac Add profile call 2021-01-18 13:30:12 +03:00
bors[bot]
9eb37fbdeb
Merge #7292
7292: Swap assert_eq_text\!(expected, actual) r=matklad a=u5surf

Fixes #7283 

Swap assert_eq_text parameters in the order (expected, actual)

Co-authored-by: yugo-horie <u5.horie@gmail.com>
2021-01-18 10:12:54 +00:00
bors[bot]
fde4a860ae
Merge #7314
7314: ⬆️ rowan r=matklad a=matklad

bors r+
🤖

Co-authored-by: Aleksey Kladov <aleksey.kladov@gmail.com>
2021-01-17 17:57:03 +00:00
Aleksey Kladov
1b6b5c9f28 ⬆️ rowan 2021-01-17 20:56:37 +03:00
bors[bot]
fea81d4e52
Merge #7312
7312: ⬆️ rowan r=matklad a=matklad

bors r+
🤖

Co-authored-by: Aleksey Kladov <aleksey.kladov@gmail.com>
2021-01-17 15:28:29 +00:00
Aleksey Kladov
33cce3d114 ⬆️ rowan
https://github.com/rust-analyzer/rowan/pull/86, which speeds up things
visibly
2021-01-17 18:27:29 +03:00
bors[bot]
b01157aee3
Merge #7311
7311: Build dist-aarch64-unknown-linux-gnu releases r=lnicola a=lnicola

Closes #4746

Co-authored-by: Laurențiu Nicola <lnicola@dend.ro>
2021-01-17 14:50:08 +00:00
Laurențiu Nicola
a19728604f Download aarch64-unknown-linux-gnu from GitHub 2021-01-17 16:35:57 +02:00
Laurențiu Nicola
884f758f7b Build dist-aarch64-unknown-linux-gnu releases 2021-01-17 16:31:38 +02:00
Benjamin Coenen
557cf513fa Add assist: add lifetime to type #7200
Signed-off-by: Benjamin Coenen <5719034+bnjjj@users.noreply.github.com>
2021-01-17 15:15:23 +01:00