Commit graph

127 commits

Author SHA1 Message Date
Pascal Hertleif
a37cd5ad43 Add trivial fuzzer for parser
As described in #61, fuzz testing some parts of this would be ~~fun~~
helpful. So, I started with the most trivial fuzzer I could think of:
Put random stuff into File::parse and see what happens.

To speed things up, I also did

    cp src/**/*.rs fuzz/corpus/parser/

in the `crates/libsyntax2/` directory (running the fuzzer once will
generate the necessary directories).
2018-09-08 16:55:53 +02: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
Zac Winter
518cc87496 Moved TokenSet into it's own file. 2018-09-06 21:57:04 +08: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
8b0210d233 simplify 2018-09-04 19:00:01 +03:00
Aleksey Kladov
e44a6bcc82 for types in bounds 2018-09-04 12:25:23 +03:00
Aleksey Kladov
294534abc7 accidentally quadratic 2018-09-04 05:04:55 +03:00
Aleksey Kladov
c3e28f0646 extern blocks 2018-09-04 00:49:21 +03:00
Aleksey Kladov
f590635f57 faster text len 2018-09-03 21:48:26 +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
23303cd0f8 match scope 2018-09-03 01:51:46 +03:00
Aleksey Kladov
2161a1689d Type aliases to scope 2018-09-01 12:30:53 +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
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
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
e6ab53619b be more careful with adding semis 2018-08-28 21:45:59 +03:00
Aleksey Kladov
2257c08cb1 Add ret type 2018-08-28 21:11:17 +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
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
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
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