Commit Graph

234 Commits

Author SHA1 Message Date
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
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
Aleksey Kladov
669eabe892 even less hacks 2018-09-05 20:22:52 +03: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
Aleksey Kladov
80be61ed78 project model 2018-09-02 14:46:15 +03:00
Aleksey Kladov
7fad13de73 store messages in tests 2018-09-02 12:34:06 +03:00
Aleksey Kladov
d752455637 introduce project model 2018-09-02 11:37:57 +03:00
Aleksey Kladov
541170420b Add an integration test 2018-09-01 20:21:11 +03:00
Aleksey Kladov
e8515fecd7 split lib 2018-09-01 18:16:08 +03:00
Aleksey Kladov
4268fbeaa1 simplify 2018-09-01 18:03:57 +03:00
Aleksey Kladov
8f1ce82753 move to gen-server impl 2018-09-01 17:40:45 +03:00
Aleksey Kladov
3588d6b2da add gen_lsp_server 2018-09-01 16:18:02 +03:00