Commit Graph

633 Commits

Author SHA1 Message Date
Aleksey Kladov 7daaddb2ac Some abstraction around workers 2018-09-08 13:15:01 +03:00
Aleksey Kladov 326ffcefe0 Deal with deadlocks in a more principaled way 2018-09-08 12:36:02 +03:00
Aleksey Kladov d9ccebd913 fix deadlock 2018-09-08 12:08:46 +03:00
Aleksey Kladov f48b9d9be7 Fix block structure in enums 2018-09-08 10:55:09 +03:00
Aleksey Kladov 749907d330 simplify 2018-09-08 10:38:53 +03:00
Aleksey Kladov febbc9acdd Don't get stuck in tuple exprs 2018-09-08 10:35:05 +03:00
Aleksey Kladov a0a347eac9 Don't get stuck in macros 2018-09-08 10:28:53 +03:00
Aleksey Kladov bd3a26493f fix stuck parser 2018-09-08 10:13:32 +03:00
Aleksey Kladov 44334f6f56 fix labled expressions 2018-09-08 09:18:42 +03:00
Aleksey Kladov 127814d9a7 nested mod completion 2018-09-08 01:35:20 +03:00
Aleksey Kladov ff1c82216c Remove dyn dispatch 2018-09-08 01:16:07 +03:00
Aleksey Kladov fcfda94664 Separete API from IMPL
Looks like there's a rule of thumb: don't call API functions from an
implementation! In this case, following this rule of thumb saves us an
Arc-bump!
2018-09-07 22:05:05 +03:00
bors[bot] ba7b3c2108 Merge #59
59: Moved TokenSet into it's own file. r=matklad a=Plasticcaz

As discussed in Issue #11, the only thing left in that issue that hasn't been fixed appears to be that TokenSet is not in it's own file. This pull request pulls TokenSet, it's macros and it's test into it's own file.

Co-authored-by: Zac Winter <plasticcaz@gmail.com>
2018-09-06 14:05:37 +00:00
Zac Winter 518cc87496 Moved TokenSet into it's own file. 2018-09-06 21:57:04 +08:00
Aleksey Kladov 751562d2f7 better introduce 2018-09-06 01:19:24 +03:00
Aleksey Kladov bb64edf8ba introduce variable 2018-09-06 00:59:07 +03:00
Aleksey Kladov 47e8b80e9b use correct workdir for the server 2018-09-05 21:38:43 +03:00
bors[bot] 529ebd5840 Merge #58
58: even less hacks r=matklad a=matklad



Co-authored-by: Aleksey Kladov <aleksey.kladov@gmail.com>
2018-09-05 17:23:25 +00:00
Aleksey Kladov 669eabe892 even less hacks 2018-09-05 20:22:52 +03:00
bors[bot] 8f30179f82 Merge #57
57: less hacky paths r=matklad a=matklad



Co-authored-by: Aleksey Kladov <aleksey.kladov@gmail.com>
2018-09-05 15:28:21 +00:00
Aleksey Kladov d0e22d7578 less hacky paths 2018-09-05 18:27:44 +03:00
bors[bot] ad451686a8 Merge #56
56: Unify lookahead naming between parser and lexer. r=matklad a=zachlute

Resolves Issue #26.

I wanted to play around with libsyntax2, and fixing a random issue seemed like a good way to mess around in the code.

This PR mostly does what's suggested in that issue. I elected to go with `at` and `at_str` instead of trying to do any fancy overloading shenanigans, because...uh, well, frankly I don't really know how to do any fancy overloading shenanigans. The only really questionable bit is `nth_is_p`, which could also have potentially been named `nth_at_p`, but `is` seemed more apropos.

I also added simple tests for `Ptr` so I could be less terrified I broke something. 

Comments and criticisms very welcome. I'm still pretty new to Rust.

Co-authored-by: Zach Lute <zach.lute@gmail.com>
2018-09-05 15:07:17 +00:00
Aleksey Kladov 649f7faf7d fix tests on windows 2018-09-05 15:03:27 +01:00
Zach Lute d21fead150 Added tests for Ptr. 2018-09-04 23:26:11 -07:00
Zach Lute af0ae9ee04 Updated Ptr methods to better match Parser method names. 2018-09-04 22:56:16 -07:00
Aleksey Kladov f87771092c switch to rayon threadpool 2018-09-04 20:43:37 +03:00
Aleksey Kladov 8b0210d233 simplify 2018-09-04 19:00:01 +03:00
Aleksey Kladov 8ed06d766f better extend selection 2018-09-04 12:48:39 +03:00
Aleksey Kladov e44a6bcc82 for types in bounds 2018-09-04 12:25:23 +03:00
Aleksey Kladov 3a017aaa52 dont change readonly files 2018-09-04 11:40:45 +03:00
Aleksey Kladov a668f703fa micro-optimize 2018-09-04 05:09:39 +03:00
Aleksey Kladov 294534abc7 accidentally quadratic 2018-09-04 05:04:55 +03:00
Aleksey Kladov 4df965a002 work 2018-09-04 04:13:22 +03:00
Aleksey Kladov c3e28f0646 extern blocks 2018-09-04 00:49:21 +03:00
Aleksey Kladov 952da31f44 switch to internal feedback 2018-09-03 23:32:42 +03:00
Aleksey Kladov 971054e4d0 fix the test 2018-09-03 21:51:17 +03:00
Aleksey Kladov f590635f57 faster text len 2018-09-03 21:48:26 +03:00
Aleksey Kladov 5ba645c009 index libraies off the main thread 2018-09-03 21:26:59 +03:00
Aleksey Kladov 47cbaeba6f Index deps 2018-09-03 21:03:37 +03:00
Aleksey Kladov b04c14d4ad dispatch acros roots 2018-09-03 19:46:30 +03:00
Aleksey Kladov 2f2feef9af completion for trait params 2018-09-03 15:46:14 +03:00
Aleksey Kladov 4798a89a12 Complete params 2018-09-03 15:10:06 +03:00
Aleksey Kladov 58480b9190 method call scope 2018-09-03 02:01:43 +03:00
Aleksey Kladov fdd282ee0c improve test 2018-09-03 01:52:59 +03:00
Aleksey Kladov 23303cd0f8 match scope 2018-09-03 01:51:46 +03:00
Aleksey Kladov 83e2ab434c store file id inside symbol 2018-09-02 23:36:23 +03:00
Aleksey Kladov a5e319ec7e Store symbols separately from file data 2018-09-02 23:09:47 +03:00
Aleksey Kladov 440dc41dd8 Add source root 2018-09-02 22:51:59 +03:00
Aleksey Kladov e98d8cd255 nail down runnables 2018-09-02 16:36:03 +03:00
Aleksey Kladov 1329dd4e28 Avoid clones 2018-09-02 15:18:43 +03:00