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