blob: e5647765cb00014ae0b349cd4ec158ea03fc47b2 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
|
SOURCE_FILE@[0; 161)
FN_DEF@[0; 160)
FN_KW@[0; 2)
WHITESPACE@[2; 3)
NAME@[3; 6)
IDENT@[3; 6) "foo"
PARAM_LIST@[6; 8)
L_PAREN@[6; 7)
R_PAREN@[7; 8)
WHITESPACE@[8; 9)
BLOCK@[9; 160)
L_CURLY@[9; 10)
WHITESPACE@[10; 15)
EXPR_STMT@[15; 158)
MATCH_EXPR@[15; 157)
MATCH_KW@[15; 20)
WHITESPACE@[20; 21)
TUPLE_EXPR@[21; 23)
L_PAREN@[21; 22)
R_PAREN@[22; 23)
WHITESPACE@[23; 24)
MATCH_ARM_LIST@[24; 157)
L_CURLY@[24; 25)
WHITESPACE@[25; 34)
MATCH_ARM@[34; 41)
PLACEHOLDER_PAT@[34; 35)
UNDERSCORE@[34; 35)
WHITESPACE@[35; 36)
FAT_ARROW@[36; 38)
WHITESPACE@[38; 39)
TUPLE_EXPR@[39; 41)
L_PAREN@[39; 40)
R_PAREN@[40; 41)
COMMA@[41; 42)
WHITESPACE@[42; 51)
MATCH_ARM@[51; 77)
PLACEHOLDER_PAT@[51; 52)
UNDERSCORE@[51; 52)
WHITESPACE@[52; 53)
IF_KW@[53; 55)
WHITESPACE@[55; 56)
BIN_EXPR@[56; 71)
PATH_EXPR@[56; 60)
PATH@[56; 60)
PATH_SEGMENT@[56; 60)
NAME_REF@[56; 60)
IDENT@[56; 60) "Test"
R_ANGLE@[60; 61)
BLOCK_EXPR@[61; 71)
BLOCK@[61; 71)
L_CURLY@[61; 62)
EXPR_STMT@[62; 67)
PATH_EXPR@[62; 67)
PATH@[62; 67)
PATH_SEGMENT@[62; 67)
NAME_REF@[62; 67)
IDENT@[62; 67) "field"
err: `expected SEMI`
err: `expected expression`
EXPR_STMT@[67; 68)
ERROR@[67; 68)
COLON@[67; 68)
err: `expected SEMI`
WHITESPACE@[68; 69)
LITERAL@[69; 70)
INT_NUMBER@[69; 70) "0"
R_CURLY@[70; 71)
WHITESPACE@[71; 72)
FAT_ARROW@[72; 74)
WHITESPACE@[74; 75)
TUPLE_EXPR@[75; 77)
L_PAREN@[75; 76)
R_PAREN@[76; 77)
COMMA@[77; 78)
WHITESPACE@[78; 87)
MATCH_ARM@[87; 103)
BIND_PAT@[87; 88)
NAME@[87; 88)
IDENT@[87; 88) "X"
WHITESPACE@[88; 89)
PIPE@[89; 90)
WHITESPACE@[90; 91)
BIND_PAT@[91; 92)
NAME@[91; 92)
IDENT@[91; 92) "Y"
WHITESPACE@[92; 93)
IF_KW@[93; 95)
WHITESPACE@[95; 96)
PATH_EXPR@[96; 97)
PATH@[96; 97)
PATH_SEGMENT@[96; 97)
NAME_REF@[96; 97)
IDENT@[96; 97) "Z"
WHITESPACE@[97; 98)
FAT_ARROW@[98; 100)
WHITESPACE@[100; 101)
TUPLE_EXPR@[101; 103)
L_PAREN@[101; 102)
R_PAREN@[102; 103)
COMMA@[103; 104)
WHITESPACE@[104; 113)
MATCH_ARM@[113; 131)
PIPE@[113; 114)
WHITESPACE@[114; 115)
BIND_PAT@[115; 116)
NAME@[115; 116)
IDENT@[115; 116) "X"
WHITESPACE@[116; 117)
PIPE@[117; 118)
WHITESPACE@[118; 119)
BIND_PAT@[119; 120)
NAME@[119; 120)
IDENT@[119; 120) "Y"
WHITESPACE@[120; 121)
IF_KW@[121; 123)
WHITESPACE@[123; 124)
PATH_EXPR@[124; 125)
PATH@[124; 125)
PATH_SEGMENT@[124; 125)
NAME_REF@[124; 125)
IDENT@[124; 125) "Z"
WHITESPACE@[125; 126)
FAT_ARROW@[126; 128)
WHITESPACE@[128; 129)
TUPLE_EXPR@[129; 131)
L_PAREN@[129; 130)
R_PAREN@[130; 131)
COMMA@[131; 132)
WHITESPACE@[132; 141)
MATCH_ARM@[141; 150)
PIPE@[141; 142)
WHITESPACE@[142; 143)
BIND_PAT@[143; 144)
NAME@[143; 144)
IDENT@[143; 144) "X"
WHITESPACE@[144; 145)
FAT_ARROW@[145; 147)
WHITESPACE@[147; 148)
TUPLE_EXPR@[148; 150)
L_PAREN@[148; 149)
R_PAREN@[149; 150)
COMMA@[150; 151)
WHITESPACE@[151; 156)
R_CURLY@[156; 157)
SEMI@[157; 158)
WHITESPACE@[158; 159)
R_CURLY@[159; 160)
WHITESPACE@[160; 161)
|