Commit Graph

2315 Commits

Author SHA1 Message Date
Aleksey Kladov
cd00158b1d wire sysroot into crate graph 2019-01-11 00:51:34 +03:00
Aleksey Kladov
e35374ec7c special case std 2019-01-11 00:51:34 +03:00
Aleksey Kladov
8852408bfb use arena for sysroot 2019-01-11 00:51:34 +03:00
Aleksey Kladov
66fba88534 split module 2019-01-11 00:51:34 +03:00
Aleksey Kladov
e8923713c5 add sysroot boilerplate 2019-01-11 00:51:34 +03:00
bors[bot]
b6bc55f542 Merge #490
490: dont depend on tools from lsp-server r=matklad a=matklad



Co-authored-by: Aleksey Kladov <aleksey.kladov@gmail.com>
2019-01-10 21:46:56 +00:00
Aleksey Kladov
4196b65f21 dont depend on tools from lsp-server 2019-01-11 00:46:32 +03:00
bors[bot]
9bee2937b4 Merge #463
463: Use name resolution for goto definition r=matklad a=flodiebold

This tries proper name resolution before falling back on the index.

@matklad There was currently no way of getting the location of a `DefId` from outside `ra_hir`. I added something, but it's probably not the best API, maybe you have a better idea?

Co-authored-by: Florian Diebold <flodiebold@gmail.com>
2019-01-10 20:44:21 +00:00
Florian Diebold
a6590ce231 Use name resolution for goto definition 2019-01-10 21:32:54 +01:00
bors[bot]
dc2a8d5acc Merge #470
470: Type inference for enum variants r=flodiebold a=marcusklaas

Opened a new PR instead of https://github.com/rust-analyzer/rust-analyzer/pull/461. Totally botched that one.

I think I resolved all the issues mentioned there.

Co-authored-by: Marcus Klaas de Vries <mail@marcusklaas.nl>
2019-01-10 19:12:40 +00:00
bors[bot]
a95536301c Merge #488
488: switch CargoWorkspace to arena r=matklad a=matklad



Co-authored-by: Aleksey Kladov <aleksey.kladov@gmail.com>
2019-01-10 18:59:40 +00:00
bors[bot]
a3e747f5eb Merge #487
487: dont complete () if they are already there r=matklad a=matklad



Co-authored-by: Aleksey Kladov <aleksey.kladov@gmail.com>
2019-01-10 18:38:46 +00:00
Aleksey Kladov
faa1d35cbc dont complete () if they are already there 2019-01-10 21:38:04 +03:00
bors[bot]
f96312b836 Merge #486
486: Fix handling of where clauses in tuple structs r=matklad a=DJMcNab

Originally reported by @max-frai on discord.

As I was writing this, I was wondering if there's any way we can compare our test suite against libsyntax (i.e. check that it similarly fails/succeeds). Any ideas?

Co-authored-by: DJMcNab <36049421+djmcnab@users.noreply.github.com>
2019-01-10 18:27:38 +00:00
Aleksey Kladov
cbeaa541aa switch CargoWorkspace to arena 2019-01-10 21:26:43 +03:00
DJMcNab
afdb569902 Fix handling of where clauses in tuple structs 2019-01-10 18:21:01 +00:00
bors[bot]
1a7a68de16 Merge #483
483: better change visibility assist r=matklad a=matklad



Co-authored-by: Aleksey Kladov <aleksey.kladov@gmail.com>
2019-01-10 16:19:28 +00:00
Aleksey Kladov
f83485839b better change visibility assist
* don't add visibility before #derive
* suggest changing pub(crate) into pub
2019-01-10 19:18:15 +03:00
bors[bot]
acd90bc33b Merge #482
482: fix code duplication r=matklad a=matklad



Co-authored-by: Aleksey Kladov <aleksey.kladov@gmail.com>
2019-01-10 15:32:34 +00:00
Aleksey Kladov
a0c978cd0c fix code duplication 2019-01-10 18:32:02 +03:00
Aleksey Kladov
3ca76c2039 move join_lines to a separate module 2019-01-10 17:50:49 +03:00
bors[bot]
3990f93921 Merge #481
481: introduce marking infrastructure for maintainable tests r=matklad a=matklad



Co-authored-by: Aleksey Kladov <aleksey.kladov@gmail.com>
2019-01-10 13:47:38 +00:00
Aleksey Kladov
32fa084c07 introduce marking infrastructure for maintainable tests
This also fixes a particular edge case in name resolution.
2019-01-10 16:45:09 +03:00
Marcus Klaas de Vries
e78286c8e8 Save variant names in EnumData to reduce needless queries
We already have their names when anyway, and when in all (current)
situations where we're interested in an Enum's variants, we want
their names.
2019-01-10 14:43:01 +01:00
Marcus Klaas de Vries
978de5cf8b Implement type inference for enum variants 2019-01-10 14:32:56 +01:00
bors[bot]
aca14c591f Merge #475
475: Show types of fields in completion r=matklad a=matklad

![image](https://user-images.githubusercontent.com/1711539/50910524-0f146200-143f-11e9-84d6-0ba80761cd89.png)

r? @flodiebold 


Co-authored-by: Aleksey Kladov <aleksey.kladov@gmail.com>
2019-01-10 13:07:19 +00:00
bors[bot]
aef93c918e Merge #478
478: WIP: implement cancelation via unwinding r=matklad a=matklad

This uses https://github.com/salsa-rs/salsa/pull/107 to implement cancellation.

Now we can get rid of `Cancelable` wrapper from everywhere except the top-level analyzer library. 



Co-authored-by: Aleksey Kladov <aleksey.kladov@gmail.com>
2019-01-10 12:51:58 +00:00
bors[bot]
9225033cdf Merge #477
477: Extend selection for list items r=matklad a=hban

First PR, criticism welcome!

There are a few things I'm not so sure about:
* There is now a not-so-small list of "list-like kinds" in extend selection source which maybe should belong somewhere else.
* Preferring left comma doesn't seem right IMO for one reason - trailing commas are usually on the right. For example, when array values are broken across multiple lines extending selected value will cover right trailing comma (because it's the only comma on the same line), but when all values are on the same line it will pick left comma. Anyway, currently with this PR it will pick always extend to left comma when possible since that's what issue specified 😃.

Closes: #444 

Co-authored-by: Hrvoje Ban <hban@users.noreply.github.com>
2019-01-10 12:20:00 +00:00
Aleksey Kladov
495a7ea9f7 upgrade salsa 2019-01-10 13:40:43 +03:00
Aleksey Kladov
86bc898a2f explain why we use resume_unwind 2019-01-10 13:06:42 +03:00
Aleksey Kladov
f72c031eb9 implement RefUnwindSafe 2019-01-10 13:04:04 +03:00
Aleksey Kladov
64455ad701 use unwinding for cancelation 2019-01-10 12:20:32 +03:00
Hrvoje Ban
8384b2cc38 Extend selection for list items 2019-01-09 20:51:19 +01:00
Aleksey Kladov
cf20ecae9f unwind on cancel 2019-01-09 22:51:05 +03:00
Aleksey Kladov
56b2138d82 show field types in completion 2019-01-09 19:40:11 +03:00
Aleksey Kladov
ddf2a8a948 add completion detail 2019-01-09 19:40:11 +03:00
bors[bot]
c2b8aa1ce5 Merge #476
476: nicer trailing comma handling in types r=matklad a=matklad



Co-authored-by: Aleksey Kladov <aleksey.kladov@gmail.com>
2019-01-09 16:15:32 +00:00
Aleksey Kladov
e8815b614e nicer trailing comma handling in types 2019-01-09 19:14:21 +03:00
bors[bot]
ecfa68a3f5 Merge #474
474: Fix rev to deleted branch r=matklad a=weiznich



Co-authored-by: Georg Semmler <georg_semmler_05@web.de>
2019-01-09 15:42:38 +00:00
Georg Semmler
e7bf5dc940
Fix rev to deleted branch 2019-01-09 16:33:45 +01:00
bors[bot]
76b3985d70 Merge #473
473: Partial typo fix r=matklad a=marcusklaas

This fixes some typos. Mostly in documentation, but also some code is affected (`defenition` was used in a few method names).

Co-authored-by: Marcus Klaas de Vries <mail@marcusklaas.nl>
2019-01-09 12:20:05 +00:00
Marcus Klaas de Vries
0b8fbb4fad Fix typos in ARCHITECTURE.md and a number of crates
specifically: gen_lsp_server, ra_arena, ra_cli, ra_db, ra_hir
2019-01-09 01:17:09 +01:00
bors[bot]
c0f48f9eb0 Merge #472
472: Stupidly simple idea to make DefIds more stable r=matklad a=matklad



Co-authored-by: Aleksey Kladov <aleksey.kladov@gmail.com>
2019-01-08 22:59:42 +00:00
Aleksey Kladov
d18d8399f5 fuzz-lockfile 2019-01-09 01:58:25 +03:00
Aleksey Kladov
5609989368 more stable DefIds via bfs tree walking 2019-01-09 01:57:40 +03:00
Marcus Klaas de Vries
f8261d611a Fix typo defenition -> definition 2019-01-08 23:38:51 +01:00
Aleksey Kladov
2dc85619be one more invalidation test 2019-01-09 00:54:06 +03:00
Aleksey Kladov
bcb6fabd15 fix test naming 2019-01-09 00:49:21 +03:00
Aleksey Kladov
8f93e7b9a4 remove duplication in tests 2019-01-09 00:48:54 +03:00
bors[bot]
46f74e33ca Merge #471
471: rename crates to match reality  r=matklad a=matklad



Co-authored-by: Aleksey Kladov <aleksey.kladov@gmail.com>
2019-01-08 19:48:48 +00:00