Commit Graph

1674 Commits

Author SHA1 Message Date
Aleksey Kladov
09b5dc8e02 drop obsolete comment 2019-01-27 22:57:18 +03:00
Aleksey Kladov
7801f6b50f automatically collect garbage 2019-01-27 22:57:18 +03:00
Marcus Klaas de Vries
6249989e6c Process second review 2019-01-27 17:59:21 +01:00
Marcus Klaas de Vries
f6eb44cd9e Use type information from the turbofish 2019-01-27 17:59:21 +01:00
Marcus Klaas de Vries
0da1e8b2f8 Add a FnSig to Ty::FnDef 2019-01-27 17:59:21 +01:00
Marcus Klaas de Vries
089b1c57c1 Address some issues flagged in review 2019-01-27 17:59:21 +01:00
Marcus Klaas de Vries
04748a0f16 Add missing ty test snapshot 2019-01-27 17:59:21 +01:00
Marcus Klaas de Vries
aa06893a14 Add type params to FnSignature 2019-01-27 17:59:21 +01:00
Marcus Klaas de Vries
67e40e431a Initial implementation of generics for method calls 2019-01-27 17:59:21 +01:00
Marcus Klaas de Vries
3bd47c0285 First attempt at generic type inference for fns 2019-01-27 17:59:21 +01:00
bors[bot]
3f4f50baaa Merge #690
690: Fix module resolution for non standard filenames r=matklad a=regiontog

fixes #668

Co-authored-by: Erlend Tobiassen <erlend.tobiassen@gmail.com>
2019-01-27 15:55:47 +00:00
Erlend Tobiassen
b775fa285c
Revert parts of "Test non standard crate root"
Prefer cursor position over file_map
2019-01-27 16:32:31 +01:00
DJMcNab
137b1ccb71 Add a test for inner attributes on extern blocks 2019-01-27 15:20:36 +00:00
bors[bot]
b2b62b9579 Merge #691
691: remove dead code r=matklad a=matklad



Co-authored-by: Aleksey Kladov <aleksey.kladov@gmail.com>
2019-01-27 15:08:23 +00:00
Aleksey Kladov
154bce1864 remove dead code 2019-01-27 18:07:45 +03:00
DJMcNab
73b075c556 Correctly parse inner attributes of impl blocks 2019-01-27 14:55:03 +00:00
Erlend Tobiassen
b149882d19
Remove dbg!(...) 2019-01-27 15:44:59 +01:00
Erlend Tobiassen
08e12f974c
Fix bad rebase and rustfmt 2019-01-27 15:37:43 +01:00
Erlend Tobiassen
e2e1f4ceca
Typos 2019-01-27 15:19:42 +01:00
Erlend Tobiassen
5052bf9889
Update test to use correct paths 2019-01-27 15:19:41 +01:00
Erlend Tobiassen
c5e6db16b1
fix #668 2019-01-27 15:19:38 +01:00
Erlend Tobiassen
683e5e64f4
Test non standard crate root 2019-01-27 15:15:56 +01:00
bors[bot]
964086e0d4 Merge #685
685: Support attributes on let statements r=matklad a=DJMcNab

Fix #677.

Co-authored-by: DJMcNab <36049421+djmcnab@users.noreply.github.com>
2019-01-27 09:04:02 +00:00
DJMcNab
4d35cc3875 Stop using let_stmt twice 2019-01-27 09:00:57 +00:00
bors[bot]
ffcf618842 Merge #662
662: Preserve indentation in doc comments r=matklad a=kjeremy

Fixes #502 

Co-authored-by: Jeremy Kolb <kjeremy@gmail.com>
2019-01-27 08:21:04 +00:00
bors[bot]
2577a65684 Merge #687
687: fix verificatio on ci r=matklad a=matklad



Co-authored-by: Aleksey Kladov <aleksey.kladov@gmail.com>
2019-01-26 23:35:49 +00:00
Aleksey Kladov
7177fffd7b fix verification on CI
remove `--verify` flag from the binaries: we have tests for this!
2019-01-27 02:30:54 +03:00
Florian Diebold
94bbb2418a Add marks 2019-01-26 23:59:11 +01:00
Florian Diebold
77f92674f9 Handle cycles in type vars
This might be the cause of #587.
2019-01-26 23:48:01 +01:00
DJMcNab
7055d43c3a Make attrs be a child of the let statement 2019-01-26 22:02:23 +00:00
bors[bot]
e40d8d4032 Merge #683
683: fix AST for if expressions r=matklad a=matklad



Co-authored-by: Aleksey Kladov <aleksey.kladov@gmail.com>
2019-01-26 21:41:27 +00:00
Aleksey Kladov
619af1e22c fix AST for if expressions
then is not always a block...
2019-01-27 00:37:11 +03:00
DJMcNab
55a3e21ac4 Support attributes on let statements 2019-01-26 21:35:03 +00:00
Aleksey Kladov
f78b092629 fix panic in call info
closes #317
closes #675
2019-01-27 00:34:18 +03:00
bors[bot]
691ffd2dcb Merge #681
681: Use the correct working directory for cargo metadata and rustfmt r=matklad a=DJMcNab

Fixes maybe #670. @bjorn3, is that true?

(Awkward wording due to GitHub's eager 'fixes' finding)

Co-authored-by: DJMcNab <36049421+djmcnab@users.noreply.github.com>
2019-01-26 21:18:52 +00:00
DJMcNab
9fbbb8f609 Don't use the reserved error code 2019-01-26 20:58:50 +00:00
DJMcNab
d9456c3989 Return an lsp error 2019-01-26 20:43:51 +00:00
Aleksey Kladov
a128075af9 remove Option<SourceFileItemId> hack 2019-01-26 23:27:01 +03:00
DJMcNab
632b0f2902 Use the correct working directory for cargo metadata and rustfmt 2019-01-26 20:16:15 +00:00
Aleksey Kladov
9c1a18a626 store syntax ptr in FileItems
we cache the tree in file_item query anyway
2019-01-26 22:48:04 +03:00
Aleksey Kladov
ae97a45c35 remove dead code 2019-01-26 22:43:07 +03:00
bors[bot]
2d337c88b0 Merge #680
680: Struct literals should not be a `BlockLike::Block` r=DJMcNab a=DJMcNab

Fix #674.

Co-authored-by: DJMcNab <36049421+djmcnab@users.noreply.github.com>
2019-01-26 19:17:48 +00:00
DJMcNab
7a76433c45 Struct literals should not be a BlockLike::Block 2019-01-26 18:45:29 +00:00
Aleksey Kladov
a1fb8efd7a ⬆️ salsa 2019-01-26 21:23:59 +03:00
Aleksey Kladov
6f862a6704 ⬆️ rowan
The new rowan uses arena allocator for red nodes which helps
slightly (5% on std completion test) with performance but should help
quite a bit with avoiding memory fragmentation.
2019-01-26 19:39:31 +03:00
Jeremy Kolb
a892067951 Make doc comments optional 2019-01-26 10:35:23 -05:00
bors[bot]
a8d32c4d1a Merge #671
671: Makre VFS slightly less super obscure r=vemoo a=matklad

I've decided to better understand what we do in VFS, and this turns out to be really hard. Jugling threads and channels is one of the most unfortunately arcane bits of rust...

I had some success though by flattenning the structure so that all channel & thread creation routines are on one screen. 

r? @vemoo 

Co-authored-by: Aleksey Kladov <aleksey.kladov@gmail.com>
2019-01-26 15:13:44 +00:00
Jeremy Kolb
e9e0ea0398 Do not unconditionally trim comments 2019-01-26 09:55:30 -05:00
Jeremy Kolb
8c08b6825e Preserve indentation in doc comments 2019-01-26 09:50:17 -05:00
Aleksey Kladov
9f16892b94 remove watcher ctx 2019-01-26 17:17:28 +03:00
Aleksey Kladov
bf98fc609e remove mutexes 2019-01-26 17:04:00 +03:00
Aleksey Kladov
012ea3fac6 handle all the reads on the "main" watcher thread 2019-01-26 17:01:58 +03:00
Aleksey Kladov
3ce531f95d cleanup: add result alias 2019-01-26 16:40:24 +03:00
Aleksey Kladov
390a20787e consolidate error handling 2019-01-26 16:28:04 +03:00
Aleksey Kladov
20d7a431fd refactor-fvs 2019-01-26 16:28:04 +03:00
Aleksey Kladov
bf7a0f43d0 minor cleanups 2019-01-26 16:26:30 +03:00
bors[bot]
3feaf2a008 Merge #659
659: Fold blocks of mod items r=matklad a=eulerdisk

Fixes #572

As requested, we ignore `mod`s with a visibility specifier.

Co-authored-by: Andrea Pretto <eulerdisk@gmail.com>
2019-01-26 12:49:08 +00:00
Aleksey Kladov
07a4b9f1a0 dont overwrite memfies 2019-01-26 15:41:52 +03:00
Andrea Pretto
b9ca8ab868 Better visibility check. 2019-01-26 13:32:48 +01:00
bors[bot]
2acaa92c93 Merge #660
660: Support macro calls in type position r=matklad a=regiontog

A [playground](https://play.rust-lang.org/?version=stable&mode=debug&edition=2018&gist=fdc6dd4ddaece92a72fa2a292b75e27c) demonstrating the syntax in question.

Co-authored-by: Erlend Tobiassen <erlend.tobiassen@gmail.com>
2019-01-26 10:23:28 +00:00
bors[bot]
8b6dea348f Merge #666
666: rename source_file -> parse r=matklad a=matklad



Co-authored-by: Aleksey Kladov <aleksey.kladov@gmail.com>
2019-01-26 08:55:38 +00:00
Aleksey Kladov
9457b1f0e6 rename source_file -> parse 2019-01-26 11:51:36 +03:00
Bernardo
410a3ae6e8 use entry file_type, improve test 2019-01-26 11:46:37 +03:00
Bernardo
d63e1cebff use Roots in watcher 2019-01-26 11:46:37 +03:00
Bernardo
86fadbd4e5 extract Roots struct 2019-01-26 11:46:37 +03:00
Bernardo
cfbf47b002 review fixes 2019-01-26 11:46:37 +03:00
Bernardo
34a34f9399 use released notifiy version, add TODO comment 2019-01-26 11:46:37 +03:00
Bernardo
be14ab217c better test, avoid duplicated events 2019-01-26 11:46:27 +03:00
Bernardo
0a08650852 hardcode ".git" and "node_modules" also 2019-01-26 11:46:27 +03:00
Bernardo
10a24cf649 simplify and optimize RootFilterby determining if is contained first 2019-01-26 11:46:27 +03:00
Bernardo
eeed6cf53b fix recursive watch 2019-01-26 11:46:27 +03:00
Bernardo
2a1afad3ed avoid boxing 2019-01-26 11:46:27 +03:00
Bernardo
277e0f1baa move watcher to io module 2019-01-26 11:46:27 +03:00
Bernardo
7f7c4e7465 do not emit create for directory again 2019-01-26 11:46:27 +03:00
Bernardo
f88355ccb5 refactor, put watcher with io::Worker
use `RootFilter` to filter recursive watches
untested
2019-01-26 11:46:27 +03:00
Bernardo
eacf7aeb42 ignore check event dir for ignore, cleanup tests 2019-01-26 11:46:27 +03:00
Bernardo
fb1d748a2c actually drop watcher, use parking_lot::Mutex 2019-01-26 11:46:27 +03:00
Bernardo
f181e36a44 handle recursive watching ourselves 2019-01-26 11:46:27 +03:00
Bernardo
e69b620f0d add missing Task::HandleChange 2019-01-26 11:46:27 +03:00
Bernardo
abd8ccefa4 better error handling 2019-01-26 11:46:27 +03:00
Bernardo
b0f7e72c49 use notify with fix 2019-01-26 11:46:27 +03:00
Bernardo
5f31d495bd reference notify issue 2019-01-26 11:46:16 +03:00
Bernardo
76bf7498aa handle watched events filtering in Vfsadd is_overlayedload changed files contents in io 2019-01-26 11:46:16 +03:00
Bernardo
6b86f038d6 refator to move all io to io module
use same channel for scanner and watcher
some implementations pending
2019-01-26 11:46:16 +03:00
Bernardo
d032a1a4e8 complete test 2019-01-26 11:46:16 +03:00
Bernardo
1d5eaefe8a initial Watcher impl 2019-01-26 11:46:16 +03:00
Aleksey Kladov
4711cbcace rename FilesDatabase -> SourceDatabase 2019-01-26 11:20:30 +03:00
Aleksey Kladov
3223de5976 move ide queries to ide db 2019-01-26 11:17:05 +03:00
Aleksey Kladov
be1a005ebd fold syntax database into files database 2019-01-26 11:09:39 +03:00
Aleksey Kladov
ba4c5021c4 list enum variants in the outline 2019-01-26 10:12:00 +03:00
Andrea Pretto
27c071f702 Fold blocks of mod items.
Fixes #572
2019-01-26 00:31:14 +01:00
Erlend Tobiassen
e28bd099d6
Support macro calls in type position 2019-01-25 23:56:31 +01:00
Aleksey Kladov
23172a116c rename POS_FIELD -> POS_FIELD_DEF
to match NAMED_FIELD_DEF
2019-01-26 00:24:12 +03:00
bors[bot]
3c7acecade Merge #656
656: :arrow_up deps r=matklad a=matklad



Co-authored-by: Aleksey Kladov <aleksey.kladov@gmail.com>
2019-01-25 20:43:09 +00:00
bors[bot]
d0ddc5a7c1 Merge #655
655: Fix type inference of binops on int/float variables r=matklad a=flodiebold

Fixes #651.

Co-authored-by: Florian Diebold <flodiebold@gmail.com>
2019-01-25 20:36:56 +00:00
Florian Diebold
5a1385007c Fix type inference of binops on int/float variables
Fixes #651.
2019-01-25 21:32:49 +01:00
Aleksey Kladov
1fd18f020d ⬆️ salsa 2019-01-25 23:27:16 +03:00
bors[bot]
d3b5ff8fe6 Merge #654
654: nicer behavior in case of bugs r=matklad a=matklad



Co-authored-by: Aleksey Kladov <aleksey.kladov@gmail.com>
2019-01-25 20:20:11 +00:00
bors[bot]
03fc615ead Merge #653
653: fix re-indent r=matklad a=matklad



Co-authored-by: Aleksey Kladov <aleksey.kladov@gmail.com>
2019-01-25 20:13:07 +00:00
Aleksey Kladov
54f30bb6d8 nicer behavior in case of bugs
We should always reach a fixed point, but if we fail, let's fail
loudly!
2019-01-25 23:13:07 +03:00