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
Jonas Schievink
b5fd02d93c
Generate ModItem via macro
2020-06-24 16:53:56 +02:00
Jonas Schievink
20ff1cdcfb
Address more comments
2020-06-24 16:53:56 +02:00
Jonas Schievink
a0ad457575
if let else -> match
2020-06-24 16:53:56 +02:00
Jonas Schievink
ae7a296c85
Unify and test attribute handling
2020-06-24 16:53:56 +02:00
Jonas Schievink
689e147c9d
Collect inner items in expression macros
2020-06-24 16:53:54 +02:00
Jonas Schievink
5a81427304
Measure ItemTree query memory usage
2020-06-24 16:53:16 +02:00
Jonas Schievink
ffa0435050
Make generics and attr queries use ItemTree
...
Now it's fast
2020-06-24 16:53:16 +02:00
Jonas Schievink
19586bc5c6
Record HirFileId's in profiler
2020-06-24 16:53:16 +02:00
Jonas Schievink
1fbe21a545
Make remaining item data queries use item tree
2020-06-24 16:53:16 +02:00
Jonas Schievink
4b03b39d5b
draw the rest of the owl
2020-06-24 16:53:16 +02:00
Jonas Schievink
b94caeb88b
ItemTree: Make clonable and add AST access
2020-06-24 16:53:16 +02:00
Jonas Schievink
c12f7b610b
Lower generics
2020-06-24 16:53:16 +02:00
Jonas Schievink
864b650f92
ItemTree: use a newtyped ID
2020-06-24 16:53:16 +02:00
Jonas Schievink
278556f9fe
Move ItemTree lowering into its own module
2020-06-24 16:53:16 +02:00
Jonas Schievink
f9e5ba7d40
Remove now-broken incremental test
...
The ItemTree tracks impl and trait items, so the CrateDefMap now needs
recomputing when those change
2020-06-24 16:53:16 +02:00
Jonas Schievink
0e2602f75e
Remove raw item query
2020-06-24 16:53:16 +02:00
Jonas Schievink
7054e89d18
Fix test
2020-06-24 16:53:16 +02:00
Jonas Schievink
9d24412929
Move collector
2020-06-24 16:53:14 +02:00
Jonas Schievink
f9417bcf49
Draw the rest of the owl
2020-06-24 16:52:37 +02:00
Jonas Schievink
e24de2007f
collector changes WIP
2020-06-24 16:52:37 +02:00
Jonas Schievink
696a7a5a41
lower traits
2020-06-24 16:52:37 +02:00
Jonas Schievink
34bc80650b
Hook up query, add impls, lower moar
2020-06-24 16:52:37 +02:00
Aleksey Kladov
1d75d11d6c
Start item tree
2020-06-24 16:52:37 +02:00
Aleksey Kladov
e6c61d5072
Cleanup project.json deserialization
2020-06-24 16:16:52 +02:00
Aleksey Kladov
a07cad16ab
Rename json_project -> project_json
2020-06-24 16:03:24 +02:00
bors[bot]
97c4d06258
Merge #5015 #5027 #5028
...
5015: Account for updated module ids when determining whether a resolution is changed r=matklad a=Nashenas88
Fixes #4943
5027: Make Debug less verbose for VfsPath and use Display in analysis-stats r=matklad a=lnicola
5028: Remove namedExports config r=matklad a=lnicola
Fixes a warning:
```
(!) Plugin commonjs: The namedExports option from "@rollup/plugin-commonjs" is deprecated. Named exports are now handled automatically.
```
Co-authored-by: Paul Daniel Faria <Nashenas88@users.noreply.github.com>
Co-authored-by: Laurențiu Nicola <lnicola@dend.ro>
2020-06-24 13:02:37 +00:00
Paul Daniel Faria
43c6f6c039
Fix formatting issue with glob shadow test
2020-06-24 08:50:59 -04:00
Aleksey Kladov
154cb8243b
Be more explicit about absolute paths at various places
2020-06-24 14:39:34 +02:00
Paul Daniel Faria
dfd79907b8
Use a macro in push_res to simplify code, simplify glob_shadowed_def assertion
2020-06-24 08:20:41 -04:00
Laurențiu Nicola
c15c22139f
Make Debug less verbose for VfsPath and use Display in analysis-stats
2020-06-24 14:07:03 +03:00
bors[bot]
dff62def2e
Merge #5023
...
5023: Fix string literal inference in match r=flodiebold a=lnicola
Fixes #5020
r? @flodiebold
Co-authored-by: Laurențiu Nicola <lnicola@dend.ro>
2020-06-24 10:40:47 +00:00
bors[bot]
414b731e7d
Merge #5024 #5026
...
5024: Simplify r=matklad a=matklad
bors r+
🤖
5026: Disable file watching when running slow tests r=matklad a=matklad
This should rid us of the intermittent test failure
https://github.com/rust-analyzer/rust-analyzer/pull/5017#issuecomment-648717983
bors r+
🤖
Co-authored-by: Aleksey Kladov <aleksey.kladov@gmail.com>
2020-06-24 10:31:20 +00:00
Aleksey Kladov
0a2b6087ec
Simplify
2020-06-24 12:30:54 +02:00
Aleksey Kladov
a0b76161ab
Disable file watching when running slow tests
...
This should rid us of the intermittent test failure
https://github.com/rust-analyzer/rust-analyzer/pull/5017#issuecomment-648717983
2020-06-24 12:27:13 +02:00
Laurențiu Nicola
2bd9f0f020
Fix string literal inference in match
2020-06-24 13:20:06 +03:00
Aleksey Kladov
5e7a1a1203
Simplify
2020-06-24 12:01:17 +02:00
Aleksey Kladov
04fe512f0d
Simplify
2020-06-24 11:51:45 +02:00
Aleksey Kladov
9d64525daa
Simplify
2020-06-24 11:50:53 +02:00
Aleksey Kladov
d4a493078a
Simplify
2020-06-24 11:48:44 +02:00
Aleksey Kladov
c749fe223b
Remove duplication
2020-06-24 11:31:30 +02:00
Aleksey Kladov
c6795fb83a
More consistent usage of fixtures
2020-06-24 11:29:43 +02:00