Commit graph

1428 commits

Author SHA1 Message Date
bors[bot]
95c0c8f398 Merge #247
247: Hir r=matklad a=matklad

This doesn't achive anything new, just a big refactoring. 

The main change is that Descriptors are now called `hir`, and live in a separate crate.

Co-authored-by: Aleksey Kladov <aleksey.kladov@gmail.com>
2018-11-28 01:10:58 +00:00
Aleksey Kladov
59e29aef63 Move hir to a separate crate 2018-11-28 04:09:44 +03:00
Aleksey Kladov
0e4b710af8 introduce hir crate 2018-11-28 03:42:26 +03:00
Aleksey Kladov
f66e5b6e6b move ids to HIR 2018-11-28 03:31:50 +03:00
Aleksey Kladov
11168c464c move db basics to ra_db
This should allow to move hir to a separate crate
2018-11-28 03:25:20 +03:00
Aleksey Kladov
b2de95879a generalize location interner 2018-11-28 02:49:28 +03:00
Aleksey Kladov
ec45dfea1e rename file_syntax -> source_file 2018-11-28 02:25:03 +03:00
Aleksey Kladov
65c064b2a9 introduce SymbolsDatabase 2018-11-28 02:22:25 +03:00
Aleksey Kladov
201aa7ea2a remove syntax ptr 2018-11-28 02:15:21 +03:00
Aleksey Kladov
c2abd17f57 Use ItemPtr for id 2018-11-28 02:13:52 +03:00
Aleksey Kladov
3922503205 ItemId based module source 2018-11-28 02:09:09 +03:00
Aleksey Kladov
9027a21f9a Introduce SourceItemId 2018-11-28 01:53:54 +03:00
Aleksey Kladov
00df339c41 rename 2018-11-28 01:48:43 +03:00
Aleksey Kladov
5e7f4202cf Move FileItems up 2018-11-28 01:45:36 +03:00
Aleksey Kladov
b9100d769a Remove unused dead code 2018-11-28 01:41:10 +03:00
Aleksey Kladov
4c9933c016 check_canceled is a method 2018-11-28 01:38:39 +03:00
Aleksey Kladov
806ea03b64 drop descriptor suffix, use hir:: instead 2018-11-28 01:22:17 +03:00
Aleksey Kladov
36b1d20c16 rename ModuleDescriptor -> Module 2018-11-28 01:19:55 +03:00
Aleksey Kladov
16f67ee384 move resolve_local to Scopes 2018-11-28 01:11:29 +03:00
Aleksey Kladov
7207eef716 rename FnDescriptior -> FnSignatureInfo 2018-11-27 23:48:24 +03:00
Aleksey Kladov
67de38ec7d move resolve_local_scope 2018-11-27 23:40:23 +03:00
Aleksey Kladov
93fae08261 make module module private 2018-11-27 23:35:53 +03:00
Aleksey Kladov
b7049ea543 move query definitions 2018-11-27 23:33:36 +03:00
Aleksey Kladov
90bc832b22 remove underscores 2018-11-27 23:05:33 +03:00
Aleksey Kladov
f14902f67b move hir db 2018-11-27 23:03:08 +03:00
Aleksey Kladov
109a7f3717 itroduce FunctionDescriptor 2018-11-27 22:58:09 +03:00
Aleksey Kladov
f4d0cb64fc rename descriptorsdb -> hirdb 2018-11-27 21:58:44 +03:00
Aleksey Kladov
d659b7a2f0 start descriptors -> hir rename 2018-11-27 21:45:42 +03:00
bors[bot]
9f08341aa4 Merge #246
246: Resolve path r=matklad a=matklad



Co-authored-by: Aleksey Kladov <aleksey.kladov@gmail.com>
2018-11-27 16:56:38 +00:00
Aleksey Kladov
192e2bbb0e resolve_path works with DefIds 2018-11-27 19:56:03 +03:00
Aleksey Kladov
aa7fd563a4 use ctry 2018-11-27 18:45:16 +03:00
Aleksey Kladov
f4860870da scope-based resolve path 2018-11-27 18:25:35 +03:00
Aleksey Kladov
68f66e0f44 add db to resolve_path 2018-11-27 18:25:35 +03:00
Aleksey Kladov
5b0e347f89 Make resolve_path cancelable 2018-11-27 18:25:35 +03:00
Aleksey Kladov
6bb06addf8 don't use volatile queries
"volatile" means "changes every time". That is, all transitive
rev-deps of volatile queries will be executed every time. We actually
need "dependencies".
2018-11-27 17:39:58 +03:00
bors[bot]
0bc6f5802f Merge #245
245: File items r=matklad a=matklad



Co-authored-by: Aleksey Kladov <aleksey.kladov@gmail.com>
2018-11-27 12:03:14 +00:00
Aleksey Kladov
10f4d4b74c Make nameresolution resilient to reparsing
We now store item id's instead of local syntax ptrs, and item ids
don't change if you type inside a single function.
2018-11-27 15:02:06 +03:00
Aleksey Kladov
4d87799a4a implement file_items 2018-11-27 15:01:52 +03:00
Aleksey Kladov
16cdd126b6 add file items query 2018-11-27 15:01:52 +03:00
bors[bot]
8e37208040 Merge #244
244: Switch to id-arena r=matklad a=matklad



Co-authored-by: Aleksey Kladov <aleksey.kladov@gmail.com>
2018-11-27 11:23:29 +00:00
Aleksey Kladov
ed023929d5 Switch to id-arena 2018-11-27 14:23:06 +03:00
Aleksey Kladov
7adbea9c42 fix npm problems 2018-11-27 12:29:09 +03:00
Aleksey Kladov
6b1f30ade9 hack around nested libraries 2018-11-27 00:12:43 +03:00
bors[bot]
8a572043e7 Merge #242
242: Codify Arena pattern r=matklad a=matklad

bors r+

Co-authored-by: Aleksey Kladov <aleksey.kladov@gmail.com>
2018-11-25 16:03:13 +00:00
Aleksey Kladov
b6fcd46278 Codify Arena pattern 2018-11-25 19:02:14 +03:00
bors[bot]
8f5fb83413 Merge #241
241: switch back to the latest beta r=matklad a=matklad



Co-authored-by: Aleksey Kladov <aleksey.kladov@gmail.com>
2018-11-24 18:53:24 +00:00
Aleksey Kladov
ebc4e75253 switch back to the latest beta 2018-11-24 21:52:49 +03:00
bors[bot]
4bff9ce59a Merge #239
239: add test loggin API to db r=matklad a=matklad



Co-authored-by: Aleksey Kladov <aleksey.kladov@gmail.com>
2018-11-21 17:44:43 +00:00
Aleksey Kladov
955d2eea45 add test loggin API to db 2018-11-21 20:44:05 +03:00
bors[bot]
1f36cef7d3 Merge #238
238: Use `:` as a trigger character for completion r=matklad a=matklad

Note that VSCode asks for completion after *first* `:` as well:

    use crate:

we use hacks to protect against that, and to give completions only
after the second `:`.

Co-authored-by: Aleksey Kladov <aleksey.kladov@gmail.com>
2018-11-21 16:07:14 +00:00