Commit graph

5048 commits

Author SHA1 Message Date
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
Aleksey Kladov
05a9d42f54 tweak extend selection 2018-08-31 14:52:29 +03:00
Aleksey Kladov
8fc7f438c4 start item recovery 2018-08-31 13:35:48 +03:00
Aleksey Kladov
faebae74e4 fix tests 2018-08-31 12:13:02 +03:00
Aleksey Kladov
d999f4b568 cancelation 2018-08-31 12:04:33 +03:00
Aleksey Kladov
efa6a952b4 cancelation tokens 2018-08-31 10:27:38 +03:00
Aleksey Kladov
902df0fc05 add test 2018-08-30 21:42:23 +03:00
Aleksey Kladov
8f552ab352 break/continue completion 2018-08-30 21:32:12 +03:00
Aleksey Kladov
80ab3433d3 complete imports 2018-08-30 20:37:33 +03:00
Aleksey Kladov
49e14a99ed Complete types 2018-08-30 20:03:18 +03:00
Aleksey Kladov
9fcebbc512 subscriptions 2018-08-30 16:27:09 +03:00
Aleksey Kladov
7570d85869 loop scope 2018-08-30 16:05:49 +03:00
Aleksey Kladov
c2c64145cb move 2018-08-30 13:12:49 +03:00
Aleksey Kladov
1f2fb4e27f move 2018-08-30 12:52:21 +03:00
Aleksey Kladov
0d6d74e78e minor 2018-08-30 12:34:31 +03:00
Aleksey Kladov
7d95d38ecb fix join lines selection 2018-08-29 18:35:28 +03:00
Aleksey Kladov
09ea0ca7e5 rename world -> analysis impl 2018-08-29 18:23:57 +03:00
Aleksey Kladov
0f968ee430 minor 2018-08-29 18:12:28 +03:00
Aleksey Kladov
4dd4571bfe minor 2018-08-29 18:09:08 +03:00
Aleksey Kladov
1baba9a2e2 Minor 2018-08-29 18:07:56 +03:00
Aleksey Kladov
2e2c2e62eb Remove dead code 2018-08-29 18:06:46 +03:00
Aleksey Kladov
fce6bc0acc Make world private 2018-08-29 18:05:54 +03:00
Aleksey Kladov
8abf536343 Grand refactoring 2018-08-29 18:03:14 +03:00
Aleksey Kladov
754c034a81 fix tests 2018-08-29 11:15:51 +03:00
Aleksey Kladov
15f15d92eb add impl works with lifetimes 2018-08-28 23:59:57 +03:00
Aleksey Kladov
ba02a55330 simplify 2018-08-28 22:58:02 +03:00
Aleksey Kladov
69eeae0c99 polish join 2018-08-28 22:52:51 +03:00
Aleksey Kladov
6effddb18c fix comma list 2018-08-28 21:48:14 +03:00
Aleksey Kladov
e6ab53619b be more careful with adding semis 2018-08-28 21:45:59 +03:00
Aleksey Kladov
f5de8212da Tweak return completion 2018-08-28 21:31:34 +03:00
Aleksey Kladov
d351ae67a9 Smart return completion 2018-08-28 21:14:13 +03:00
Aleksey Kladov
2257c08cb1 Add ret type 2018-08-28 21:11:17 +03:00
Aleksey Kladov
b00a4d43ec Dont diagnose inline mods 2018-08-28 20:29:36 +03:00
Aleksey Kladov
4c1f17af7d completion snippets 2018-08-28 20:26:57 +03:00
Aleksey Kladov
b6c654e233 reread files from disk 2018-08-28 19:42:55 +03:00
Aleksey Kladov
dea6ed73fa better pattern recovery 2018-08-28 19:35:09 +03:00
Aleksey Kladov
537ea620bb complete items from module scope 2018-08-28 19:23:55 +03:00
Aleksey Kladov
d34588bf83 create module smartly 2018-08-28 18:22:59 +03:00
Aleksey Kladov
748a4cacd2 Reorganize tests 2018-08-28 14:47:12 +03:00
Aleksey Kladov
6c41a205a9 join any block 2018-08-28 14:21:37 +03:00
Aleksey Kladov
288c9d1ac6 Simplify API 2018-08-28 14:07:41 +03:00
Aleksey Kladov
7e74af3226 Avoid materializing strings 2018-08-28 14:06:30 +03:00
Aleksey Kladov
363f466627 tone down on eq typed 2018-08-28 11:17:08 +03:00
Aleksey Kladov
2fa90e736b better recovery for exprs 2018-08-28 11:12:42 +03:00
Aleksey Kladov
13110f48e9 Log errors 2018-08-28 00:42:13 +03:00
Aleksey Kladov
8f5330cb07 More robust highlighting 2018-08-28 00:20:59 +03:00
Aleksey Kladov
422efe59af you better run 2018-08-27 22:52:43 +03:00
Aleksey Kladov
5751815314 Add runnables 2018-08-27 22:03:19 +03:00
Aleksey Kladov
b79c8b6d8a Fix error blocks 2018-08-27 21:10:02 +03:00
Aleksey Kladov
7f4b07a907 Refactor 2018-08-27 21:02:47 +03:00
Aleksey Kladov
aaca7d003b move scopes to file 2018-08-27 20:58:38 +03:00
Aleksey Kladov
07cbb7d73d Support if-let in scopes 2018-08-27 12:22:09 +03:00
Aleksey Kladov
c16530c988 visitor-less scopes 2018-08-27 10:12:28 +03:00
Aleksey Kladov
8b0298ce09 scopes 2018-08-27 10:01:31 +03:00
Aleksey Kladov
9b69c7df19 fix curly braces parsing 2018-08-26 19:04:44 +03:00
Aleksey Kladov
71722c047f Simple scope completion 2018-08-26 12:51:45 +03:00
Aleksey Kladov
ac226021cf scope based comletion 2018-08-26 12:09:28 +03:00
Aleksey Kladov
4c121bfa2f extend selection to comments 2018-08-26 10:43:03 +03:00
Aleksey Kladov
a450142aca fix stray curly 2018-08-26 09:12:18 +03:00
Aleksey Kladov
a48964c64d switch to upstream fst 2018-08-25 23:50:16 +03:00
Aleksey Kladov
367e523442 Require semi after exprs 2018-08-25 16:04:47 +03:00
Aleksey Kladov
a80c07bdff Avoid massacaring errors 2018-08-25 15:12:17 +03:00
Aleksey Kladov
c3e5987c43 incremental reparse 2018-08-25 14:45:17 +03:00
Aleksey Kladov
5211e7d977 move 2018-08-25 14:30:54 +03:00
Aleksey Kladov
2d41bc3e6c rename 2018-08-25 14:26:34 +03:00
Aleksey Kladov
da329c2e53 more incremental work 2018-08-25 13:57:13 +03:00
Aleksey Kladov
19d933ba38 join lines works for lambdas 2018-08-25 13:42:40 +03:00
Aleksey Kladov
838820ad98 fix assertione error on block parsing 2018-08-25 13:21:43 +03:00
Aleksey Kladov
fed5727ea2 start incremental reparse 2018-08-25 13:17:54 +03:00
Aleksey Kladov
32c8ea9307 Move atom edit to libsyntax2 2018-08-25 12:44:26 +03:00
Aleksey Kladov
87cd57d56a Refactor 2018-08-25 12:10:35 +03:00
Aleksey Kladov
a44428fc79 kill more reexports 2018-08-25 11:48:59 +03:00
Aleksey Kladov
70333c8edf remove reesports 2018-08-25 11:47:24 +03:00
Aleksey Kladov
220d285b4a rename ParsedFile -> File 2018-08-25 11:44:58 +03:00
Aleksey Kladov
cf278ed3bf rename file -> root 2018-08-25 11:44:17 +03:00
Aleksey Kladov
9fae494a8d Move ParsedFile to top 2018-08-25 11:40:17 +03:00
Aleksey Kladov
f104458d45 parameter parsing does not destroy blocks 2018-08-24 20:50:37 +03:00
Aleksey Kladov
b0aac1ca98 rename tests 2018-08-24 19:35:20 +03:00
Aleksey Kladov
7edab6ae6b nodes for blocks 2018-08-24 19:27:30 +03:00
Aleksey Kladov
6cade3f6d8 Runnig tests somehow 2018-08-24 13:41:25 +03:00
Aleksey Kladov
89e56c364f Labeled expressions 2018-08-24 11:45:50 +03:00
Aleksey Kladov
719710a132 break&continue 2018-08-24 11:21:13 +03:00
Aleksey Kladov
a66c94af1b renames 2018-08-24 02:14:10 +03:00
Aleksey Kladov
dc40f1298a better self-types 2018-08-24 01:19:38 +03:00
Aleksey Kladov
cf7d4a2a24 Simplify 2018-08-24 00:48:10 +03:00
Aleksey Kladov
dd64a155e9 rename 2018-08-24 00:16:29 +03:00
Aleksey Kladov
f47f58ffe5 better join-lines 2018-08-24 00:13:16 +03:00
Aleksey Kladov
8ad586a44e JoinLines frontend 2018-08-23 22:14:51 +03:00
Aleksey Kladov
18918769ba Smarter join lines 2018-08-23 21:38:25 +03:00
Aleksey Kladov
6dcf87fb5f Start join-lines 2018-08-23 20:55:23 +03:00
Aleksey Kladov
ec70617564 byte literals 2018-08-23 20:04:13 +03:00
Aleksey Kladov
a077533513 Allow arbitrary self-types 2018-08-23 19:07:33 +03:00
Aleksey Kladov
8d82d1551e Extend add impl 2018-08-22 19:06:30 +03:00
Aleksey Kladov
147578f0fe add impl initial 2018-08-22 18:05:43 +03:00
Aleksey Kladov
69a524fbef dedupe 2018-08-22 17:01:51 +03:00
Aleksey Kladov
8e3bec11eb TypeParamList Owner 2018-08-22 16:46:42 +03:00
Aleksey Kladov
55896aedb1 minor 2018-08-22 15:01:34 +03:00
Aleksey Kladov
a4f140b0f3 no escape 2018-08-22 13:22:06 +03:00
Aleksey Kladov
e8dfb92641 Simplify 2018-08-22 12:58:34 +03:00
Aleksey Kladov
641659d5a8 Smarter extend selection 2018-08-22 11:56:36 +03:00
Aleksey Kladov
9909875bfe parent module request 2018-08-22 10:53:48 +03:00
Aleksey Kladov
ecc9df5f00 simpler update 2018-08-21 22:24:59 +03:00
Aleksey Kladov
b937262c9b Module map implementation 2018-08-21 18:30:10 +03:00
Aleksey Kladov
4d8be26584 refactor 2018-08-18 12:42:28 +03:00
Aleksey Kladov
a5eeef0eee better char lexing 2018-08-18 12:13:34 +03:00
Aleksey Kladov
c7b1be6be3 Owned 2018-08-17 22:03:55 +03:00
Aleksey Kladov
d3c90ded2b Borrowed AST 2018-08-17 22:00:13 +03:00
Aleksey Kladov
70097504f7 hide root 2018-08-17 21:10:55 +03:00
Aleksey Kladov
ed7ae78c6f ServerWorld 2018-08-17 19:54:08 +03:00
Aleksey Kladov
41570f60bf extend module resolve to mod.rs 2018-08-17 16:04:34 +03:00
Aleksey Kladov
081c16c776 initial mod resolve 2018-08-17 15:37:17 +03:00
Aleksey Kladov
55e87e0b74 mod resolve work 2018-08-17 00:18:14 +03:00
Aleksey Kladov
6a3f819f79 move smol_str to a separare repo 2018-08-16 23:40:48 +03:00
Aleksey Kladov
e0a43a159d vscode moves cursor 2018-08-16 13:46:31 +03:00
Aleksey Kladov
eda52cbc34 allow field attrs 2018-08-16 13:20:59 +03:00
Aleksey Kladov
a5515d9d6f Add derive handles cursor 2018-08-16 13:11:20 +03:00
Aleksey Kladov
7094291573 tt-attrs 2018-08-16 12:51:40 +03:00
Aleksey Kladov
1193c5f829 dead code 2018-08-16 11:08:41 +03:00
Aleksey Kladov
c631b585a7 matching brace 2018-08-16 00:23:22 +03:00
Aleksey Kladov
aa0d344581 Edits with cursors 2018-08-15 23:24:20 +03:00
Aleksey Kladov
a7d31b55a4 Simplify walk 2018-08-15 21:25:29 +03:00
Aleksey Kladov
9f6cf42c5f Switch to file ids 2018-08-15 17:24:20 +03:00
Aleksey Kladov
109658332a Support raw strings in lexer 2018-08-14 15:03:27 +03:00
Aleksey Kladov
199e3b73c7 fields are part of the structure 2018-08-14 14:45:56 +03:00
Aleksey Kladov
1141d448d9 Add derive intention 2018-08-14 13:33:44 +03:00
Aleksey Kladov
5953a348bd Less hackish impl structure 2018-08-14 12:38:20 +03:00
Aleksey Kladov
de02d2891e full range expr 2018-08-14 11:46:46 +03:00
Aleksey Kladov
2b828c68e8 separete structure from symbols 2018-08-14 11:20:09 +03:00
Aleksey Kladov
49ab441024 Qualified paths 2018-08-13 23:54:00 +03:00
Aleksey Kladov
d9e86e574a Use rayon for parallel indexing 2018-08-13 19:28:34 +03:00
Aleksey Kladov
439e0fd32e Fix some more bugs 2018-08-13 18:46:43 +03:00
Aleksey Kladov
7d0c9cf546 Optional patterns in trait methods 2018-08-13 18:40:47 +03:00
Aleksey Kladov
c146331b1c rename 2018-08-13 18:36:16 +03:00
Aleksey Kladov
1d95f34e9a More renames 2018-08-13 18:34:02 +03:00
Aleksey Kladov
d642c48616 forgotten test 2018-08-13 18:31:28 +03:00
Aleksey Kladov
51f7f937a5 Safer errors 2018-08-13 18:30:56 +03:00
Aleksey Kladov
c1a7b72fb7 renames 2018-08-13 18:27:26 +03:00
Aleksey Kladov
9149fd2c0c Fix some parser bugs 2018-08-13 18:24:17 +03:00
Aleksey Kladov
d1eceefeb8 dyn type 2018-08-13 17:42:43 +03:00
Aleksey Kladov
5a56ac4b72 Better limiting 2018-08-13 17:19:27 +03:00
Aleksey Kladov
8ae56fa6d0 Stupid goto definition 2018-08-13 16:35:17 +03:00
Aleksey Kladov
7fc91f41d8 Generalize query 2018-08-13 16:07:05 +03:00
Aleksey Kladov
0568e76406 smol debug 2018-08-13 15:44:51 +03:00
Aleksey Kladov
d19f3ac834 workspace symbols 2018-08-13 15:35:53 +03:00
Aleksey Kladov
133d001d82 world symbols 2018-08-13 15:10:20 +03:00
Aleksey Kladov
ed2ac17133 smol_str to a crate 2018-08-13 14:24:22 +03:00
Aleksey Kladov
18486a02fa indexing infra 2018-08-13 13:46:05 +03:00
Aleksey Kladov
be742a5877 Apply code actions 2018-08-13 02:38:34 +03:00
Aleksey Kladov
25aebb5225 Refctor 2018-08-13 00:09:30 +03:00
Aleksey Kladov
535bd7ccf7 remove useless loop 2018-08-12 22:23:44 +03:00
Aleksey Kladov
b518fd0ef9 Sans IO dispatch 2018-08-12 22:12:51 +03:00
Aleksey Kladov
1962369806 more modules 2018-08-12 22:08:14 +03:00
Aleksey Kladov
acd7552698 Simplify 2018-08-12 21:47:27 +03:00
Aleksey Kladov
58c3370819 Simplify 2018-08-12 21:45:03 +03:00
Aleksey Kladov
8dad14b5cd Convert Thunk to Task 2018-08-12 21:34:17 +03:00
Aleksey Kladov
23c06db9c2 Half of code-actions 2018-08-12 21:02:56 +03:00
Aleksey Kladov
66be735aa9 flip comma 2018-08-12 18:50:16 +03:00
Aleksey Kladov
56aa6e20e0 More symbols 2018-08-11 16:20:37 +03:00
Aleksey Kladov
ce06a9ddcb Switch to upstream langserver-types 2018-08-11 16:05:00 +03:00
Aleksey Kladov
f2291d6a76 doc symbols 2018-08-11 14:44:12 +03:00
Aleksey Kladov
7afd84febc visitor 2018-08-11 12:28:59 +03:00
Aleksey Kladov
d5119133fc heck 2018-08-11 11:03:22 +03:00
Aleksey Kladov
78f41ea707 more renames 2018-08-11 10:56:40 +03:00
Aleksey Kladov
2e971cdcbb Use dict for AST 2018-08-11 10:11:58 +03:00
Aleksey Kladov
e69c70e2a2 ENUM_ITEM -> ENUM 2018-08-11 10:05:26 +03:00
Aleksey Kladov
7698d37fa4 STRUCT_ITEM -> STRUCT 2018-08-11 10:04:47 +03:00
Aleksey Kladov
ce898183b8 Simplify tests 2018-08-11 10:03:03 +03:00
Aleksey Kladov
b18d2882f4 Generate accessors 2018-08-11 09:55:32 +03:00
Aleksey Kladov
7581984601 bump ron 2018-08-11 09:38:27 +03:00
Aleksey Kladov
35b59bb438 simplify 2018-08-11 08:56:13 +03:00
Aleksey Kladov
f99551f46b reorganize 2018-08-11 01:04:09 +03:00
Aleksey Kladov
9863b9161d decorations 2018-08-11 00:55:32 +03:00
Aleksey Kladov
836e0c1863 simplify 2018-08-11 00:12:31 +03:00
Aleksey Kladov
46e4232cc6 simplify bouds 2018-08-11 00:01:37 +03:00
Aleksey Kladov
52de08330f dedupe 2018-08-10 23:56:19 +03:00
Aleksey Kladov
bf42a75f1e dedupe 2018-08-10 23:45:35 +03:00
Aleksey Kladov
36d922c87d diagnostics 2018-08-10 23:30:11 +03:00
Aleksey Kladov
5896cd51de Cleanup log messages 2018-08-10 22:55:42 +03:00
Aleksey Kladov
7c67612b8a organizize 2018-08-10 22:33:29 +03:00