Commit graph

138 commits

Author SHA1 Message Date
Aleksey Kladov
3d70aeb412 Use names&refs 2018-07-31 19:55:33 +03:00
Aleksey Kladov
63e2ed4e75 Nodes for type args 2018-07-31 19:37:40 +03:00
Aleksey Kladov
cd814fdf81 trait bounds 2018-07-31 18:24:30 +03:00
Aleksey Kladov
892acc5b36 impl items 2018-07-31 18:03:50 +03:00
Aleksey Kladov
edf2b17a57 allow items inside blocks 2018-07-31 17:43:44 +03:00
Aleksey Kladov
9f87c9a3f9 Field expr 2018-07-31 17:35:54 +03:00
Aleksey Kladov
f843f23aba Type ascription in let 2018-07-31 15:33:51 +03:00
Aleksey Kladov
580340d1b8 mut bindings 2018-07-31 15:30:11 +03:00
Aleksey Kladov
346f6e4f7d impl type&trait 2018-07-31 15:08:04 +03:00
Aleksey Kladov
9dcb79a602 Bare & default impls 2018-07-31 14:00:22 +03:00
Aleksey Kladov
9e02e432b5 expr stmt 2018-07-31 12:59:52 +03:00
Aleksey Kladov
66182ed5d5 Ref exprs 2018-07-31 12:51:00 +03:00
Aleksey Kladov
ff71cb1f6d Introduce param & arg list 2018-07-31 12:32:53 +03:00
Aleksey Kladov
c244dd1034 Call expr 2018-07-31 12:26:19 +03:00
Aleksey Kladov
70b3372921 Don't allocate when traversing children 2018-07-30 23:20:02 +03:00
Aleksey Kladov
d436694097 Path expressions 2018-07-30 17:02:51 +03:00
Aleksey Kladov
d39198490f fn ret type 2018-07-30 15:32:19 +03:00
Aleksey Kladov
c12450fb4e Introduce red-green syntax tree 2018-07-29 13:51:55 +03:00
Aleksey Kladov
52dc0ddc84 Add vis test 2018-07-28 13:00:16 +03:00
Aleksey Kladov
c6f4a06b42 G: value_parameters, patterns & let statement 2018-02-18 01:06:48 +03:00
Aleksey Kladov
1c4e05ec2f More correct path type 2018-02-17 16:27:17 +03:00
Aleksey Kladov
c8910b0683 G: for type 2018-02-11 23:32:49 +03:00
Aleksey Kladov
8a3f17a4e2 G: fn pointer type 2018-02-11 12:51:09 +03:00
Aleksey Kladov
2fb33b2d0d G: placeholder types 2018-02-11 11:57:05 +03:00
Aleksey Kladov
eb4c05d572 G: reference types 2018-02-11 11:54:09 +03:00
Aleksey Kladov
555c4ae375 G: slice & array types 2018-02-11 11:37:08 +03:00
Aleksey Kladov
ceb94ece2a G: pointer types 2018-02-11 11:19:54 +03:00
Aleksey Kladov
2389cf96dd G: Never type 2018-02-11 11:01:00 +03:00
Aleksey Kladov
b097090690 G: more types 2018-02-11 00:46:28 +03:00
Aleksey Kladov
199b3a1604 G: use name in mods 2018-02-10 14:23:18 +03:00
Aleksey Kladov
d68a187eb5 G: use name in types 2018-02-10 14:22:31 +03:00
Aleksey Kladov
e792ec3eca G: use name refs in paths 2018-02-10 14:17:38 +03:00
Aleksey Kladov
fa2131365e G: use names in traits 2018-02-10 14:15:04 +03:00
Aleksey Kladov
c13e6db774 G: use names in fields 2018-02-10 14:13:30 +03:00
Aleksey Kladov
8a735b6672 G: use names in enums 2018-02-10 14:10:50 +03:00
Aleksey Kladov
ca6e93f091 G: use names in structs 2018-02-10 14:10:02 +03:00
Aleksey Kladov
f746fb6a93 G: use names in consts 2018-02-10 14:08:46 +03:00
Aleksey Kladov
3c9d8ff423 G: names for fns 2018-02-10 14:04:31 +03:00
Aleksey Kladov
fc0a9e266b G: introduce names 2018-02-10 14:00:23 +03:00
Aleksey Kladov
dd6e5371eb G: where clause 2018-02-10 12:53:07 +03:00
Aleksey Kladov
2ef16a4121 G: type item 2018-02-10 12:35:40 +03:00
Aleksey Kladov
c119e8fd8b G: unsafe fn 2018-02-04 17:06:07 +03:00
Aleksey Kladov
85c42fba12 Support contextual tokens 2018-02-04 16:46:26 +03:00
Aleksey Kladov
a40b715ce1 G: unsafe impl & trait 2018-02-04 13:53:05 +03:00
Aleksey Kladov
003ea633e9 Add more inline tests 2018-02-04 12:28:30 +03:00
Aleksey Kladov
9b3d806b0d Add infra for inline tests 2018-02-03 22:34:35 +03:00
Aleksey Kladov
e5273d33d0 G: const item 2018-02-03 12:05:57 +03:00
Aleksey Kladov
0000f4f4f2 G: static items 2018-02-02 23:45:15 +03:00
Aleksey Kladov
c9318e046c G: extern functions 2018-02-02 22:08:37 +03:00
Aleksey Kladov
197a2e6fef G: type_parameter_list 2018-01-30 22:53:19 +03:00
Aleksey Kladov
c23a2519e1 Print identifiers in test data 2018-01-28 23:13:32 +03:00
Aleksey Kladov
b7c141e0b5 Parse enums 2018-01-28 22:59:18 +03:00
Aleksey Kladov
b9cbbfa405 Test for error recovery for broken parameters 2018-01-28 21:19:57 +03:00
Aleksey Kladov
8ca02acb5a Generic params in structs 2018-01-28 21:18:24 +03:00
Aleksey Kladov
d1d47e6244 Skip over balanced parens 2018-01-28 20:53:01 +03:00
Aleksey Kladov
0663c24222 Add recovery test 2018-01-28 13:01:39 +03:00
Aleksey Kladov
357cd33581 Add tests for parser recovery in fields 2018-01-28 02:20:40 +03:00
Aleksey Kladov
645a1b5d73 Remove high-order bits from tuple struct 2018-01-22 02:21:53 +03:00
Aleksey Kladov
c8cf1d8cda Test attribute recovery 2018-01-21 00:36:17 +03:00
Aleksey Kladov
410f948c5f Drop high-order combinators 2018-01-20 17:21:13 +03:00
Aleksey Kladov
08f7c69f90 G: struct flavors 2018-01-13 22:00:26 +03:00
Aleksey Kladov
55891be06a G: use trees 2018-01-13 13:42:19 +03:00
Aleksey Kladov
29b2e0adcc G: allow self & super in paths 2018-01-13 11:55:03 +03:00
Aleksey Kladov
f31d858607 G: visibility 2018-01-12 22:05:46 +03:00
Aleksey Kladov
c111a1f7b8 Nest paths 2018-01-12 20:59:19 +03:00
Aleksey Kladov
ca0c5ea38b Support tree rebalancing 2018-01-12 20:32:37 +03:00
Aleksey Kladov
9a8e9bc4c6 G: item outer attributes 2018-01-11 23:01:12 +03:00
Aleksey Kladov
89699c4803 G: leading colon is a part of path segment 2018-01-11 22:11:44 +03:00
Aleksey Kladov
41bf98d249 G: multisegment paths 2018-01-11 20:55:08 +03:00
Aleksey Kladov
5ea7e5fb7a G: simplest use items 2018-01-09 23:32:18 +03:00
Aleksey Kladov
1544e89c49 G: mod item 2018-01-09 22:35:55 +03:00
Aleksey Kladov
7f8ca07d86 G: extern crate 2018-01-09 00:06:42 +03:00
Aleksey Kladov
b61617f752 G: special-case C++ semicolon 2018-01-08 21:57:19 +03:00
Aleksey Kladov
ea186fe2c0 G: inner attributes 2018-01-08 21:40:00 +03:00
Aleksey Kladov
f25142c5ed L: true and false are keywords 2018-01-08 21:21:59 +03:00
Aleksey Kladov
7bc974ab2c G: some attributes 2018-01-07 21:40:18 +03:00
Aleksey Kladov
f194750a2a G: start attributes 2018-01-07 19:50:54 +03:00
Aleksey Kladov
b5034410c8 G: function item 2018-01-07 16:01:30 +03:00
Aleksey Kladov
7c6f0f9128 G: shebang 2018-01-07 15:34:11 +03:00
Aleksey Kladov
9e4052cc2e Test utils 2018-01-07 14:56:08 +03:00
Aleksey Kladov
18f9e50b2d Error placement 2018-01-07 13:09:13 +03:00
Aleksey Kladov
efcfaae34a Tests for partial parse 2018-01-07 12:32:29 +03:00
Aleksey Kladov
31a07da88d Boolean results 2018-01-06 21:54:55 +03:00
Aleksey Kladov
d0900b3ca7 G: struct fields 2018-01-06 17:16:00 +03:00
Aleksey Kladov
55602727c8 Parser: first struct :-) 2018-01-01 23:22:01 +03:00
Aleksey Kladov
46422f722b Parser: first scraches 2018-01-01 22:13:04 +03:00
Aleksey Kladov
8c478a794c Parser: initial 2017-12-31 23:34:29 +03:00
Aleksey Kladov
39024fdc14 Parser test boilerplate 2017-12-31 23:27:36 +03:00