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
Aleksey Kladov
f5669dfc56
No self-imports in completion
2018-09-01 12:46:43 +03:00
Aleksey Kladov
2161a1689d
Type aliases to scope
2018-09-01 12:30:53 +03:00
Aleksey Kladov
f2772e29ae
add crate graph
2018-08-31 19:14:08 +03:00
Aleksey Kladov
7a5bc94774
complete self
2018-08-31 16:30:42 +03:00
Aleksey Kladov
cdb9b4cbf4
handle shadowing
2018-08-31 15:53:52 +03:00
Aleksey Kladov
78d60a549d
default method name to type name
2018-08-31 15:10:37 +03:00