aboutsummaryrefslogtreecommitdiff
path: root/crates/ra_syntax/test_data/parser/ok/0035_weird_exprs.rast
diff options
context:
space:
mode:
Diffstat (limited to 'crates/ra_syntax/test_data/parser/ok/0035_weird_exprs.rast')
-rw-r--r--crates/ra_syntax/test_data/parser/ok/0035_weird_exprs.rast4658
1 files changed, 2329 insertions, 2329 deletions
diff --git a/crates/ra_syntax/test_data/parser/ok/0035_weird_exprs.rast b/crates/ra_syntax/test_data/parser/ok/0035_weird_exprs.rast
index 7143a31a5..9af689635 100644
--- a/crates/ra_syntax/test_data/parser/ok/0035_weird_exprs.rast
+++ b/crates/ra_syntax/test_data/parser/ok/0035_weird_exprs.rast
@@ -1,2329 +1,2329 @@
1SOURCE_FILE@[0; 3813) 1SOURCE_FILE@0..3813
2 COMMENT@[0; 55) "//! Adapted from a `r ..." 2 COMMENT@0..55 "//! Adapted from a `r ..."
3 WHITESPACE@[55; 56) "\n" 3 WHITESPACE@55..56 "\n"
4 COMMENT@[56; 173) "//! https://github.co ..." 4 COMMENT@56..173 "//! https://github.co ..."
5 WHITESPACE@[173; 174) "\n" 5 WHITESPACE@173..174 "\n"
6 COMMENT@[174; 178) "//! " 6 COMMENT@174..178 "//! "
7 WHITESPACE@[178; 179) "\n" 7 WHITESPACE@178..179 "\n"
8 COMMENT@[179; 269) "//! Reported to rust- ..." 8 COMMENT@179..269 "//! Reported to rust- ..."
9 WHITESPACE@[269; 271) "\n\n" 9 WHITESPACE@269..271 "\n\n"
10 ATTR@[271; 302) 10 ATTR@271..302
11 POUND@[271; 272) "#" 11 POUND@271..272 "#"
12 BANG@[272; 273) "!" 12 BANG@272..273 "!"
13 L_BRACK@[273; 274) "[" 13 L_BRACK@273..274 "["
14 PATH@[274; 279) 14 PATH@274..279
15 PATH_SEGMENT@[274; 279) 15 PATH_SEGMENT@274..279
16 NAME_REF@[274; 279) 16 NAME_REF@274..279
17 IDENT@[274; 279) "allow" 17 IDENT@274..279 "allow"
18 TOKEN_TREE@[279; 301) 18 TOKEN_TREE@279..301
19 L_PAREN@[279; 280) "(" 19 L_PAREN@279..280 "("
20 IDENT@[280; 300) "non_camel_case_types" 20 IDENT@280..300 "non_camel_case_types"
21 R_PAREN@[300; 301) ")" 21 R_PAREN@300..301 ")"
22 R_BRACK@[301; 302) "]" 22 R_BRACK@301..302 "]"
23 WHITESPACE@[302; 303) "\n" 23 WHITESPACE@302..303 "\n"
24 ATTR@[303; 323) 24 ATTR@303..323
25 POUND@[303; 304) "#" 25 POUND@303..304 "#"
26 BANG@[304; 305) "!" 26 BANG@304..305 "!"
27 L_BRACK@[305; 306) "[" 27 L_BRACK@305..306 "["
28 PATH@[306; 311) 28 PATH@306..311
29 PATH_SEGMENT@[306; 311) 29 PATH_SEGMENT@306..311
30 NAME_REF@[306; 311) 30 NAME_REF@306..311
31 IDENT@[306; 311) "allow" 31 IDENT@306..311 "allow"
32 TOKEN_TREE@[311; 322) 32 TOKEN_TREE@311..322
33 L_PAREN@[311; 312) "(" 33 L_PAREN@311..312 "("
34 IDENT@[312; 321) "dead_code" 34 IDENT@312..321 "dead_code"
35 R_PAREN@[321; 322) ")" 35 R_PAREN@321..322 ")"
36 R_BRACK@[322; 323) "]" 36 R_BRACK@322..323 "]"
37 WHITESPACE@[323; 324) "\n" 37 WHITESPACE@323..324 "\n"
38 ATTR@[324; 351) 38 ATTR@324..351
39 POUND@[324; 325) "#" 39 POUND@324..325 "#"
40 BANG@[325; 326) "!" 40 BANG@325..326 "!"
41 L_BRACK@[326; 327) "[" 41 L_BRACK@326..327 "["
42 PATH@[327; 332) 42 PATH@327..332
43 PATH_SEGMENT@[327; 332) 43 PATH_SEGMENT@327..332
44 NAME_REF@[327; 332) 44 NAME_REF@327..332
45 IDENT@[327; 332) "allow" 45 IDENT@327..332 "allow"
46 TOKEN_TREE@[332; 350) 46 TOKEN_TREE@332..350
47 L_PAREN@[332; 333) "(" 47 L_PAREN@332..333 "("
48 IDENT@[333; 349) "unreachable_code" 48 IDENT@333..349 "unreachable_code"
49 R_PAREN@[349; 350) ")" 49 R_PAREN@349..350 ")"
50 R_BRACK@[350; 351) "]" 50 R_BRACK@350..351 "]"
51 WHITESPACE@[351; 352) "\n" 51 WHITESPACE@351..352 "\n"
52 ATTR@[352; 376) 52 ATTR@352..376
53 POUND@[352; 353) "#" 53 POUND@352..353 "#"
54 BANG@[353; 354) "!" 54 BANG@353..354 "!"
55 L_BRACK@[354; 355) "[" 55 L_BRACK@354..355 "["
56 PATH@[355; 360) 56 PATH@355..360
57 PATH_SEGMENT@[355; 360) 57 PATH_SEGMENT@355..360
58 NAME_REF@[355; 360) 58 NAME_REF@355..360
59 IDENT@[355; 360) "allow" 59 IDENT@355..360 "allow"
60 TOKEN_TREE@[360; 375) 60 TOKEN_TREE@360..375
61 L_PAREN@[360; 361) "(" 61 L_PAREN@360..361 "("
62 IDENT@[361; 374) "unused_parens" 62 IDENT@361..374 "unused_parens"
63 R_PAREN@[374; 375) ")" 63 R_PAREN@374..375 ")"
64 R_BRACK@[375; 376) "]" 64 R_BRACK@375..376 "]"
65 WHITESPACE@[376; 378) "\n\n" 65 WHITESPACE@376..378 "\n\n"
66 ATTR@[378; 405) 66 ATTR@378..405
67 POUND@[378; 379) "#" 67 POUND@378..379 "#"
68 BANG@[379; 380) "!" 68 BANG@379..380 "!"
69 L_BRACK@[380; 381) "[" 69 L_BRACK@380..381 "["
70 PATH@[381; 396) 70 PATH@381..396
71 PATH_SEGMENT@[381; 396) 71 PATH_SEGMENT@381..396
72 NAME_REF@[381; 396) 72 NAME_REF@381..396
73 IDENT@[381; 396) "recursion_limit" 73 IDENT@381..396 "recursion_limit"
74 WHITESPACE@[396; 397) " " 74 WHITESPACE@396..397 " "
75 EQ@[397; 398) "=" 75 EQ@397..398 "="
76 WHITESPACE@[398; 399) " " 76 WHITESPACE@398..399 " "
77 LITERAL@[399; 404) 77 LITERAL@399..404
78 STRING@[399; 404) "\"128\"" 78 STRING@399..404 "\"128\""
79 R_BRACK@[404; 405) "]" 79 R_BRACK@404..405 "]"
80 WHITESPACE@[405; 407) "\n\n" 80 WHITESPACE@405..407 "\n\n"
81 USE_ITEM@[407; 427) 81 USE_ITEM@407..427
82 USE_KW@[407; 410) "use" 82 USE_KW@407..410 "use"
83 WHITESPACE@[410; 411) " " 83 WHITESPACE@410..411 " "
84 USE_TREE@[411; 426) 84 USE_TREE@411..426
85 PATH@[411; 426) 85 PATH@411..426
86 PATH@[411; 420) 86 PATH@411..420
87 PATH@[411; 414) 87 PATH@411..414
88 PATH_SEGMENT@[411; 414) 88 PATH_SEGMENT@411..414
89 NAME_REF@[411; 414) 89 NAME_REF@411..414
90 IDENT@[411; 414) "std" 90 IDENT@411..414 "std"
91 COLON2@[414; 416) "::" 91 COLON2@414..416 "::"
92 PATH_SEGMENT@[416; 420) 92 PATH_SEGMENT@416..420
93 NAME_REF@[416; 420) 93 NAME_REF@416..420
94 IDENT@[416; 420) "cell" 94 IDENT@416..420 "cell"
95 COLON2@[420; 422) "::" 95 COLON2@420..422 "::"
96 PATH_SEGMENT@[422; 426) 96 PATH_SEGMENT@422..426
97 NAME_REF@[422; 426) 97 NAME_REF@422..426
98 IDENT@[422; 426) "Cell" 98 IDENT@422..426 "Cell"
99 SEMICOLON@[426; 427) ";" 99 SEMICOLON@426..427 ";"
100 WHITESPACE@[427; 428) "\n" 100 WHITESPACE@427..428 "\n"
101 USE_ITEM@[428; 447) 101 USE_ITEM@428..447
102 USE_KW@[428; 431) "use" 102 USE_KW@428..431 "use"
103 WHITESPACE@[431; 432) " " 103 WHITESPACE@431..432 " "
104 USE_TREE@[432; 446) 104 USE_TREE@432..446
105 PATH@[432; 446) 105 PATH@432..446
106 PATH@[432; 440) 106 PATH@432..440
107 PATH@[432; 435) 107 PATH@432..435
108 PATH_SEGMENT@[432; 435) 108 PATH_SEGMENT@432..435
109 NAME_REF@[432; 435) 109 NAME_REF@432..435
110 IDENT@[432; 435) "std" 110 IDENT@432..435 "std"
111 COLON2@[435; 437) "::" 111 COLON2@435..437 "::"
112 PATH_SEGMENT@[437; 440) 112 PATH_SEGMENT@437..440
113 NAME_REF@[437; 440) 113 NAME_REF@437..440
114 IDENT@[437; 440) "mem" 114 IDENT@437..440 "mem"
115 COLON2@[440; 442) "::" 115 COLON2@440..442 "::"
116 PATH_SEGMENT@[442; 446) 116 PATH_SEGMENT@442..446
117 NAME_REF@[442; 446) 117 NAME_REF@442..446
118 IDENT@[442; 446) "swap" 118 IDENT@442..446 "swap"
119 SEMICOLON@[446; 447) ";" 119 SEMICOLON@446..447 ";"
120 WHITESPACE@[447; 449) "\n\n" 120 WHITESPACE@447..449 "\n\n"
121 COMMENT@[449; 518) "// Just a grab bag of ..." 121 COMMENT@449..518 "// Just a grab bag of ..."
122 WHITESPACE@[518; 520) "\n\n" 122 WHITESPACE@518..520 "\n\n"
123 FN_DEF@[520; 572) 123 FN_DEF@520..572
124 FN_KW@[520; 522) "fn" 124 FN_KW@520..522 "fn"
125 WHITESPACE@[522; 523) " " 125 WHITESPACE@522..523 " "
126 NAME@[523; 530) 126 NAME@523..530
127 IDENT@[523; 530) "strange" 127 IDENT@523..530 "strange"
128 PARAM_LIST@[530; 532) 128 PARAM_LIST@530..532
129 L_PAREN@[530; 531) "(" 129 L_PAREN@530..531 "("
130 R_PAREN@[531; 532) ")" 130 R_PAREN@531..532 ")"
131 WHITESPACE@[532; 533) " " 131 WHITESPACE@532..533 " "
132 RET_TYPE@[533; 540) 132 RET_TYPE@533..540
133 THIN_ARROW@[533; 535) "->" 133 THIN_ARROW@533..535 "->"
134 WHITESPACE@[535; 536) " " 134 WHITESPACE@535..536 " "
135 PATH_TYPE@[536; 540) 135 PATH_TYPE@536..540
136 PATH@[536; 540) 136 PATH@536..540
137 PATH_SEGMENT@[536; 540) 137 PATH_SEGMENT@536..540
138 NAME_REF@[536; 540) 138 NAME_REF@536..540
139 IDENT@[536; 540) "bool" 139 IDENT@536..540 "bool"
140 WHITESPACE@[540; 541) " " 140 WHITESPACE@540..541 " "
141 BLOCK_EXPR@[541; 572) 141 BLOCK_EXPR@541..572
142 BLOCK@[541; 572) 142 BLOCK@541..572
143 L_CURLY@[541; 542) "{" 143 L_CURLY@541..542 "{"
144 WHITESPACE@[542; 543) " " 144 WHITESPACE@542..543 " "
145 LET_STMT@[543; 570) 145 LET_STMT@543..570
146 LET_KW@[543; 546) "let" 146 LET_KW@543..546 "let"
147 WHITESPACE@[546; 547) " " 147 WHITESPACE@546..547 " "
148 BIND_PAT@[547; 549) 148 BIND_PAT@547..549
149 NAME@[547; 549) 149 NAME@547..549
150 IDENT@[547; 549) "_x" 150 IDENT@547..549 "_x"
151 COLON@[549; 550) ":" 151 COLON@549..550 ":"
152 WHITESPACE@[550; 551) " " 152 WHITESPACE@550..551 " "
153 PATH_TYPE@[551; 555) 153 PATH_TYPE@551..555
154 PATH@[551; 555) 154 PATH@551..555
155 PATH_SEGMENT@[551; 555) 155 PATH_SEGMENT@551..555
156 NAME_REF@[551; 555) 156 NAME_REF@551..555
157 IDENT@[551; 555) "bool" 157 IDENT@551..555 "bool"
158 WHITESPACE@[555; 556) " " 158 WHITESPACE@555..556 " "
159 EQ@[556; 557) "=" 159 EQ@556..557 "="
160 WHITESPACE@[557; 558) " " 160 WHITESPACE@557..558 " "
161 RETURN_EXPR@[558; 569) 161 RETURN_EXPR@558..569
162 RETURN_KW@[558; 564) "return" 162 RETURN_KW@558..564 "return"
163 WHITESPACE@[564; 565) " " 163 WHITESPACE@564..565 " "
164 LITERAL@[565; 569) 164 LITERAL@565..569
165 TRUE_KW@[565; 569) "true" 165 TRUE_KW@565..569 "true"
166 SEMICOLON@[569; 570) ";" 166 SEMICOLON@569..570 ";"
167 WHITESPACE@[570; 571) " " 167 WHITESPACE@570..571 " "
168 R_CURLY@[571; 572) "}" 168 R_CURLY@571..572 "}"
169 WHITESPACE@[572; 574) "\n\n" 169 WHITESPACE@572..574 "\n\n"
170 FN_DEF@[574; 624) 170 FN_DEF@574..624
171 FN_KW@[574; 576) "fn" 171 FN_KW@574..576 "fn"
172 WHITESPACE@[576; 577) " " 172 WHITESPACE@576..577 " "
173 NAME@[577; 582) 173 NAME@577..582
174 IDENT@[577; 582) "funny" 174 IDENT@577..582 "funny"
175 PARAM_LIST@[582; 584) 175 PARAM_LIST@582..584
176 L_PAREN@[582; 583) "(" 176 L_PAREN@582..583 "("
177 R_PAREN@[583; 584) ")" 177 R_PAREN@583..584 ")"
178 WHITESPACE@[584; 585) " " 178 WHITESPACE@584..585 " "
179 BLOCK_EXPR@[585; 624) 179 BLOCK_EXPR@585..624
180 BLOCK@[585; 624) 180 BLOCK@585..624
181 L_CURLY@[585; 586) "{" 181 L_CURLY@585..586 "{"
182 WHITESPACE@[586; 591) "\n " 182 WHITESPACE@586..591 "\n "
183 FN_DEF@[591; 607) 183 FN_DEF@591..607
184 FN_KW@[591; 593) "fn" 184 FN_KW@591..593 "fn"
185 WHITESPACE@[593; 594) " " 185 WHITESPACE@593..594 " "
186 NAME@[594; 595) 186 NAME@594..595
187 IDENT@[594; 595) "f" 187 IDENT@594..595 "f"
188 PARAM_LIST@[595; 603) 188 PARAM_LIST@595..603
189 L_PAREN@[595; 596) "(" 189 L_PAREN@595..596 "("
190 PARAM@[596; 602) 190 PARAM@596..602
191 BIND_PAT@[596; 598) 191 BIND_PAT@596..598
192 NAME@[596; 598) 192 NAME@596..598
193 IDENT@[596; 598) "_x" 193 IDENT@596..598 "_x"
194 COLON@[598; 599) ":" 194 COLON@598..599 ":"
195 WHITESPACE@[599; 600) " " 195 WHITESPACE@599..600 " "
196 TUPLE_TYPE@[600; 602) 196 TUPLE_TYPE@600..602
197 L_PAREN@[600; 601) "(" 197 L_PAREN@600..601 "("
198 R_PAREN@[601; 602) ")" 198 R_PAREN@601..602 ")"
199 R_PAREN@[602; 603) ")" 199 R_PAREN@602..603 ")"
200 WHITESPACE@[603; 604) " " 200 WHITESPACE@603..604 " "
201 BLOCK_EXPR@[604; 607) 201 BLOCK_EXPR@604..607
202 BLOCK@[604; 607) 202 BLOCK@604..607
203 L_CURLY@[604; 605) "{" 203 L_CURLY@604..605 "{"
204 WHITESPACE@[605; 606) " " 204 WHITESPACE@605..606 " "
205 R_CURLY@[606; 607) "}" 205 R_CURLY@606..607 "}"
206 WHITESPACE@[607; 612) "\n " 206 WHITESPACE@607..612 "\n "
207 EXPR_STMT@[612; 622) 207 EXPR_STMT@612..622
208 CALL_EXPR@[612; 621) 208 CALL_EXPR@612..621
209 PATH_EXPR@[612; 613) 209 PATH_EXPR@612..613
210 PATH@[612; 613) 210 PATH@612..613
211 PATH_SEGMENT@[612; 613) 211 PATH_SEGMENT@612..613
212 NAME_REF@[612; 613) 212 NAME_REF@612..613
213 IDENT@[612; 613) "f" 213 IDENT@612..613 "f"
214 ARG_LIST@[613; 621) 214 ARG_LIST@613..621
215 L_PAREN@[613; 614) "(" 215 L_PAREN@613..614 "("
216 RETURN_EXPR@[614; 620) 216 RETURN_EXPR@614..620
217 RETURN_KW@[614; 620) "return" 217 RETURN_KW@614..620 "return"
218 R_PAREN@[620; 621) ")" 218 R_PAREN@620..621 ")"
219 SEMICOLON@[621; 622) ";" 219 SEMICOLON@621..622 ";"
220 WHITESPACE@[622; 623) "\n" 220 WHITESPACE@622..623 "\n"
221 R_CURLY@[623; 624) "}" 221 R_CURLY@623..624 "}"
222 WHITESPACE@[624; 626) "\n\n" 222 WHITESPACE@624..626 "\n\n"
223 FN_DEF@[626; 816) 223 FN_DEF@626..816
224 FN_KW@[626; 628) "fn" 224 FN_KW@626..628 "fn"
225 WHITESPACE@[628; 629) " " 225 WHITESPACE@628..629 " "
226 NAME@[629; 633) 226 NAME@629..633
227 IDENT@[629; 633) "what" 227 IDENT@629..633 "what"
228 PARAM_LIST@[633; 635) 228 PARAM_LIST@633..635
229 L_PAREN@[633; 634) "(" 229 L_PAREN@633..634 "("
230 R_PAREN@[634; 635) ")" 230 R_PAREN@634..635 ")"
231 WHITESPACE@[635; 636) " " 231 WHITESPACE@635..636 " "
232 BLOCK_EXPR@[636; 816) 232 BLOCK_EXPR@636..816
233 BLOCK@[636; 816) 233 BLOCK@636..816
234 L_CURLY@[636; 637) "{" 234 L_CURLY@636..637 "{"
235 WHITESPACE@[637; 642) "\n " 235 WHITESPACE@637..642 "\n "
236 FN_DEF@[642; 720) 236 FN_DEF@642..720
237 FN_KW@[642; 644) "fn" 237 FN_KW@642..644 "fn"
238 WHITESPACE@[644; 645) " " 238 WHITESPACE@644..645 " "
239 NAME@[645; 648) 239 NAME@645..648
240 IDENT@[645; 648) "the" 240 IDENT@645..648 "the"
241 PARAM_LIST@[648; 664) 241 PARAM_LIST@648..664
242 L_PAREN@[648; 649) "(" 242 L_PAREN@648..649 "("
243 PARAM@[649; 663) 243 PARAM@649..663
244 BIND_PAT@[649; 650) 244 BIND_PAT@649..650
245 NAME@[649; 650) 245 NAME@649..650
246 IDENT@[649; 650) "x" 246 IDENT@649..650 "x"
247 COLON@[650; 651) ":" 247 COLON@650..651 ":"
248 WHITESPACE@[651; 652) " " 248 WHITESPACE@651..652 " "
249 REFERENCE_TYPE@[652; 663) 249 REFERENCE_TYPE@652..663
250 AMP@[652; 653) "&" 250 AMP@652..653 "&"
251 PATH_TYPE@[653; 663) 251 PATH_TYPE@653..663
252 PATH@[653; 663) 252 PATH@653..663
253 PATH_SEGMENT@[653; 663) 253 PATH_SEGMENT@653..663
254 NAME_REF@[653; 657) 254 NAME_REF@653..657
255 IDENT@[653; 657) "Cell" 255 IDENT@653..657 "Cell"
256 TYPE_ARG_LIST@[657; 663) 256 TYPE_ARG_LIST@657..663
257 L_ANGLE@[657; 658) "<" 257 L_ANGLE@657..658 "<"
258 TYPE_ARG@[658; 662) 258 TYPE_ARG@658..662
259 PATH_TYPE@[658; 662) 259 PATH_TYPE@658..662
260 PATH@[658; 662) 260 PATH@658..662
261 PATH_SEGMENT@[658; 662) 261 PATH_SEGMENT@658..662
262 NAME_REF@[658; 662) 262 NAME_REF@658..662
263 IDENT@[658; 662) "bool" 263 IDENT@658..662 "bool"
264 R_ANGLE@[662; 663) ">" 264 R_ANGLE@662..663 ">"
265 R_PAREN@[663; 664) ")" 265 R_PAREN@663..664 ")"
266 WHITESPACE@[664; 665) " " 266 WHITESPACE@664..665 " "
267 BLOCK_EXPR@[665; 720) 267 BLOCK_EXPR@665..720
268 BLOCK@[665; 720) 268 BLOCK@665..720
269 L_CURLY@[665; 666) "{" 269 L_CURLY@665..666 "{"
270 WHITESPACE@[666; 675) "\n " 270 WHITESPACE@666..675 "\n "
271 EXPR_STMT@[675; 714) 271 EXPR_STMT@675..714
272 RETURN_EXPR@[675; 713) 272 RETURN_EXPR@675..713
273 RETURN_KW@[675; 681) "return" 273 RETURN_KW@675..681 "return"
274 WHITESPACE@[681; 682) " " 274 WHITESPACE@681..682 " "
275 WHILE_EXPR@[682; 713) 275 WHILE_EXPR@682..713
276 WHILE_KW@[682; 687) "while" 276 WHILE_KW@682..687 "while"
277 WHITESPACE@[687; 688) " " 277 WHITESPACE@687..688 " "
278 CONDITION@[688; 696) 278 CONDITION@688..696
279 PREFIX_EXPR@[688; 696) 279 PREFIX_EXPR@688..696
280 BANG@[688; 689) "!" 280 BANG@688..689 "!"
281 METHOD_CALL_EXPR@[689; 696) 281 METHOD_CALL_EXPR@689..696
282 PATH_EXPR@[689; 690) 282 PATH_EXPR@689..690
283 PATH@[689; 690) 283 PATH@689..690
284 PATH_SEGMENT@[689; 690) 284 PATH_SEGMENT@689..690
285 NAME_REF@[689; 690) 285 NAME_REF@689..690
286 IDENT@[689; 690) "x" 286 IDENT@689..690 "x"
287 DOT@[690; 691) "." 287 DOT@690..691 "."
288 NAME_REF@[691; 694) 288 NAME_REF@691..694
289 IDENT@[691; 694) "get" 289 IDENT@691..694 "get"
290 ARG_LIST@[694; 696) 290 ARG_LIST@694..696
291 L_PAREN@[694; 695) "(" 291 L_PAREN@694..695 "("
292 R_PAREN@[695; 696) ")" 292 R_PAREN@695..696 ")"
293 WHITESPACE@[696; 697) " " 293 WHITESPACE@696..697 " "
294 BLOCK_EXPR@[697; 713) 294 BLOCK_EXPR@697..713
295 BLOCK@[697; 713) 295 BLOCK@697..713
296 L_CURLY@[697; 698) "{" 296 L_CURLY@697..698 "{"
297 WHITESPACE@[698; 699) " " 297 WHITESPACE@698..699 " "
298 EXPR_STMT@[699; 711) 298 EXPR_STMT@699..711
299 METHOD_CALL_EXPR@[699; 710) 299 METHOD_CALL_EXPR@699..710
300 PATH_EXPR@[699; 700) 300 PATH_EXPR@699..700
301 PATH@[699; 700) 301 PATH@699..700
302 PATH_SEGMENT@[699; 700) 302 PATH_SEGMENT@699..700
303 NAME_REF@[699; 700) 303 NAME_REF@699..700
304 IDENT@[699; 700) "x" 304 IDENT@699..700 "x"
305 DOT@[700; 701) "." 305 DOT@700..701 "."
306 NAME_REF@[701; 704) 306 NAME_REF@701..704
307 IDENT@[701; 704) "set" 307 IDENT@701..704 "set"
308 ARG_LIST@[704; 710) 308 ARG_LIST@704..710
309 L_PAREN@[704; 705) "(" 309 L_PAREN@704..705 "("
310 LITERAL@[705; 709) 310 LITERAL@705..709
311 TRUE_KW@[705; 709) "true" 311 TRUE_KW@705..709 "true"
312 R_PAREN@[709; 710) ")" 312 R_PAREN@709..710 ")"
313 SEMICOLON@[710; 711) ";" 313 SEMICOLON@710..711 ";"
314 WHITESPACE@[711; 712) " " 314 WHITESPACE@711..712 " "
315 R_CURLY@[712; 713) "}" 315 R_CURLY@712..713 "}"
316 SEMICOLON@[713; 714) ";" 316 SEMICOLON@713..714 ";"
317 WHITESPACE@[714; 719) "\n " 317 WHITESPACE@714..719 "\n "
318 R_CURLY@[719; 720) "}" 318 R_CURLY@719..720 "}"
319 WHITESPACE@[720; 725) "\n " 319 WHITESPACE@720..725 "\n "
320 LET_STMT@[725; 751) 320 LET_STMT@725..751
321 LET_KW@[725; 728) "let" 321 LET_KW@725..728 "let"
322 WHITESPACE@[728; 729) " " 322 WHITESPACE@728..729 " "
323 BIND_PAT@[729; 730) 323 BIND_PAT@729..730
324 NAME@[729; 730) 324 NAME@729..730
325 IDENT@[729; 730) "i" 325 IDENT@729..730 "i"
326 WHITESPACE@[730; 731) " " 326 WHITESPACE@730..731 " "
327 EQ@[731; 732) "=" 327 EQ@731..732 "="
328 WHITESPACE@[732; 733) " " 328 WHITESPACE@732..733 " "
329 REF_EXPR@[733; 750) 329 REF_EXPR@733..750
330 AMP@[733; 734) "&" 330 AMP@733..734 "&"
331 CALL_EXPR@[734; 750) 331 CALL_EXPR@734..750
332 PATH_EXPR@[734; 743) 332 PATH_EXPR@734..743
333 PATH@[734; 743) 333 PATH@734..743
334 PATH@[734; 738) 334 PATH@734..738
335 PATH_SEGMENT@[734; 738) 335 PATH_SEGMENT@734..738
336 NAME_REF@[734; 738) 336 NAME_REF@734..738
337 IDENT@[734; 738) "Cell" 337 IDENT@734..738 "Cell"
338 COLON2@[738; 740) "::" 338 COLON2@738..740 "::"
339 PATH_SEGMENT@[740; 743) 339 PATH_SEGMENT@740..743
340 NAME_REF@[740; 743) 340 NAME_REF@740..743
341 IDENT@[740; 743) "new" 341 IDENT@740..743 "new"
342 ARG_LIST@[743; 750) 342 ARG_LIST@743..750
343 L_PAREN@[743; 744) "(" 343 L_PAREN@743..744 "("
344 LITERAL@[744; 749) 344 LITERAL@744..749
345 FALSE_KW@[744; 749) "false" 345 FALSE_KW@744..749 "false"
346 R_PAREN@[749; 750) ")" 346 R_PAREN@749..750 ")"
347 SEMICOLON@[750; 751) ";" 347 SEMICOLON@750..751 ";"
348 WHITESPACE@[751; 756) "\n " 348 WHITESPACE@751..756 "\n "
349 LET_STMT@[756; 778) 349 LET_STMT@756..778
350 LET_KW@[756; 759) "let" 350 LET_KW@756..759 "let"
351 WHITESPACE@[759; 760) " " 351 WHITESPACE@759..760 " "
352 BIND_PAT@[760; 764) 352 BIND_PAT@760..764
353 NAME@[760; 764) 353 NAME@760..764
354 IDENT@[760; 764) "dont" 354 IDENT@760..764 "dont"
355 WHITESPACE@[764; 765) " " 355 WHITESPACE@764..765 " "
356 EQ@[765; 766) "=" 356 EQ@765..766 "="
357 WHITESPACE@[766; 767) " " 357 WHITESPACE@766..767 " "
358 BLOCK_EXPR@[767; 777) 358 BLOCK_EXPR@767..777
359 BLOCK@[767; 777) 359 BLOCK@767..777
360 L_CURLY@[767; 768) "{" 360 L_CURLY@767..768 "{"
361 LAMBDA_EXPR@[768; 776) 361 LAMBDA_EXPR@768..776
362 PARAM_LIST@[768; 770) 362 PARAM_LIST@768..770
363 PIPE@[768; 769) "|" 363 PIPE@768..769 "|"
364 PIPE@[769; 770) "|" 364 PIPE@769..770 "|"
365 CALL_EXPR@[770; 776) 365 CALL_EXPR@770..776
366 PATH_EXPR@[770; 773) 366 PATH_EXPR@770..773
367 PATH@[770; 773) 367 PATH@770..773
368 PATH_SEGMENT@[770; 773) 368 PATH_SEGMENT@770..773
369 NAME_REF@[770; 773) 369 NAME_REF@770..773
370 IDENT@[770; 773) "the" 370 IDENT@770..773 "the"
371 ARG_LIST@[773; 776) 371 ARG_LIST@773..776
372 L_PAREN@[773; 774) "(" 372 L_PAREN@773..774 "("
373 PATH_EXPR@[774; 775) 373 PATH_EXPR@774..775
374 PATH@[774; 775) 374 PATH@774..775
375 PATH_SEGMENT@[774; 775) 375 PATH_SEGMENT@774..775
376 NAME_REF@[774; 775) 376 NAME_REF@774..775
377 IDENT@[774; 775) "i" 377 IDENT@774..775 "i"
378 R_PAREN@[775; 776) ")" 378 R_PAREN@775..776 ")"
379 R_CURLY@[776; 777) "}" 379 R_CURLY@776..777 "}"
380 SEMICOLON@[777; 778) ";" 380 SEMICOLON@777..778 ";"
381 WHITESPACE@[778; 783) "\n " 381 WHITESPACE@778..783 "\n "
382 EXPR_STMT@[783; 790) 382 EXPR_STMT@783..790
383 CALL_EXPR@[783; 789) 383 CALL_EXPR@783..789
384 PATH_EXPR@[783; 787) 384 PATH_EXPR@783..787
385 PATH@[783; 787) 385 PATH@783..787
386 PATH_SEGMENT@[783; 787) 386 PATH_SEGMENT@783..787
387 NAME_REF@[783; 787) 387 NAME_REF@783..787
388 IDENT@[783; 787) "dont" 388 IDENT@783..787 "dont"
389 ARG_LIST@[787; 789) 389 ARG_LIST@787..789
390 L_PAREN@[787; 788) "(" 390 L_PAREN@787..788 "("
391 R_PAREN@[788; 789) ")" 391 R_PAREN@788..789 ")"
392 SEMICOLON@[789; 790) ";" 392 SEMICOLON@789..790 ";"
393 WHITESPACE@[790; 795) "\n " 393 WHITESPACE@790..795 "\n "
394 EXPR_STMT@[795; 814) 394 EXPR_STMT@795..814
395 MACRO_CALL@[795; 813) 395 MACRO_CALL@795..813
396 PATH@[795; 801) 396 PATH@795..801
397 PATH_SEGMENT@[795; 801) 397 PATH_SEGMENT@795..801
398 NAME_REF@[795; 801) 398 NAME_REF@795..801
399 IDENT@[795; 801) "assert" 399 IDENT@795..801 "assert"
400 BANG@[801; 802) "!" 400 BANG@801..802 "!"
401 TOKEN_TREE@[802; 813) 401 TOKEN_TREE@802..813
402 L_PAREN@[802; 803) "(" 402 L_PAREN@802..803 "("
403 TOKEN_TREE@[803; 812) 403 TOKEN_TREE@803..812
404 L_PAREN@[803; 804) "(" 404 L_PAREN@803..804 "("
405 IDENT@[804; 805) "i" 405 IDENT@804..805 "i"
406 DOT@[805; 806) "." 406 DOT@805..806 "."
407 IDENT@[806; 809) "get" 407 IDENT@806..809 "get"
408 TOKEN_TREE@[809; 811) 408 TOKEN_TREE@809..811
409 L_PAREN@[809; 810) "(" 409 L_PAREN@809..810 "("
410 R_PAREN@[810; 811) ")" 410 R_PAREN@810..811 ")"
411 R_PAREN@[811; 812) ")" 411 R_PAREN@811..812 ")"
412 R_PAREN@[812; 813) ")" 412 R_PAREN@812..813 ")"
413 SEMICOLON@[813; 814) ";" 413 SEMICOLON@813..814 ";"
414 WHITESPACE@[814; 815) "\n" 414 WHITESPACE@814..815 "\n"
415 R_CURLY@[815; 816) "}" 415 R_CURLY@815..816 "}"
416 WHITESPACE@[816; 818) "\n\n" 416 WHITESPACE@816..818 "\n\n"
417 FN_DEF@[818; 1322) 417 FN_DEF@818..1322
418 FN_KW@[818; 820) "fn" 418 FN_KW@818..820 "fn"
419 WHITESPACE@[820; 821) " " 419 WHITESPACE@820..821 " "
420 NAME@[821; 832) 420 NAME@821..832
421 IDENT@[821; 832) "zombiejesus" 421 IDENT@821..832 "zombiejesus"
422 PARAM_LIST@[832; 834) 422 PARAM_LIST@832..834
423 L_PAREN@[832; 833) "(" 423 L_PAREN@832..833 "("
424 R_PAREN@[833; 834) ")" 424 R_PAREN@833..834 ")"
425 WHITESPACE@[834; 835) " " 425 WHITESPACE@834..835 " "
426 BLOCK_EXPR@[835; 1322) 426 BLOCK_EXPR@835..1322
427 BLOCK@[835; 1322) 427 BLOCK@835..1322
428 L_CURLY@[835; 836) "{" 428 L_CURLY@835..836 "{"
429 WHITESPACE@[836; 841) "\n " 429 WHITESPACE@836..841 "\n "
430 LOOP_EXPR@[841; 1320) 430 LOOP_EXPR@841..1320
431 LOOP_KW@[841; 845) "loop" 431 LOOP_KW@841..845 "loop"
432 WHITESPACE@[845; 846) " " 432 WHITESPACE@845..846 " "
433 BLOCK_EXPR@[846; 1320) 433 BLOCK_EXPR@846..1320
434 BLOCK@[846; 1320) 434 BLOCK@846..1320
435 L_CURLY@[846; 847) "{" 435 L_CURLY@846..847 "{"
436 WHITESPACE@[847; 856) "\n " 436 WHITESPACE@847..856 "\n "
437 EXPR_STMT@[856; 1283) 437 EXPR_STMT@856..1283
438 WHILE_EXPR@[856; 1283) 438 WHILE_EXPR@856..1283
439 WHILE_KW@[856; 861) "while" 439 WHILE_KW@856..861 "while"
440 WHITESPACE@[861; 862) " " 440 WHITESPACE@861..862 " "
441 CONDITION@[862; 870) 441 CONDITION@862..870
442 PAREN_EXPR@[862; 870) 442 PAREN_EXPR@862..870
443 L_PAREN@[862; 863) "(" 443 L_PAREN@862..863 "("
444 RETURN_EXPR@[863; 869) 444 RETURN_EXPR@863..869
445 RETURN_KW@[863; 869) "return" 445 RETURN_KW@863..869 "return"
446 R_PAREN@[869; 870) ")" 446 R_PAREN@869..870 ")"
447 WHITESPACE@[870; 871) " " 447 WHITESPACE@870..871 " "
448 BLOCK_EXPR@[871; 1283) 448 BLOCK_EXPR@871..1283
449 BLOCK@[871; 1283) 449 BLOCK@871..1283
450 L_CURLY@[871; 872) "{" 450 L_CURLY@871..872 "{"
451 WHITESPACE@[872; 885) "\n " 451 WHITESPACE@872..885 "\n "
452 IF_EXPR@[885; 1273) 452 IF_EXPR@885..1273
453 IF_KW@[885; 887) "if" 453 IF_KW@885..887 "if"
454 WHITESPACE@[887; 888) " " 454 WHITESPACE@887..888 " "
455 CONDITION@[888; 896) 455 CONDITION@888..896
456 PAREN_EXPR@[888; 896) 456 PAREN_EXPR@888..896
457 L_PAREN@[888; 889) "(" 457 L_PAREN@888..889 "("
458 RETURN_EXPR@[889; 895) 458 RETURN_EXPR@889..895
459 RETURN_KW@[889; 895) "return" 459 RETURN_KW@889..895 "return"
460 R_PAREN@[895; 896) ")" 460 R_PAREN@895..896 ")"
461 WHITESPACE@[896; 897) " " 461 WHITESPACE@896..897 " "
462 BLOCK_EXPR@[897; 1216) 462 BLOCK_EXPR@897..1216
463 BLOCK@[897; 1216) 463 BLOCK@897..1216
464 L_CURLY@[897; 898) "{" 464 L_CURLY@897..898 "{"
465 WHITESPACE@[898; 915) "\n " 465 WHITESPACE@898..915 "\n "
466 EXPR_STMT@[915; 1202) 466 EXPR_STMT@915..1202
467 MATCH_EXPR@[915; 1201) 467 MATCH_EXPR@915..1201
468 MATCH_KW@[915; 920) "match" 468 MATCH_KW@915..920 "match"
469 WHITESPACE@[920; 921) " " 469 WHITESPACE@920..921 " "
470 PAREN_EXPR@[921; 929) 470 PAREN_EXPR@921..929
471 L_PAREN@[921; 922) "(" 471 L_PAREN@921..922 "("
472 RETURN_EXPR@[922; 928) 472 RETURN_EXPR@922..928
473 RETURN_KW@[922; 928) "return" 473 RETURN_KW@922..928 "return"
474 R_PAREN@[928; 929) ")" 474 R_PAREN@928..929 ")"
475 WHITESPACE@[929; 930) " " 475 WHITESPACE@929..930 " "
476 MATCH_ARM_LIST@[930; 1201) 476 MATCH_ARM_LIST@930..1201
477 L_CURLY@[930; 931) "{" 477 L_CURLY@930..931 "{"
478 WHITESPACE@[931; 952) "\n " 478 WHITESPACE@931..952 "\n "
479 MATCH_ARM@[952; 1147) 479 MATCH_ARM@952..1147
480 LITERAL_PAT@[952; 953) 480 LITERAL_PAT@952..953
481 LITERAL@[952; 953) 481 LITERAL@952..953
482 INT_NUMBER@[952; 953) "1" 482 INT_NUMBER@952..953 "1"
483 WHITESPACE@[953; 954) " " 483 WHITESPACE@953..954 " "
484 FAT_ARROW@[954; 956) "=>" 484 FAT_ARROW@954..956 "=>"
485 WHITESPACE@[956; 957) " " 485 WHITESPACE@956..957 " "
486 BLOCK_EXPR@[957; 1147) 486 BLOCK_EXPR@957..1147
487 BLOCK@[957; 1147) 487 BLOCK@957..1147
488 L_CURLY@[957; 958) "{" 488 L_CURLY@957..958 "{"
489 WHITESPACE@[958; 983) "\n ..." 489 WHITESPACE@958..983 "\n ..."
490 IF_EXPR@[983; 1125) 490 IF_EXPR@983..1125
491 IF_KW@[983; 985) "if" 491 IF_KW@983..985 "if"
492 WHITESPACE@[985; 986) " " 492 WHITESPACE@985..986 " "
493 CONDITION@[986; 994) 493 CONDITION@986..994
494 PAREN_EXPR@[986; 994) 494 PAREN_EXPR@986..994
495 L_PAREN@[986; 987) "(" 495 L_PAREN@986..987 "("
496 RETURN_EXPR@[987; 993) 496 RETURN_EXPR@987..993
497 RETURN_KW@[987; 993) "return" 497 RETURN_KW@987..993 "return"
498 R_PAREN@[993; 994) ")" 498 R_PAREN@993..994 ")"
499 WHITESPACE@[994; 995) " " 499 WHITESPACE@994..995 " "
500 BLOCK_EXPR@[995; 1057) 500 BLOCK_EXPR@995..1057
501 BLOCK@[995; 1057) 501 BLOCK@995..1057
502 L_CURLY@[995; 996) "{" 502 L_CURLY@995..996 "{"
503 WHITESPACE@[996; 1025) "\n ..." 503 WHITESPACE@996..1025 "\n ..."
504 RETURN_EXPR@[1025; 1031) 504 RETURN_EXPR@1025..1031
505 RETURN_KW@[1025; 1031) "return" 505 RETURN_KW@1025..1031 "return"
506 WHITESPACE@[1031; 1056) "\n ..." 506 WHITESPACE@1031..1056 "\n ..."
507 R_CURLY@[1056; 1057) "}" 507 R_CURLY@1056..1057 "}"
508 WHITESPACE@[1057; 1058) " " 508 WHITESPACE@1057..1058 " "
509 ELSE_KW@[1058; 1062) "else" 509 ELSE_KW@1058..1062 "else"
510 WHITESPACE@[1062; 1063) " " 510 WHITESPACE@1062..1063 " "
511 BLOCK_EXPR@[1063; 1125) 511 BLOCK_EXPR@1063..1125
512 BLOCK@[1063; 1125) 512 BLOCK@1063..1125
513 L_CURLY@[1063; 1064) "{" 513 L_CURLY@1063..1064 "{"
514 WHITESPACE@[1064; 1093) "\n ..." 514 WHITESPACE@1064..1093 "\n ..."
515 RETURN_EXPR@[1093; 1099) 515 RETURN_EXPR@1093..1099
516 RETURN_KW@[1093; 1099) "return" 516 RETURN_KW@1093..1099 "return"
517 WHITESPACE@[1099; 1124) "\n ..." 517 WHITESPACE@1099..1124 "\n ..."
518 R_CURLY@[1124; 1125) "}" 518 R_CURLY@1124..1125 "}"
519 WHITESPACE@[1125; 1146) "\n " 519 WHITESPACE@1125..1146 "\n "
520 R_CURLY@[1146; 1147) "}" 520 R_CURLY@1146..1147 "}"
521 WHITESPACE@[1147; 1168) "\n " 521 WHITESPACE@1147..1168 "\n "
522 MATCH_ARM@[1168; 1183) 522 MATCH_ARM@1168..1183
523 PLACEHOLDER_PAT@[1168; 1169) 523 PLACEHOLDER_PAT@1168..1169
524 UNDERSCORE@[1168; 1169) "_" 524 UNDERSCORE@1168..1169 "_"
525 WHITESPACE@[1169; 1170) " " 525 WHITESPACE@1169..1170 " "
526 FAT_ARROW@[1170; 1172) "=>" 526 FAT_ARROW@1170..1172 "=>"
527 WHITESPACE@[1172; 1173) " " 527 WHITESPACE@1172..1173 " "
528 BLOCK_EXPR@[1173; 1183) 528 BLOCK_EXPR@1173..1183
529 BLOCK@[1173; 1183) 529 BLOCK@1173..1183
530 L_CURLY@[1173; 1174) "{" 530 L_CURLY@1173..1174 "{"
531 WHITESPACE@[1174; 1175) " " 531 WHITESPACE@1174..1175 " "
532 RETURN_EXPR@[1175; 1181) 532 RETURN_EXPR@1175..1181
533 RETURN_KW@[1175; 1181) "return" 533 RETURN_KW@1175..1181 "return"
534 WHITESPACE@[1181; 1182) " " 534 WHITESPACE@1181..1182 " "
535 R_CURLY@[1182; 1183) "}" 535 R_CURLY@1182..1183 "}"
536 WHITESPACE@[1183; 1200) "\n " 536 WHITESPACE@1183..1200 "\n "
537 R_CURLY@[1200; 1201) "}" 537 R_CURLY@1200..1201 "}"
538 SEMICOLON@[1201; 1202) ";" 538 SEMICOLON@1201..1202 ";"
539 WHITESPACE@[1202; 1215) "\n " 539 WHITESPACE@1202..1215 "\n "
540 R_CURLY@[1215; 1216) "}" 540 R_CURLY@1215..1216 "}"
541 WHITESPACE@[1216; 1217) " " 541 WHITESPACE@1216..1217 " "
542 ELSE_KW@[1217; 1221) "else" 542 ELSE_KW@1217..1221 "else"
543 WHITESPACE@[1221; 1222) " " 543 WHITESPACE@1221..1222 " "
544 IF_EXPR@[1222; 1273) 544 IF_EXPR@1222..1273
545 IF_KW@[1222; 1224) "if" 545 IF_KW@1222..1224 "if"
546 WHITESPACE@[1224; 1225) " " 546 WHITESPACE@1224..1225 " "
547 CONDITION@[1225; 1233) 547 CONDITION@1225..1233
548 PAREN_EXPR@[1225; 1233) 548 PAREN_EXPR@1225..1233
549 L_PAREN@[1225; 1226) "(" 549 L_PAREN@1225..1226 "("
550 RETURN_EXPR@[1226; 1232) 550 RETURN_EXPR@1226..1232
551 RETURN_KW@[1226; 1232) "return" 551 RETURN_KW@1226..1232 "return"
552 R_PAREN@[1232; 1233) ")" 552 R_PAREN@1232..1233 ")"
553 WHITESPACE@[1233; 1234) " " 553 WHITESPACE@1233..1234 " "
554 BLOCK_EXPR@[1234; 1273) 554 BLOCK_EXPR@1234..1273
555 BLOCK@[1234; 1273) 555 BLOCK@1234..1273
556 L_CURLY@[1234; 1235) "{" 556 L_CURLY@1234..1235 "{"
557 WHITESPACE@[1235; 1252) "\n " 557 WHITESPACE@1235..1252 "\n "
558 EXPR_STMT@[1252; 1259) 558 EXPR_STMT@1252..1259
559 RETURN_EXPR@[1252; 1258) 559 RETURN_EXPR@1252..1258
560 RETURN_KW@[1252; 1258) "return" 560 RETURN_KW@1252..1258 "return"
561 SEMICOLON@[1258; 1259) ";" 561 SEMICOLON@1258..1259 ";"
562 WHITESPACE@[1259; 1272) "\n " 562 WHITESPACE@1259..1272 "\n "
563 R_CURLY@[1272; 1273) "}" 563 R_CURLY@1272..1273 "}"
564 WHITESPACE@[1273; 1282) "\n " 564 WHITESPACE@1273..1282 "\n "
565 R_CURLY@[1282; 1283) "}" 565 R_CURLY@1282..1283 "}"
566 WHITESPACE@[1283; 1292) "\n " 566 WHITESPACE@1283..1292 "\n "
567 IF_EXPR@[1292; 1314) 567 IF_EXPR@1292..1314
568 IF_KW@[1292; 1294) "if" 568 IF_KW@1292..1294 "if"
569 WHITESPACE@[1294; 1295) " " 569 WHITESPACE@1294..1295 " "
570 CONDITION@[1295; 1303) 570 CONDITION@1295..1303
571 PAREN_EXPR@[1295; 1303) 571 PAREN_EXPR@1295..1303
572 L_PAREN@[1295; 1296) "(" 572 L_PAREN@1295..1296 "("
573 RETURN_EXPR@[1296; 1302) 573 RETURN_EXPR@1296..1302
574 RETURN_KW@[1296; 1302) "return" 574 RETURN_KW@1296..1302 "return"
575 R_PAREN@[1302; 1303) ")" 575 R_PAREN@1302..1303 ")"
576 WHITESPACE@[1303; 1304) " " 576 WHITESPACE@1303..1304 " "
577 BLOCK_EXPR@[1304; 1314) 577 BLOCK_EXPR@1304..1314
578 BLOCK@[1304; 1314) 578 BLOCK@1304..1314
579 L_CURLY@[1304; 1305) "{" 579 L_CURLY@1304..1305 "{"
580 WHITESPACE@[1305; 1306) " " 580 WHITESPACE@1305..1306 " "
581 EXPR_STMT@[1306; 1312) 581 EXPR_STMT@1306..1312
582 BREAK_EXPR@[1306; 1311) 582 BREAK_EXPR@1306..1311
583 BREAK_KW@[1306; 1311) "break" 583 BREAK_KW@1306..1311 "break"
584 SEMICOLON@[1311; 1312) ";" 584 SEMICOLON@1311..1312 ";"
585 WHITESPACE@[1312; 1313) " " 585 WHITESPACE@1312..1313 " "
586 R_CURLY@[1313; 1314) "}" 586 R_CURLY@1313..1314 "}"
587 WHITESPACE@[1314; 1319) "\n " 587 WHITESPACE@1314..1319 "\n "
588 R_CURLY@[1319; 1320) "}" 588 R_CURLY@1319..1320 "}"
589 WHITESPACE@[1320; 1321) "\n" 589 WHITESPACE@1320..1321 "\n"
590 R_CURLY@[1321; 1322) "}" 590 R_CURLY@1321..1322 "}"
591 WHITESPACE@[1322; 1324) "\n\n" 591 WHITESPACE@1322..1324 "\n\n"
592 FN_DEF@[1324; 1539) 592 FN_DEF@1324..1539
593 FN_KW@[1324; 1326) "fn" 593 FN_KW@1324..1326 "fn"
594 WHITESPACE@[1326; 1327) " " 594 WHITESPACE@1326..1327 " "
595 NAME@[1327; 1334) 595 NAME@1327..1334
596 IDENT@[1327; 1334) "notsure" 596 IDENT@1327..1334 "notsure"
597 PARAM_LIST@[1334; 1336) 597 PARAM_LIST@1334..1336
598 L_PAREN@[1334; 1335) "(" 598 L_PAREN@1334..1335 "("
599 R_PAREN@[1335; 1336) ")" 599 R_PAREN@1335..1336 ")"
600 WHITESPACE@[1336; 1337) " " 600 WHITESPACE@1336..1337 " "
601 BLOCK_EXPR@[1337; 1539) 601 BLOCK_EXPR@1337..1539
602 BLOCK@[1337; 1539) 602 BLOCK@1337..1539
603 L_CURLY@[1337; 1338) "{" 603 L_CURLY@1337..1338 "{"
604 WHITESPACE@[1338; 1343) "\n " 604 WHITESPACE@1338..1343 "\n "
605 LET_STMT@[1343; 1361) 605 LET_STMT@1343..1361
606 LET_KW@[1343; 1346) "let" 606 LET_KW@1343..1346 "let"
607 WHITESPACE@[1346; 1347) " " 607 WHITESPACE@1346..1347 " "
608 BIND_PAT@[1347; 1353) 608 BIND_PAT@1347..1353
609 MUT_KW@[1347; 1350) "mut" 609 MUT_KW@1347..1350 "mut"
610 WHITESPACE@[1350; 1351) " " 610 WHITESPACE@1350..1351 " "
611 NAME@[1351; 1353) 611 NAME@1351..1353
612 IDENT@[1351; 1353) "_x" 612 IDENT@1351..1353 "_x"
613 COLON@[1353; 1354) ":" 613 COLON@1353..1354 ":"
614 WHITESPACE@[1354; 1355) " " 614 WHITESPACE@1354..1355 " "
615 PATH_TYPE@[1355; 1360) 615 PATH_TYPE@1355..1360
616 PATH@[1355; 1360) 616 PATH@1355..1360
617 PATH_SEGMENT@[1355; 1360) 617 PATH_SEGMENT@1355..1360
618 NAME_REF@[1355; 1360) 618 NAME_REF@1355..1360
619 IDENT@[1355; 1360) "isize" 619 IDENT@1355..1360 "isize"
620 SEMICOLON@[1360; 1361) ";" 620 SEMICOLON@1360..1361 ";"
621 WHITESPACE@[1361; 1366) "\n " 621 WHITESPACE@1361..1366 "\n "
622 LET_STMT@[1366; 1400) 622 LET_STMT@1366..1400
623 LET_KW@[1366; 1369) "let" 623 LET_KW@1366..1369 "let"
624 WHITESPACE@[1369; 1370) " " 624 WHITESPACE@1369..1370 " "
625 BIND_PAT@[1370; 1376) 625 BIND_PAT@1370..1376
626 MUT_KW@[1370; 1373) "mut" 626 MUT_KW@1370..1373 "mut"
627 WHITESPACE@[1373; 1374) " " 627 WHITESPACE@1373..1374 " "
628 NAME@[1374; 1376) 628 NAME@1374..1376
629 IDENT@[1374; 1376) "_y" 629 IDENT@1374..1376 "_y"
630 WHITESPACE@[1376; 1377) " " 630 WHITESPACE@1376..1377 " "
631 EQ@[1377; 1378) "=" 631 EQ@1377..1378 "="
632 WHITESPACE@[1378; 1379) " " 632 WHITESPACE@1378..1379 " "
633 BIN_EXPR@[1379; 1399) 633 BIN_EXPR@1379..1399
634 PAREN_EXPR@[1379; 1387) 634 PAREN_EXPR@1379..1387
635 L_PAREN@[1379; 1380) "(" 635 L_PAREN@1379..1380 "("
636 BIN_EXPR@[1380; 1386) 636 BIN_EXPR@1380..1386
637 PATH_EXPR@[1380; 1382) 637 PATH_EXPR@1380..1382
638 PATH@[1380; 1382) 638 PATH@1380..1382
639 PATH_SEGMENT@[1380; 1382) 639 PATH_SEGMENT@1380..1382
640 NAME_REF@[1380; 1382) 640 NAME_REF@1380..1382
641 IDENT@[1380; 1382) "_x" 641 IDENT@1380..1382 "_x"
642 WHITESPACE@[1382; 1383) " " 642 WHITESPACE@1382..1383 " "
643 EQ@[1383; 1384) "=" 643 EQ@1383..1384 "="
644 WHITESPACE@[1384; 1385) " " 644 WHITESPACE@1384..1385 " "
645 LITERAL@[1385; 1386) 645 LITERAL@1385..1386
646 INT_NUMBER@[1385; 1386) "0" 646 INT_NUMBER@1385..1386 "0"
647 R_PAREN@[1386; 1387) ")" 647 R_PAREN@1386..1387 ")"
648 WHITESPACE@[1387; 1388) " " 648 WHITESPACE@1387..1388 " "
649 EQ2@[1388; 1390) "==" 649 EQ2@1388..1390 "=="
650 WHITESPACE@[1390; 1391) " " 650 WHITESPACE@1390..1391 " "
651 PAREN_EXPR@[1391; 1399) 651 PAREN_EXPR@1391..1399
652 L_PAREN@[1391; 1392) "(" 652 L_PAREN@1391..1392 "("
653 BIN_EXPR@[1392; 1398) 653 BIN_EXPR@1392..1398
654 PATH_EXPR@[1392; 1394) 654 PATH_EXPR@1392..1394
655 PATH@[1392; 1394) 655 PATH@1392..1394
656 PATH_SEGMENT@[1392; 1394) 656 PATH_SEGMENT@1392..1394
657 NAME_REF@[1392; 1394) 657 NAME_REF@1392..1394
658 IDENT@[1392; 1394) "_x" 658 IDENT@1392..1394 "_x"
659 WHITESPACE@[1394; 1395) " " 659 WHITESPACE@1394..1395 " "
660 EQ@[1395; 1396) "=" 660 EQ@1395..1396 "="
661 WHITESPACE@[1396; 1397) " " 661 WHITESPACE@1396..1397 " "
662 LITERAL@[1397; 1398) 662 LITERAL@1397..1398
663 INT_NUMBER@[1397; 1398) "0" 663 INT_NUMBER@1397..1398 "0"
664 R_PAREN@[1398; 1399) ")" 664 R_PAREN@1398..1399 ")"
665 SEMICOLON@[1399; 1400) ";" 665 SEMICOLON@1399..1400 ";"
666 WHITESPACE@[1400; 1405) "\n " 666 WHITESPACE@1400..1405 "\n "
667 LET_STMT@[1405; 1438) 667 LET_STMT@1405..1438
668 LET_KW@[1405; 1408) "let" 668 LET_KW@1405..1408 "let"
669 WHITESPACE@[1408; 1409) " " 669 WHITESPACE@1408..1409 " "
670 BIND_PAT@[1409; 1415) 670 BIND_PAT@1409..1415
671 MUT_KW@[1409; 1412) "mut" 671 MUT_KW@1409..1412 "mut"
672 WHITESPACE@[1412; 1413) " " 672 WHITESPACE@1412..1413 " "
673 NAME@[1413; 1415) 673 NAME@1413..1415
674 IDENT@[1413; 1415) "_z" 674 IDENT@1413..1415 "_z"
675 WHITESPACE@[1415; 1416) " " 675 WHITESPACE@1415..1416 " "
676 EQ@[1416; 1417) "=" 676 EQ@1416..1417 "="
677 WHITESPACE@[1417; 1418) " " 677 WHITESPACE@1417..1418 " "
678 BIN_EXPR@[1418; 1437) 678 BIN_EXPR@1418..1437
679 PAREN_EXPR@[1418; 1426) 679 PAREN_EXPR@1418..1426
680 L_PAREN@[1418; 1419) "(" 680 L_PAREN@1418..1419 "("
681 BIN_EXPR@[1419; 1425) 681 BIN_EXPR@1419..1425
682 PATH_EXPR@[1419; 1421) 682 PATH_EXPR@1419..1421
683 PATH@[1419; 1421) 683 PATH@1419..1421
684 PATH_SEGMENT@[1419; 1421) 684 PATH_SEGMENT@1419..1421
685 NAME_REF@[1419; 1421) 685 NAME_REF@1419..1421
686 IDENT@[1419; 1421) "_x" 686 IDENT@1419..1421 "_x"
687 WHITESPACE@[1421; 1422) " " 687 WHITESPACE@1421..1422 " "
688 EQ@[1422; 1423) "=" 688 EQ@1422..1423 "="
689 WHITESPACE@[1423; 1424) " " 689 WHITESPACE@1423..1424 " "
690 LITERAL@[1424; 1425) 690 LITERAL@1424..1425
691 INT_NUMBER@[1424; 1425) "0" 691 INT_NUMBER@1424..1425 "0"
692 R_PAREN@[1425; 1426) ")" 692 R_PAREN@1425..1426 ")"
693 WHITESPACE@[1426; 1427) " " 693 WHITESPACE@1426..1427 " "
694 L_ANGLE@[1427; 1428) "<" 694 L_ANGLE@1427..1428 "<"
695 WHITESPACE@[1428; 1429) " " 695 WHITESPACE@1428..1429 " "
696 PAREN_EXPR@[1429; 1437) 696 PAREN_EXPR@1429..1437
697 L_PAREN@[1429; 1430) "(" 697 L_PAREN@1429..1430 "("
698 BIN_EXPR@[1430; 1436) 698 BIN_EXPR@1430..1436
699 PATH_EXPR@[1430; 1432) 699 PATH_EXPR@1430..1432
700 PATH@[1430; 1432) 700 PATH@1430..1432
701 PATH_SEGMENT@[1430; 1432) 701 PATH_SEGMENT@1430..1432
702 NAME_REF@[1430; 1432) 702 NAME_REF@1430..1432
703 IDENT@[1430; 1432) "_x" 703 IDENT@1430..1432 "_x"
704 WHITESPACE@[1432; 1433) " " 704 WHITESPACE@1432..1433 " "
705 EQ@[1433; 1434) "=" 705 EQ@1433..1434 "="
706 WHITESPACE@[1434; 1435) " " 706 WHITESPACE@1434..1435 " "
707 LITERAL@[1435; 1436) 707 LITERAL@1435..1436
708 INT_NUMBER@[1435; 1436) "0" 708 INT_NUMBER@1435..1436 "0"
709 R_PAREN@[1436; 1437) ")" 709 R_PAREN@1436..1437 ")"
710 SEMICOLON@[1437; 1438) ";" 710 SEMICOLON@1437..1438 ";"
711 WHITESPACE@[1438; 1443) "\n " 711 WHITESPACE@1438..1443 "\n "
712 LET_STMT@[1443; 1474) 712 LET_STMT@1443..1474
713 LET_KW@[1443; 1446) "let" 713 LET_KW@1443..1446 "let"
714 WHITESPACE@[1446; 1447) " " 714 WHITESPACE@1446..1447 " "
715 BIND_PAT@[1447; 1449) 715 BIND_PAT@1447..1449
716 NAME@[1447; 1449) 716 NAME@1447..1449
717 IDENT@[1447; 1449) "_a" 717 IDENT@1447..1449 "_a"
718 WHITESPACE@[1449; 1450) " " 718 WHITESPACE@1449..1450 " "
719 EQ@[1450; 1451) "=" 719 EQ@1450..1451 "="
720 WHITESPACE@[1451; 1452) " " 720 WHITESPACE@1451..1452 " "
721 BIN_EXPR@[1452; 1473) 721 BIN_EXPR@1452..1473
722 PAREN_EXPR@[1452; 1461) 722 PAREN_EXPR@1452..1461
723 L_PAREN@[1452; 1453) "(" 723 L_PAREN@1452..1453 "("
724 BIN_EXPR@[1453; 1460) 724 BIN_EXPR@1453..1460
725 PATH_EXPR@[1453; 1455) 725 PATH_EXPR@1453..1455
726 PATH@[1453; 1455) 726 PATH@1453..1455
727 PATH_SEGMENT@[1453; 1455) 727 PATH_SEGMENT@1453..1455
728 NAME_REF@[1453; 1455) 728 NAME_REF@1453..1455
729 IDENT@[1453; 1455) "_x" 729 IDENT@1453..1455 "_x"
730 WHITESPACE@[1455; 1456) " " 730 WHITESPACE@1455..1456 " "
731 PLUSEQ@[1456; 1458) "+=" 731 PLUSEQ@1456..1458 "+="
732 WHITESPACE@[1458; 1459) " " 732 WHITESPACE@1458..1459 " "
733 LITERAL@[1459; 1460) 733 LITERAL@1459..1460
734 INT_NUMBER@[1459; 1460) "0" 734 INT_NUMBER@1459..1460 "0"
735 R_PAREN@[1460; 1461) ")" 735 R_PAREN@1460..1461 ")"
736 WHITESPACE@[1461; 1462) " " 736 WHITESPACE@1461..1462 " "
737 EQ2@[1462; 1464) "==" 737 EQ2@1462..1464 "=="
738 WHITESPACE@[1464; 1465) " " 738 WHITESPACE@1464..1465 " "
739 PAREN_EXPR@[1465; 1473) 739 PAREN_EXPR@1465..1473
740 L_PAREN@[1465; 1466) "(" 740 L_PAREN@1465..1466 "("
741 BIN_EXPR@[1466; 1472) 741 BIN_EXPR@1466..1472
742 PATH_EXPR@[1466; 1468) 742 PATH_EXPR@1466..1468
743 PATH@[1466; 1468) 743 PATH@1466..1468
744 PATH_SEGMENT@[1466; 1468) 744 PATH_SEGMENT@1466..1468
745 NAME_REF@[1466; 1468) 745 NAME_REF@1466..1468
746 IDENT@[1466; 1468) "_x" 746 IDENT@1466..1468 "_x"
747 WHITESPACE@[1468; 1469) " " 747 WHITESPACE@1468..1469 " "
748 EQ@[1469; 1470) "=" 748 EQ@1469..1470 "="
749 WHITESPACE@[1470; 1471) " " 749 WHITESPACE@1470..1471 " "
750 LITERAL@[1471; 1472) 750 LITERAL@1471..1472
751 INT_NUMBER@[1471; 1472) "0" 751 INT_NUMBER@1471..1472 "0"
752 R_PAREN@[1472; 1473) ")" 752 R_PAREN@1472..1473 ")"
753 SEMICOLON@[1473; 1474) ";" 753 SEMICOLON@1473..1474 ";"
754 WHITESPACE@[1474; 1479) "\n " 754 WHITESPACE@1474..1479 "\n "
755 LET_STMT@[1479; 1537) 755 LET_STMT@1479..1537
756 LET_KW@[1479; 1482) "let" 756 LET_KW@1479..1482 "let"
757 WHITESPACE@[1482; 1483) " " 757 WHITESPACE@1482..1483 " "
758 BIND_PAT@[1483; 1485) 758 BIND_PAT@1483..1485
759 NAME@[1483; 1485) 759 NAME@1483..1485
760 IDENT@[1483; 1485) "_b" 760 IDENT@1483..1485 "_b"
761 WHITESPACE@[1485; 1486) " " 761 WHITESPACE@1485..1486 " "
762 EQ@[1486; 1487) "=" 762 EQ@1486..1487 "="
763 WHITESPACE@[1487; 1488) " " 763 WHITESPACE@1487..1488 " "
764 BIN_EXPR@[1488; 1536) 764 BIN_EXPR@1488..1536
765 CALL_EXPR@[1488; 1510) 765 CALL_EXPR@1488..1510
766 PATH_EXPR@[1488; 1492) 766 PATH_EXPR@1488..1492
767 PATH@[1488; 1492) 767 PATH@1488..1492
768 PATH_SEGMENT@[1488; 1492) 768 PATH_SEGMENT@1488..1492
769 NAME_REF@[1488; 1492) 769 NAME_REF@1488..1492
770 IDENT@[1488; 1492) "swap" 770 IDENT@1488..1492 "swap"
771 ARG_LIST@[1492; 1510) 771 ARG_LIST@1492..1510
772 L_PAREN@[1492; 1493) "(" 772 L_PAREN@1492..1493 "("
773 REF_EXPR@[1493; 1500) 773 REF_EXPR@1493..1500
774 AMP@[1493; 1494) "&" 774 AMP@1493..1494 "&"
775 MUT_KW@[1494; 1497) "mut" 775 MUT_KW@1494..1497 "mut"
776 WHITESPACE@[1497; 1498) " " 776 WHITESPACE@1497..1498 " "
777 PATH_EXPR@[1498; 1500) 777 PATH_EXPR@1498..1500
778 PATH@[1498; 1500) 778 PATH@1498..1500
779 PATH_SEGMENT@[1498; 1500) 779 PATH_SEGMENT@1498..1500
780 NAME_REF@[1498; 1500) 780 NAME_REF@1498..1500
781 IDENT@[1498; 1500) "_y" 781 IDENT@1498..1500 "_y"
782 COMMA@[1500; 1501) "," 782 COMMA@1500..1501 ","
783 WHITESPACE@[1501; 1502) " " 783 WHITESPACE@1501..1502 " "
784 REF_EXPR@[1502; 1509) 784 REF_EXPR@1502..1509
785 AMP@[1502; 1503) "&" 785 AMP@1502..1503 "&"
786 MUT_KW@[1503; 1506) "mut" 786 MUT_KW@1503..1506 "mut"
787 WHITESPACE@[1506; 1507) " " 787 WHITESPACE@1506..1507 " "
788 PATH_EXPR@[1507; 1509) 788 PATH_EXPR@1507..1509
789 PATH@[1507; 1509) 789 PATH@1507..1509
790 PATH_SEGMENT@[1507; 1509) 790 PATH_SEGMENT@1507..1509
791 NAME_REF@[1507; 1509) 791 NAME_REF@1507..1509
792 IDENT@[1507; 1509) "_z" 792 IDENT@1507..1509 "_z"
793 R_PAREN@[1509; 1510) ")" 793 R_PAREN@1509..1510 ")"
794 WHITESPACE@[1510; 1511) " " 794 WHITESPACE@1510..1511 " "
795 EQ2@[1511; 1513) "==" 795 EQ2@1511..1513 "=="
796 WHITESPACE@[1513; 1514) " " 796 WHITESPACE@1513..1514 " "
797 CALL_EXPR@[1514; 1536) 797 CALL_EXPR@1514..1536
798 PATH_EXPR@[1514; 1518) 798 PATH_EXPR@1514..1518
799 PATH@[1514; 1518) 799 PATH@1514..1518
800 PATH_SEGMENT@[1514; 1518) 800 PATH_SEGMENT@1514..1518
801 NAME_REF@[1514; 1518) 801 NAME_REF@1514..1518
802 IDENT@[1514; 1518) "swap" 802 IDENT@1514..1518 "swap"
803 ARG_LIST@[1518; 1536) 803 ARG_LIST@1518..1536
804 L_PAREN@[1518; 1519) "(" 804 L_PAREN@1518..1519 "("
805 REF_EXPR@[1519; 1526) 805 REF_EXPR@1519..1526
806 AMP@[1519; 1520) "&" 806 AMP@1519..1520 "&"
807 MUT_KW@[1520; 1523) "mut" 807 MUT_KW@1520..1523 "mut"
808 WHITESPACE@[1523; 1524) " " 808 WHITESPACE@1523..1524 " "
809 PATH_EXPR@[1524; 1526) 809 PATH_EXPR@1524..1526
810 PATH@[1524; 1526) 810 PATH@1524..1526
811 PATH_SEGMENT@[1524; 1526) 811 PATH_SEGMENT@1524..1526
812 NAME_REF@[1524; 1526) 812 NAME_REF@1524..1526
813 IDENT@[1524; 1526) "_y" 813 IDENT@1524..1526 "_y"
814 COMMA@[1526; 1527) "," 814 COMMA@1526..1527 ","
815 WHITESPACE@[1527; 1528) " " 815 WHITESPACE@1527..1528 " "
816 REF_EXPR@[1528; 1535) 816 REF_EXPR@1528..1535
817 AMP@[1528; 1529) "&" 817 AMP@1528..1529 "&"
818 MUT_KW@[1529; 1532) "mut" 818 MUT_KW@1529..1532 "mut"
819 WHITESPACE@[1532; 1533) " " 819 WHITESPACE@1532..1533 " "
820 PATH_EXPR@[1533; 1535) 820 PATH_EXPR@1533..1535
821 PATH@[1533; 1535) 821 PATH@1533..1535
822 PATH_SEGMENT@[1533; 1535) 822 PATH_SEGMENT@1533..1535
823 NAME_REF@[1533; 1535) 823 NAME_REF@1533..1535
824 IDENT@[1533; 1535) "_z" 824 IDENT@1533..1535 "_z"
825 R_PAREN@[1535; 1536) ")" 825 R_PAREN@1535..1536 ")"
826 SEMICOLON@[1536; 1537) ";" 826 SEMICOLON@1536..1537 ";"
827 WHITESPACE@[1537; 1538) "\n" 827 WHITESPACE@1537..1538 "\n"
828 R_CURLY@[1538; 1539) "}" 828 R_CURLY@1538..1539 "}"
829 WHITESPACE@[1539; 1541) "\n\n" 829 WHITESPACE@1539..1541 "\n\n"
830 FN_DEF@[1541; 1741) 830 FN_DEF@1541..1741
831 FN_KW@[1541; 1543) "fn" 831 FN_KW@1541..1543 "fn"
832 WHITESPACE@[1543; 1544) " " 832 WHITESPACE@1543..1544 " "
833 NAME@[1544; 1557) 833 NAME@1544..1557
834 IDENT@[1544; 1557) "canttouchthis" 834 IDENT@1544..1557 "canttouchthis"
835 PARAM_LIST@[1557; 1559) 835 PARAM_LIST@1557..1559
836 L_PAREN@[1557; 1558) "(" 836 L_PAREN@1557..1558 "("
837 R_PAREN@[1558; 1559) ")" 837 R_PAREN@1558..1559 ")"
838 WHITESPACE@[1559; 1560) " " 838 WHITESPACE@1559..1560 " "
839 RET_TYPE@[1560; 1568) 839 RET_TYPE@1560..1568
840 THIN_ARROW@[1560; 1562) "->" 840 THIN_ARROW@1560..1562 "->"
841 WHITESPACE@[1562; 1563) " " 841 WHITESPACE@1562..1563 " "
842 PATH_TYPE@[1563; 1568) 842 PATH_TYPE@1563..1568
843 PATH@[1563; 1568) 843 PATH@1563..1568
844 PATH_SEGMENT@[1563; 1568) 844 PATH_SEGMENT@1563..1568
845 NAME_REF@[1563; 1568) 845 NAME_REF@1563..1568
846 IDENT@[1563; 1568) "usize" 846 IDENT@1563..1568 "usize"
847 WHITESPACE@[1568; 1569) " " 847 WHITESPACE@1568..1569 " "
848 BLOCK_EXPR@[1569; 1741) 848 BLOCK_EXPR@1569..1741
849 BLOCK@[1569; 1741) 849 BLOCK@1569..1741
850 L_CURLY@[1569; 1570) "{" 850 L_CURLY@1569..1570 "{"
851 WHITESPACE@[1570; 1575) "\n " 851 WHITESPACE@1570..1575 "\n "
852 FN_DEF@[1575; 1598) 852 FN_DEF@1575..1598
853 FN_KW@[1575; 1577) "fn" 853 FN_KW@1575..1577 "fn"
854 WHITESPACE@[1577; 1578) " " 854 WHITESPACE@1577..1578 " "
855 NAME@[1578; 1579) 855 NAME@1578..1579
856 IDENT@[1578; 1579) "p" 856 IDENT@1578..1579 "p"
857 PARAM_LIST@[1579; 1581) 857 PARAM_LIST@1579..1581
858 L_PAREN@[1579; 1580) "(" 858 L_PAREN@1579..1580 "("
859 R_PAREN@[1580; 1581) ")" 859 R_PAREN@1580..1581 ")"
860 WHITESPACE@[1581; 1582) " " 860 WHITESPACE@1581..1582 " "
861 RET_TYPE@[1582; 1589) 861 RET_TYPE@1582..1589
862 THIN_ARROW@[1582; 1584) "->" 862 THIN_ARROW@1582..1584 "->"
863 WHITESPACE@[1584; 1585) " " 863 WHITESPACE@1584..1585 " "
864 PATH_TYPE@[1585; 1589) 864 PATH_TYPE@1585..1589
865 PATH@[1585; 1589) 865 PATH@1585..1589
866 PATH_SEGMENT@[1585; 1589) 866 PATH_SEGMENT@1585..1589
867 NAME_REF@[1585; 1589) 867 NAME_REF@1585..1589
868 IDENT@[1585; 1589) "bool" 868 IDENT@1585..1589 "bool"
869 WHITESPACE@[1589; 1590) " " 869 WHITESPACE@1589..1590 " "
870 BLOCK_EXPR@[1590; 1598) 870 BLOCK_EXPR@1590..1598
871 BLOCK@[1590; 1598) 871 BLOCK@1590..1598
872 L_CURLY@[1590; 1591) "{" 872 L_CURLY@1590..1591 "{"
873 WHITESPACE@[1591; 1592) " " 873 WHITESPACE@1591..1592 " "
874 LITERAL@[1592; 1596) 874 LITERAL@1592..1596
875 TRUE_KW@[1592; 1596) "true" 875 TRUE_KW@1592..1596 "true"
876 WHITESPACE@[1596; 1597) " " 876 WHITESPACE@1596..1597 " "
877 R_CURLY@[1597; 1598) "}" 877 R_CURLY@1597..1598 "}"
878 WHITESPACE@[1598; 1603) "\n " 878 WHITESPACE@1598..1603 "\n "
879 LET_STMT@[1603; 1648) 879 LET_STMT@1603..1648
880 LET_KW@[1603; 1606) "let" 880 LET_KW@1603..1606 "let"
881 WHITESPACE@[1606; 1607) " " 881 WHITESPACE@1606..1607 " "
882 BIND_PAT@[1607; 1609) 882 BIND_PAT@1607..1609
883 NAME@[1607; 1609) 883 NAME@1607..1609
884 IDENT@[1607; 1609) "_a" 884 IDENT@1607..1609 "_a"
885 WHITESPACE@[1609; 1610) " " 885 WHITESPACE@1609..1610 " "
886 EQ@[1610; 1611) "=" 886 EQ@1610..1611 "="
887 WHITESPACE@[1611; 1612) " " 887 WHITESPACE@1611..1612 " "
888 PAREN_EXPR@[1612; 1647) 888 PAREN_EXPR@1612..1647
889 L_PAREN@[1612; 1613) "(" 889 L_PAREN@1612..1613 "("
890 BIN_EXPR@[1613; 1646) 890 BIN_EXPR@1613..1646
891 MACRO_CALL@[1613; 1628) 891 MACRO_CALL@1613..1628
892 PATH@[1613; 1619) 892 PATH@1613..1619
893 PATH_SEGMENT@[1613; 1619) 893 PATH_SEGMENT@1613..1619
894 NAME_REF@[1613; 1619) 894 NAME_REF@1613..1619
895 IDENT@[1613; 1619) "assert" 895 IDENT@1613..1619 "assert"
896 BANG@[1619; 1620) "!" 896 BANG@1619..1620 "!"
897 TOKEN_TREE@[1620; 1628) 897 TOKEN_TREE@1620..1628
898 L_PAREN@[1620; 1621) "(" 898 L_PAREN@1620..1621 "("
899 TOKEN_TREE@[1621; 1627) 899 TOKEN_TREE@1621..1627
900 L_PAREN@[1621; 1622) "(" 900 L_PAREN@1621..1622 "("
901 TRUE_KW@[1622; 1626) "true" 901 TRUE_KW@1622..1626 "true"
902 R_PAREN@[1626; 1627) ")" 902 R_PAREN@1626..1627 ")"
903 R_PAREN@[1627; 1628) ")" 903 R_PAREN@1627..1628 ")"
904 WHITESPACE@[1628; 1629) " " 904 WHITESPACE@1628..1629 " "
905 EQ2@[1629; 1631) "==" 905 EQ2@1629..1631 "=="
906 WHITESPACE@[1631; 1632) " " 906 WHITESPACE@1631..1632 " "
907 PAREN_EXPR@[1632; 1646) 907 PAREN_EXPR@1632..1646
908 L_PAREN@[1632; 1633) "(" 908 L_PAREN@1632..1633 "("
909 MACRO_CALL@[1633; 1645) 909 MACRO_CALL@1633..1645
910 PATH@[1633; 1639) 910 PATH@1633..1639
911 PATH_SEGMENT@[1633; 1639) 911 PATH_SEGMENT@1633..1639
912 NAME_REF@[1633; 1639) 912 NAME_REF@1633..1639
913 IDENT@[1633; 1639) "assert" 913 IDENT@1633..1639 "assert"
914 BANG@[1639; 1640) "!" 914 BANG@1639..1640 "!"
915 TOKEN_TREE@[1640; 1645) 915 TOKEN_TREE@1640..1645
916 L_PAREN@[1640; 1641) "(" 916 L_PAREN@1640..1641 "("
917 IDENT@[1641; 1642) "p" 917 IDENT@1641..1642 "p"
918 TOKEN_TREE@[1642; 1644) 918 TOKEN_TREE@1642..1644
919 L_PAREN@[1642; 1643) "(" 919 L_PAREN@1642..1643 "("
920 R_PAREN@[1643; 1644) ")" 920 R_PAREN@1643..1644 ")"
921 R_PAREN@[1644; 1645) ")" 921 R_PAREN@1644..1645 ")"
922 R_PAREN@[1645; 1646) ")" 922 R_PAREN@1645..1646 ")"
923 R_PAREN@[1646; 1647) ")" 923 R_PAREN@1646..1647 ")"
924 SEMICOLON@[1647; 1648) ";" 924 SEMICOLON@1647..1648 ";"
925 WHITESPACE@[1648; 1653) "\n " 925 WHITESPACE@1648..1653 "\n "
926 LET_STMT@[1653; 1685) 926 LET_STMT@1653..1685
927 LET_KW@[1653; 1656) "let" 927 LET_KW@1653..1656 "let"
928 WHITESPACE@[1656; 1657) " " 928 WHITESPACE@1656..1657 " "
929 BIND_PAT@[1657; 1659) 929 BIND_PAT@1657..1659
930 NAME@[1657; 1659) 930 NAME@1657..1659
931 IDENT@[1657; 1659) "_c" 931 IDENT@1657..1659 "_c"
932 WHITESPACE@[1659; 1660) " " 932 WHITESPACE@1659..1660 " "
933 EQ@[1660; 1661) "=" 933 EQ@1660..1661 "="
934 WHITESPACE@[1661; 1662) " " 934 WHITESPACE@1661..1662 " "
935 PAREN_EXPR@[1662; 1684) 935 PAREN_EXPR@1662..1684
936 L_PAREN@[1662; 1663) "(" 936 L_PAREN@1662..1663 "("
937 BIN_EXPR@[1663; 1683) 937 BIN_EXPR@1663..1683
938 MACRO_CALL@[1663; 1677) 938 MACRO_CALL@1663..1677
939 PATH@[1663; 1669) 939 PATH@1663..1669
940 PATH_SEGMENT@[1663; 1669) 940 PATH_SEGMENT@1663..1669
941 NAME_REF@[1663; 1669) 941 NAME_REF@1663..1669
942 IDENT@[1663; 1669) "assert" 942 IDENT@1663..1669 "assert"
943 BANG@[1669; 1670) "!" 943 BANG@1669..1670 "!"
944 TOKEN_TREE@[1670; 1677) 944 TOKEN_TREE@1670..1677
945 L_PAREN@[1670; 1671) "(" 945 L_PAREN@1670..1671 "("
946 TOKEN_TREE@[1671; 1676) 946 TOKEN_TREE@1671..1676
947 L_PAREN@[1671; 1672) "(" 947 L_PAREN@1671..1672 "("
948 IDENT@[1672; 1673) "p" 948 IDENT@1672..1673 "p"
949 TOKEN_TREE@[1673; 1675) 949 TOKEN_TREE@1673..1675
950 L_PAREN@[1673; 1674) "(" 950 L_PAREN@1673..1674 "("
951 R_PAREN@[1674; 1675) ")" 951 R_PAREN@1674..1675 ")"
952 R_PAREN@[1675; 1676) ")" 952 R_PAREN@1675..1676 ")"
953 R_PAREN@[1676; 1677) ")" 953 R_PAREN@1676..1677 ")"
954 WHITESPACE@[1677; 1678) " " 954 WHITESPACE@1677..1678 " "
955 EQ2@[1678; 1680) "==" 955 EQ2@1678..1680 "=="
956 WHITESPACE@[1680; 1681) " " 956 WHITESPACE@1680..1681 " "
957 TUPLE_EXPR@[1681; 1683) 957 TUPLE_EXPR@1681..1683
958 L_PAREN@[1681; 1682) "(" 958 L_PAREN@1681..1682 "("
959 R_PAREN@[1682; 1683) ")" 959 R_PAREN@1682..1683 ")"
960 R_PAREN@[1683; 1684) ")" 960 R_PAREN@1683..1684 ")"
961 SEMICOLON@[1684; 1685) ";" 961 SEMICOLON@1684..1685 ";"
962 WHITESPACE@[1685; 1690) "\n " 962 WHITESPACE@1685..1690 "\n "
963 LET_STMT@[1690; 1739) 963 LET_STMT@1690..1739
964 LET_KW@[1690; 1693) "let" 964 LET_KW@1690..1693 "let"
965 WHITESPACE@[1693; 1694) " " 965 WHITESPACE@1693..1694 " "
966 BIND_PAT@[1694; 1696) 966 BIND_PAT@1694..1696
967 NAME@[1694; 1696) 967 NAME@1694..1696
968 IDENT@[1694; 1696) "_b" 968 IDENT@1694..1696 "_b"
969 COLON@[1696; 1697) ":" 969 COLON@1696..1697 ":"
970 WHITESPACE@[1697; 1698) " " 970 WHITESPACE@1697..1698 " "
971 PATH_TYPE@[1698; 1702) 971 PATH_TYPE@1698..1702
972 PATH@[1698; 1702) 972 PATH@1698..1702
973 PATH_SEGMENT@[1698; 1702) 973 PATH_SEGMENT@1698..1702
974 NAME_REF@[1698; 1702) 974 NAME_REF@1698..1702
975 IDENT@[1698; 1702) "bool" 975 IDENT@1698..1702 "bool"
976 WHITESPACE@[1702; 1703) " " 976 WHITESPACE@1702..1703 " "
977 EQ@[1703; 1704) "=" 977 EQ@1703..1704 "="
978 WHITESPACE@[1704; 1705) " " 978 WHITESPACE@1704..1705 " "
979 PAREN_EXPR@[1705; 1738) 979 PAREN_EXPR@1705..1738
980 L_PAREN@[1705; 1706) "(" 980 L_PAREN@1705..1706 "("
981 BIN_EXPR@[1706; 1737) 981 BIN_EXPR@1706..1737
982 MACRO_CALL@[1706; 1723) 982 MACRO_CALL@1706..1723
983 PATH@[1706; 1713) 983 PATH@1706..1713
984 PATH_SEGMENT@[1706; 1713) 984 PATH_SEGMENT@1706..1713
985 NAME_REF@[1706; 1713) 985 NAME_REF@1706..1713
986 IDENT@[1706; 1713) "println" 986 IDENT@1706..1713 "println"
987 BANG@[1713; 1714) "!" 987 BANG@1713..1714 "!"
988 TOKEN_TREE@[1714; 1723) 988 TOKEN_TREE@1714..1723
989 L_PAREN@[1714; 1715) "(" 989 L_PAREN@1714..1715 "("
990 STRING@[1715; 1719) "\"{}\"" 990 STRING@1715..1719 "\"{}\""
991 COMMA@[1719; 1720) "," 991 COMMA@1719..1720 ","
992 WHITESPACE@[1720; 1721) " " 992 WHITESPACE@1720..1721 " "
993 INT_NUMBER@[1721; 1722) "0" 993 INT_NUMBER@1721..1722 "0"
994 R_PAREN@[1722; 1723) ")" 994 R_PAREN@1722..1723 ")"
995 WHITESPACE@[1723; 1724) " " 995 WHITESPACE@1723..1724 " "
996 EQ2@[1724; 1726) "==" 996 EQ2@1724..1726 "=="
997 WHITESPACE@[1726; 1727) " " 997 WHITESPACE@1726..1727 " "
998 PAREN_EXPR@[1727; 1737) 998 PAREN_EXPR@1727..1737
999 L_PAREN@[1727; 1728) "(" 999 L_PAREN@1727..1728 "("
1000 RETURN_EXPR@[1728; 1736) 1000 RETURN_EXPR@1728..1736
1001 RETURN_KW@[1728; 1734) "return" 1001 RETURN_KW@1728..1734 "return"
1002 WHITESPACE@[1734; 1735) " " 1002 WHITESPACE@1734..1735 " "
1003 LITERAL@[1735; 1736) 1003 LITERAL@1735..1736
1004 INT_NUMBER@[1735; 1736) "0" 1004 INT_NUMBER@1735..1736 "0"
1005 R_PAREN@[1736; 1737) ")" 1005 R_PAREN@1736..1737 ")"
1006 R_PAREN@[1737; 1738) ")" 1006 R_PAREN@1737..1738 ")"
1007 SEMICOLON@[1738; 1739) ";" 1007 SEMICOLON@1738..1739 ";"
1008 WHITESPACE@[1739; 1740) "\n" 1008 WHITESPACE@1739..1740 "\n"
1009 R_CURLY@[1740; 1741) "}" 1009 R_CURLY@1740..1741 "}"
1010 WHITESPACE@[1741; 1743) "\n\n" 1010 WHITESPACE@1741..1743 "\n\n"
1011 FN_DEF@[1743; 1904) 1011 FN_DEF@1743..1904
1012 FN_KW@[1743; 1745) "fn" 1012 FN_KW@1743..1745 "fn"
1013 WHITESPACE@[1745; 1746) " " 1013 WHITESPACE@1745..1746 " "
1014 NAME@[1746; 1755) 1014 NAME@1746..1755
1015 IDENT@[1746; 1755) "angrydome" 1015 IDENT@1746..1755 "angrydome"
1016 PARAM_LIST@[1755; 1757) 1016 PARAM_LIST@1755..1757
1017 L_PAREN@[1755; 1756) "(" 1017 L_PAREN@1755..1756 "("
1018 R_PAREN@[1756; 1757) ")" 1018 R_PAREN@1756..1757 ")"
1019 WHITESPACE@[1757; 1758) " " 1019 WHITESPACE@1757..1758 " "
1020 BLOCK_EXPR@[1758; 1904) 1020 BLOCK_EXPR@1758..1904
1021 BLOCK@[1758; 1904) 1021 BLOCK@1758..1904
1022 L_CURLY@[1758; 1759) "{" 1022 L_CURLY@1758..1759 "{"
1023 WHITESPACE@[1759; 1764) "\n " 1023 WHITESPACE@1759..1764 "\n "
1024 EXPR_STMT@[1764; 1785) 1024 EXPR_STMT@1764..1785
1025 LOOP_EXPR@[1764; 1785) 1025 LOOP_EXPR@1764..1785
1026 LOOP_KW@[1764; 1768) "loop" 1026 LOOP_KW@1764..1768 "loop"
1027 WHITESPACE@[1768; 1769) " " 1027 WHITESPACE@1768..1769 " "
1028 BLOCK_EXPR@[1769; 1785) 1028 BLOCK_EXPR@1769..1785
1029 BLOCK@[1769; 1785) 1029 BLOCK@1769..1785
1030 L_CURLY@[1769; 1770) "{" 1030 L_CURLY@1769..1770 "{"
1031 WHITESPACE@[1770; 1771) " " 1031 WHITESPACE@1770..1771 " "
1032 IF_EXPR@[1771; 1783) 1032 IF_EXPR@1771..1783
1033 IF_KW@[1771; 1773) "if" 1033 IF_KW@1771..1773 "if"
1034 WHITESPACE@[1773; 1774) " " 1034 WHITESPACE@1773..1774 " "
1035 CONDITION@[1774; 1779) 1035 CONDITION@1774..1779
1036 BREAK_EXPR@[1774; 1779) 1036 BREAK_EXPR@1774..1779
1037 BREAK_KW@[1774; 1779) "break" 1037 BREAK_KW@1774..1779 "break"
1038 WHITESPACE@[1779; 1780) " " 1038 WHITESPACE@1779..1780 " "
1039 BLOCK_EXPR@[1780; 1783) 1039 BLOCK_EXPR@1780..1783
1040 BLOCK@[1780; 1783) 1040 BLOCK@1780..1783
1041 L_CURLY@[1780; 1781) "{" 1041 L_CURLY@1780..1781 "{"
1042 WHITESPACE@[1781; 1782) " " 1042 WHITESPACE@1781..1782 " "
1043 R_CURLY@[1782; 1783) "}" 1043 R_CURLY@1782..1783 "}"
1044 WHITESPACE@[1783; 1784) " " 1044 WHITESPACE@1783..1784 " "
1045 R_CURLY@[1784; 1785) "}" 1045 R_CURLY@1784..1785 "}"
1046 WHITESPACE@[1785; 1790) "\n " 1046 WHITESPACE@1785..1790 "\n "
1047 LET_STMT@[1790; 1804) 1047 LET_STMT@1790..1804
1048 LET_KW@[1790; 1793) "let" 1048 LET_KW@1790..1793 "let"
1049 WHITESPACE@[1793; 1794) " " 1049 WHITESPACE@1793..1794 " "
1050 BIND_PAT@[1794; 1799) 1050 BIND_PAT@1794..1799
1051 MUT_KW@[1794; 1797) "mut" 1051 MUT_KW@1794..1797 "mut"
1052 WHITESPACE@[1797; 1798) " " 1052 WHITESPACE@1797..1798 " "
1053 NAME@[1798; 1799) 1053 NAME@1798..1799
1054 IDENT@[1798; 1799) "i" 1054 IDENT@1798..1799 "i"
1055 WHITESPACE@[1799; 1800) " " 1055 WHITESPACE@1799..1800 " "
1056 EQ@[1800; 1801) "=" 1056 EQ@1800..1801 "="
1057 WHITESPACE@[1801; 1802) " " 1057 WHITESPACE@1801..1802 " "
1058 LITERAL@[1802; 1803) 1058 LITERAL@1802..1803
1059 INT_NUMBER@[1802; 1803) "0" 1059 INT_NUMBER@1802..1803 "0"
1060 SEMICOLON@[1803; 1804) ";" 1060 SEMICOLON@1803..1804 ";"
1061 WHITESPACE@[1804; 1809) "\n " 1061 WHITESPACE@1804..1809 "\n "
1062 LOOP_EXPR@[1809; 1902) 1062 LOOP_EXPR@1809..1902
1063 LOOP_KW@[1809; 1813) "loop" 1063 LOOP_KW@1809..1813 "loop"
1064 WHITESPACE@[1813; 1814) " " 1064 WHITESPACE@1813..1814 " "
1065 BLOCK_EXPR@[1814; 1902) 1065 BLOCK_EXPR@1814..1902
1066 BLOCK@[1814; 1902) 1066 BLOCK@1814..1902
1067 L_CURLY@[1814; 1815) "{" 1067 L_CURLY@1814..1815 "{"
1068 WHITESPACE@[1815; 1816) " " 1068 WHITESPACE@1815..1816 " "
1069 EXPR_STMT@[1816; 1823) 1069 EXPR_STMT@1816..1823
1070 BIN_EXPR@[1816; 1822) 1070 BIN_EXPR@1816..1822
1071 PATH_EXPR@[1816; 1817) 1071 PATH_EXPR@1816..1817
1072 PATH@[1816; 1817) 1072 PATH@1816..1817
1073 PATH_SEGMENT@[1816; 1817) 1073 PATH_SEGMENT@1816..1817
1074 NAME_REF@[1816; 1817) 1074 NAME_REF@1816..1817
1075 IDENT@[1816; 1817) "i" 1075 IDENT@1816..1817 "i"
1076 WHITESPACE@[1817; 1818) " " 1076 WHITESPACE@1817..1818 " "
1077 PLUSEQ@[1818; 1820) "+=" 1077 PLUSEQ@1818..1820 "+="
1078 WHITESPACE@[1820; 1821) " " 1078 WHITESPACE@1820..1821 " "
1079 LITERAL@[1821; 1822) 1079 LITERAL@1821..1822
1080 INT_NUMBER@[1821; 1822) "1" 1080 INT_NUMBER@1821..1822 "1"
1081 SEMICOLON@[1822; 1823) ";" 1081 SEMICOLON@1822..1823 ";"
1082 WHITESPACE@[1823; 1824) " " 1082 WHITESPACE@1823..1824 " "
1083 EXPR_STMT@[1824; 1887) 1083 EXPR_STMT@1824..1887
1084 IF_EXPR@[1824; 1887) 1084 IF_EXPR@1824..1887
1085 IF_KW@[1824; 1826) "if" 1085 IF_KW@1824..1826 "if"
1086 WHITESPACE@[1826; 1827) " " 1086 WHITESPACE@1826..1827 " "
1087 CONDITION@[1827; 1833) 1087 CONDITION@1827..1833
1088 BIN_EXPR@[1827; 1833) 1088 BIN_EXPR@1827..1833
1089 PATH_EXPR@[1827; 1828) 1089 PATH_EXPR@1827..1828
1090 PATH@[1827; 1828) 1090 PATH@1827..1828
1091 PATH_SEGMENT@[1827; 1828) 1091 PATH_SEGMENT@1827..1828
1092 NAME_REF@[1827; 1828) 1092 NAME_REF@1827..1828
1093 IDENT@[1827; 1828) "i" 1093 IDENT@1827..1828 "i"
1094 WHITESPACE@[1828; 1829) " " 1094 WHITESPACE@1828..1829 " "
1095 EQ2@[1829; 1831) "==" 1095 EQ2@1829..1831 "=="
1096 WHITESPACE@[1831; 1832) " " 1096 WHITESPACE@1831..1832 " "
1097 LITERAL@[1832; 1833) 1097 LITERAL@1832..1833
1098 INT_NUMBER@[1832; 1833) "1" 1098 INT_NUMBER@1832..1833 "1"
1099 WHITESPACE@[1833; 1834) " " 1099 WHITESPACE@1833..1834 " "
1100 BLOCK_EXPR@[1834; 1887) 1100 BLOCK_EXPR@1834..1887
1101 BLOCK@[1834; 1887) 1101 BLOCK@1834..1887
1102 L_CURLY@[1834; 1835) "{" 1102 L_CURLY@1834..1835 "{"
1103 WHITESPACE@[1835; 1836) " " 1103 WHITESPACE@1835..1836 " "
1104 MATCH_EXPR@[1836; 1885) 1104 MATCH_EXPR@1836..1885
1105 MATCH_KW@[1836; 1841) "match" 1105 MATCH_KW@1836..1841 "match"
1106 WHITESPACE@[1841; 1842) " " 1106 WHITESPACE@1841..1842 " "
1107 PAREN_EXPR@[1842; 1852) 1107 PAREN_EXPR@1842..1852
1108 L_PAREN@[1842; 1843) "(" 1108 L_PAREN@1842..1843 "("
1109 CONTINUE_EXPR@[1843; 1851) 1109 CONTINUE_EXPR@1843..1851
1110 CONTINUE_KW@[1843; 1851) "continue" 1110 CONTINUE_KW@1843..1851 "continue"
1111 R_PAREN@[1851; 1852) ")" 1111 R_PAREN@1851..1852 ")"
1112 WHITESPACE@[1852; 1853) " " 1112 WHITESPACE@1852..1853 " "
1113 MATCH_ARM_LIST@[1853; 1885) 1113 MATCH_ARM_LIST@1853..1885
1114 L_CURLY@[1853; 1854) "{" 1114 L_CURLY@1853..1854 "{"
1115 WHITESPACE@[1854; 1855) " " 1115 WHITESPACE@1854..1855 " "
1116 MATCH_ARM@[1855; 1863) 1116 MATCH_ARM@1855..1863
1117 LITERAL_PAT@[1855; 1856) 1117 LITERAL_PAT@1855..1856
1118 LITERAL@[1855; 1856) 1118 LITERAL@1855..1856
1119 INT_NUMBER@[1855; 1856) "1" 1119 INT_NUMBER@1855..1856 "1"
1120 WHITESPACE@[1856; 1857) " " 1120 WHITESPACE@1856..1857 " "
1121 FAT_ARROW@[1857; 1859) "=>" 1121 FAT_ARROW@1857..1859 "=>"
1122 WHITESPACE@[1859; 1860) " " 1122 WHITESPACE@1859..1860 " "
1123 BLOCK_EXPR@[1860; 1863) 1123 BLOCK_EXPR@1860..1863
1124 BLOCK@[1860; 1863) 1124 BLOCK@1860..1863
1125 L_CURLY@[1860; 1861) "{" 1125 L_CURLY@1860..1861 "{"
1126 WHITESPACE@[1861; 1862) " " 1126 WHITESPACE@1861..1862 " "
1127 R_CURLY@[1862; 1863) "}" 1127 R_CURLY@1862..1863 "}"
1128 COMMA@[1863; 1864) "," 1128 COMMA@1863..1864 ","
1129 WHITESPACE@[1864; 1865) " " 1129 WHITESPACE@1864..1865 " "
1130 MATCH_ARM@[1865; 1883) 1130 MATCH_ARM@1865..1883
1131 PLACEHOLDER_PAT@[1865; 1866) 1131 PLACEHOLDER_PAT@1865..1866
1132 UNDERSCORE@[1865; 1866) "_" 1132 UNDERSCORE@1865..1866 "_"
1133 WHITESPACE@[1866; 1867) " " 1133 WHITESPACE@1866..1867 " "
1134 FAT_ARROW@[1867; 1869) "=>" 1134 FAT_ARROW@1867..1869 "=>"
1135 WHITESPACE@[1869; 1870) " " 1135 WHITESPACE@1869..1870 " "
1136 MACRO_CALL@[1870; 1883) 1136 MACRO_CALL@1870..1883
1137 PATH@[1870; 1875) 1137 PATH@1870..1875
1138 PATH_SEGMENT@[1870; 1875) 1138 PATH_SEGMENT@1870..1875
1139 NAME_REF@[1870; 1875) 1139 NAME_REF@1870..1875
1140 IDENT@[1870; 1875) "panic" 1140 IDENT@1870..1875 "panic"
1141 BANG@[1875; 1876) "!" 1141 BANG@1875..1876 "!"
1142 TOKEN_TREE@[1876; 1883) 1142 TOKEN_TREE@1876..1883
1143 L_PAREN@[1876; 1877) "(" 1143 L_PAREN@1876..1877 "("
1144 STRING@[1877; 1882) "\"wat\"" 1144 STRING@1877..1882 "\"wat\""
1145 R_PAREN@[1882; 1883) ")" 1145 R_PAREN@1882..1883 ")"
1146 WHITESPACE@[1883; 1884) " " 1146 WHITESPACE@1883..1884 " "
1147 R_CURLY@[1884; 1885) "}" 1147 R_CURLY@1884..1885 "}"
1148 WHITESPACE@[1885; 1886) " " 1148 WHITESPACE@1885..1886 " "
1149 R_CURLY@[1886; 1887) "}" 1149 R_CURLY@1886..1887 "}"
1150 WHITESPACE@[1887; 1894) "\n " 1150 WHITESPACE@1887..1894 "\n "
1151 EXPR_STMT@[1894; 1900) 1151 EXPR_STMT@1894..1900
1152 BREAK_EXPR@[1894; 1899) 1152 BREAK_EXPR@1894..1899
1153 BREAK_KW@[1894; 1899) "break" 1153 BREAK_KW@1894..1899 "break"
1154 SEMICOLON@[1899; 1900) ";" 1154 SEMICOLON@1899..1900 ";"
1155 WHITESPACE@[1900; 1901) " " 1155 WHITESPACE@1900..1901 " "
1156 R_CURLY@[1901; 1902) "}" 1156 R_CURLY@1901..1902 "}"
1157 WHITESPACE@[1902; 1903) "\n" 1157 WHITESPACE@1902..1903 "\n"
1158 R_CURLY@[1903; 1904) "}" 1158 R_CURLY@1903..1904 "}"
1159 WHITESPACE@[1904; 1906) "\n\n" 1159 WHITESPACE@1904..1906 "\n\n"
1160 FN_DEF@[1906; 1960) 1160 FN_DEF@1906..1960
1161 FN_KW@[1906; 1908) "fn" 1161 FN_KW@1906..1908 "fn"
1162 WHITESPACE@[1908; 1909) " " 1162 WHITESPACE@1908..1909 " "
1163 NAME@[1909; 1921) 1163 NAME@1909..1921
1164 IDENT@[1909; 1921) "evil_lincoln" 1164 IDENT@1909..1921 "evil_lincoln"
1165 PARAM_LIST@[1921; 1923) 1165 PARAM_LIST@1921..1923
1166 L_PAREN@[1921; 1922) "(" 1166 L_PAREN@1921..1922 "("
1167 R_PAREN@[1922; 1923) ")" 1167 R_PAREN@1922..1923 ")"
1168 WHITESPACE@[1923; 1924) " " 1168 WHITESPACE@1923..1924 " "
1169 BLOCK_EXPR@[1924; 1960) 1169 BLOCK_EXPR@1924..1960
1170 BLOCK@[1924; 1960) 1170 BLOCK@1924..1960
1171 L_CURLY@[1924; 1925) "{" 1171 L_CURLY@1924..1925 "{"
1172 WHITESPACE@[1925; 1926) " " 1172 WHITESPACE@1925..1926 " "
1173 LET_STMT@[1926; 1958) 1173 LET_STMT@1926..1958
1174 LET_KW@[1926; 1929) "let" 1174 LET_KW@1926..1929 "let"
1175 WHITESPACE@[1929; 1930) " " 1175 WHITESPACE@1929..1930 " "
1176 BIND_PAT@[1930; 1935) 1176 BIND_PAT@1930..1935
1177 NAME@[1930; 1935) 1177 NAME@1930..1935
1178 IDENT@[1930; 1935) "_evil" 1178 IDENT@1930..1935 "_evil"
1179 WHITESPACE@[1935; 1936) " " 1179 WHITESPACE@1935..1936 " "
1180 EQ@[1936; 1937) "=" 1180 EQ@1936..1937 "="
1181 WHITESPACE@[1937; 1938) " " 1181 WHITESPACE@1937..1938 " "
1182 MACRO_CALL@[1938; 1957) 1182 MACRO_CALL@1938..1957
1183 PATH@[1938; 1945) 1183 PATH@1938..1945
1184 PATH_SEGMENT@[1938; 1945) 1184 PATH_SEGMENT@1938..1945
1185 NAME_REF@[1938; 1945) 1185 NAME_REF@1938..1945
1186 IDENT@[1938; 1945) "println" 1186 IDENT@1938..1945 "println"
1187 BANG@[1945; 1946) "!" 1187 BANG@1945..1946 "!"
1188 TOKEN_TREE@[1946; 1957) 1188 TOKEN_TREE@1946..1957
1189 L_PAREN@[1946; 1947) "(" 1189 L_PAREN@1946..1947 "("
1190 STRING@[1947; 1956) "\"lincoln\"" 1190 STRING@1947..1956 "\"lincoln\""
1191 R_PAREN@[1956; 1957) ")" 1191 R_PAREN@1956..1957 ")"
1192 SEMICOLON@[1957; 1958) ";" 1192 SEMICOLON@1957..1958 ";"
1193 WHITESPACE@[1958; 1959) " " 1193 WHITESPACE@1958..1959 " "
1194 R_CURLY@[1959; 1960) "}" 1194 R_CURLY@1959..1960 "}"
1195 WHITESPACE@[1960; 1962) "\n\n" 1195 WHITESPACE@1960..1962 "\n\n"
1196 FN_DEF@[1962; 2198) 1196 FN_DEF@1962..2198
1197 FN_KW@[1962; 1964) "fn" 1197 FN_KW@1962..1964 "fn"
1198 WHITESPACE@[1964; 1965) " " 1198 WHITESPACE@1964..1965 " "
1199 NAME@[1965; 1969) 1199 NAME@1965..1969
1200 IDENT@[1965; 1969) "dots" 1200 IDENT@1965..1969 "dots"
1201 PARAM_LIST@[1969; 1971) 1201 PARAM_LIST@1969..1971
1202 L_PAREN@[1969; 1970) "(" 1202 L_PAREN@1969..1970 "("
1203 R_PAREN@[1970; 1971) ")" 1203 R_PAREN@1970..1971 ")"
1204 WHITESPACE@[1971; 1972) " " 1204 WHITESPACE@1971..1972 " "
1205 BLOCK_EXPR@[1972; 2198) 1205 BLOCK_EXPR@1972..2198
1206 BLOCK@[1972; 2198) 1206 BLOCK@1972..2198
1207 L_CURLY@[1972; 1973) "{" 1207 L_CURLY@1972..1973 "{"
1208 WHITESPACE@[1973; 1978) "\n " 1208 WHITESPACE@1973..1978 "\n "
1209 EXPR_STMT@[1978; 2196) 1209 EXPR_STMT@1978..2196
1210 MACRO_CALL@[1978; 2195) 1210 MACRO_CALL@1978..2195
1211 PATH@[1978; 1987) 1211 PATH@1978..1987
1212 PATH_SEGMENT@[1978; 1987) 1212 PATH_SEGMENT@1978..1987
1213 NAME_REF@[1978; 1987) 1213 NAME_REF@1978..1987
1214 IDENT@[1978; 1987) "assert_eq" 1214 IDENT@1978..1987 "assert_eq"
1215 BANG@[1987; 1988) "!" 1215 BANG@1987..1988 "!"
1216 TOKEN_TREE@[1988; 2195) 1216 TOKEN_TREE@1988..2195
1217 L_PAREN@[1988; 1989) "(" 1217 L_PAREN@1988..1989 "("
1218 IDENT@[1989; 1995) "String" 1218 IDENT@1989..1995 "String"
1219 COLON@[1995; 1996) ":" 1219 COLON@1995..1996 ":"
1220 COLON@[1996; 1997) ":" 1220 COLON@1996..1997 ":"
1221 IDENT@[1997; 2001) "from" 1221 IDENT@1997..2001 "from"
1222 TOKEN_TREE@[2001; 2055) 1222 TOKEN_TREE@2001..2055
1223 L_PAREN@[2001; 2002) "(" 1223 L_PAREN@2001..2002 "("
1224 STRING@[2002; 2054) "\".................... ..." 1224 STRING@2002..2054 "\".................... ..."
1225 R_PAREN@[2054; 2055) ")" 1225 R_PAREN@2054..2055 ")"
1226 COMMA@[2055; 2056) "," 1226 COMMA@2055..2056 ","
1227 WHITESPACE@[2056; 2072) "\n " 1227 WHITESPACE@2056..2072 "\n "
1228 IDENT@[2072; 2078) "format" 1228 IDENT@2072..2078 "format"
1229 BANG@[2078; 2079) "!" 1229 BANG@2078..2079 "!"
1230 TOKEN_TREE@[2079; 2194) 1230 TOKEN_TREE@2079..2194
1231 L_PAREN@[2079; 2080) "(" 1231 L_PAREN@2079..2080 "("
1232 STRING@[2080; 2086) "\"{:?}\"" 1232 STRING@2080..2086 "\"{:?}\""
1233 COMMA@[2086; 2087) "," 1233 COMMA@2086..2087 ","
1234 WHITESPACE@[2087; 2088) " " 1234 WHITESPACE@2087..2088 " "
1235 DOT@[2088; 2089) "." 1235 DOT@2088..2089 "."
1236 DOT@[2089; 2090) "." 1236 DOT@2089..2090 "."
1237 WHITESPACE@[2090; 2091) " " 1237 WHITESPACE@2090..2091 " "
1238 DOT@[2091; 2092) "." 1238 DOT@2091..2092 "."
1239 DOT@[2092; 2093) "." 1239 DOT@2092..2093 "."
1240 WHITESPACE@[2093; 2094) " " 1240 WHITESPACE@2093..2094 " "
1241 DOT@[2094; 2095) "." 1241 DOT@2094..2095 "."
1242 DOT@[2095; 2096) "." 1242 DOT@2095..2096 "."
1243 WHITESPACE@[2096; 2097) " " 1243 WHITESPACE@2096..2097 " "
1244 DOT@[2097; 2098) "." 1244 DOT@2097..2098 "."
1245 DOT@[2098; 2099) "." 1245 DOT@2098..2099 "."
1246 WHITESPACE@[2099; 2100) " " 1246 WHITESPACE@2099..2100 " "
1247 DOT@[2100; 2101) "." 1247 DOT@2100..2101 "."
1248 DOT@[2101; 2102) "." 1248 DOT@2101..2102 "."
1249 WHITESPACE@[2102; 2103) " " 1249 WHITESPACE@2102..2103 " "
1250 DOT@[2103; 2104) "." 1250 DOT@2103..2104 "."
1251 DOT@[2104; 2105) "." 1251 DOT@2104..2105 "."
1252 WHITESPACE@[2105; 2106) " " 1252 WHITESPACE@2105..2106 " "
1253 DOT@[2106; 2107) "." 1253 DOT@2106..2107 "."
1254 DOT@[2107; 2108) "." 1254 DOT@2107..2108 "."
1255 WHITESPACE@[2108; 2109) " " 1255 WHITESPACE@2108..2109 " "
1256 DOT@[2109; 2110) "." 1256 DOT@2109..2110 "."
1257 DOT@[2110; 2111) "." 1257 DOT@2110..2111 "."
1258 WHITESPACE@[2111; 2112) " " 1258 WHITESPACE@2111..2112 " "
1259 DOT@[2112; 2113) "." 1259 DOT@2112..2113 "."
1260 DOT@[2113; 2114) "." 1260 DOT@2113..2114 "."
1261 WHITESPACE@[2114; 2115) " " 1261 WHITESPACE@2114..2115 " "
1262 DOT@[2115; 2116) "." 1262 DOT@2115..2116 "."
1263 DOT@[2116; 2117) "." 1263 DOT@2116..2117 "."
1264 WHITESPACE@[2117; 2118) " " 1264 WHITESPACE@2117..2118 " "
1265 DOT@[2118; 2119) "." 1265 DOT@2118..2119 "."
1266 DOT@[2119; 2120) "." 1266 DOT@2119..2120 "."
1267 WHITESPACE@[2120; 2121) " " 1267 WHITESPACE@2120..2121 " "
1268 DOT@[2121; 2122) "." 1268 DOT@2121..2122 "."
1269 DOT@[2122; 2123) "." 1269 DOT@2122..2123 "."
1270 WHITESPACE@[2123; 2124) " " 1270 WHITESPACE@2123..2124 " "
1271 DOT@[2124; 2125) "." 1271 DOT@2124..2125 "."
1272 DOT@[2125; 2126) "." 1272 DOT@2125..2126 "."
1273 WHITESPACE@[2126; 2158) "\n ..." 1273 WHITESPACE@2126..2158 "\n ..."
1274 DOT@[2158; 2159) "." 1274 DOT@2158..2159 "."
1275 DOT@[2159; 2160) "." 1275 DOT@2159..2160 "."
1276 WHITESPACE@[2160; 2161) " " 1276 WHITESPACE@2160..2161 " "
1277 DOT@[2161; 2162) "." 1277 DOT@2161..2162 "."
1278 DOT@[2162; 2163) "." 1278 DOT@2162..2163 "."
1279 WHITESPACE@[2163; 2164) " " 1279 WHITESPACE@2163..2164 " "
1280 DOT@[2164; 2165) "." 1280 DOT@2164..2165 "."
1281 DOT@[2165; 2166) "." 1281 DOT@2165..2166 "."
1282 WHITESPACE@[2166; 2167) " " 1282 WHITESPACE@2166..2167 " "
1283 DOT@[2167; 2168) "." 1283 DOT@2167..2168 "."
1284 DOT@[2168; 2169) "." 1284 DOT@2168..2169 "."
1285 WHITESPACE@[2169; 2170) " " 1285 WHITESPACE@2169..2170 " "
1286 DOT@[2170; 2171) "." 1286 DOT@2170..2171 "."
1287 DOT@[2171; 2172) "." 1287 DOT@2171..2172 "."
1288 WHITESPACE@[2172; 2173) " " 1288 WHITESPACE@2172..2173 " "
1289 DOT@[2173; 2174) "." 1289 DOT@2173..2174 "."
1290 DOT@[2174; 2175) "." 1290 DOT@2174..2175 "."
1291 WHITESPACE@[2175; 2176) " " 1291 WHITESPACE@2175..2176 " "
1292 DOT@[2176; 2177) "." 1292 DOT@2176..2177 "."
1293 DOT@[2177; 2178) "." 1293 DOT@2177..2178 "."
1294 WHITESPACE@[2178; 2179) " " 1294 WHITESPACE@2178..2179 " "
1295 DOT@[2179; 2180) "." 1295 DOT@2179..2180 "."
1296 DOT@[2180; 2181) "." 1296 DOT@2180..2181 "."
1297 WHITESPACE@[2181; 2182) " " 1297 WHITESPACE@2181..2182 " "
1298 DOT@[2182; 2183) "." 1298 DOT@2182..2183 "."
1299 DOT@[2183; 2184) "." 1299 DOT@2183..2184 "."
1300 WHITESPACE@[2184; 2185) " " 1300 WHITESPACE@2184..2185 " "
1301 DOT@[2185; 2186) "." 1301 DOT@2185..2186 "."
1302 DOT@[2186; 2187) "." 1302 DOT@2186..2187 "."
1303 WHITESPACE@[2187; 2188) " " 1303 WHITESPACE@2187..2188 " "
1304 DOT@[2188; 2189) "." 1304 DOT@2188..2189 "."
1305 DOT@[2189; 2190) "." 1305 DOT@2189..2190 "."
1306 WHITESPACE@[2190; 2191) " " 1306 WHITESPACE@2190..2191 " "
1307 DOT@[2191; 2192) "." 1307 DOT@2191..2192 "."
1308 DOT@[2192; 2193) "." 1308 DOT@2192..2193 "."
1309 R_PAREN@[2193; 2194) ")" 1309 R_PAREN@2193..2194 ")"
1310 R_PAREN@[2194; 2195) ")" 1310 R_PAREN@2194..2195 ")"
1311 SEMICOLON@[2195; 2196) ";" 1311 SEMICOLON@2195..2196 ";"
1312 WHITESPACE@[2196; 2197) "\n" 1312 WHITESPACE@2196..2197 "\n"
1313 R_CURLY@[2197; 2198) "}" 1313 R_CURLY@2197..2198 "}"
1314 WHITESPACE@[2198; 2200) "\n\n" 1314 WHITESPACE@2198..2200 "\n\n"
1315 FN_DEF@[2200; 2693) 1315 FN_DEF@2200..2693
1316 FN_KW@[2200; 2202) "fn" 1316 FN_KW@2200..2202 "fn"
1317 WHITESPACE@[2202; 2203) " " 1317 WHITESPACE@2202..2203 " "
1318 NAME@[2203; 2205) 1318 NAME@2203..2205
1319 IDENT@[2203; 2205) "u8" 1319 IDENT@2203..2205 "u8"
1320 PARAM_LIST@[2205; 2213) 1320 PARAM_LIST@2205..2213
1321 L_PAREN@[2205; 2206) "(" 1321 L_PAREN@2205..2206 "("
1322 PARAM@[2206; 2212) 1322 PARAM@2206..2212
1323 BIND_PAT@[2206; 2208) 1323 BIND_PAT@2206..2208
1324 NAME@[2206; 2208) 1324 NAME@2206..2208
1325 IDENT@[2206; 2208) "u8" 1325 IDENT@2206..2208 "u8"
1326 COLON@[2208; 2209) ":" 1326 COLON@2208..2209 ":"
1327 WHITESPACE@[2209; 2210) " " 1327 WHITESPACE@2209..2210 " "
1328 PATH_TYPE@[2210; 2212) 1328 PATH_TYPE@2210..2212
1329 PATH@[2210; 2212) 1329 PATH@2210..2212
1330 PATH_SEGMENT@[2210; 2212) 1330 PATH_SEGMENT@2210..2212
1331 NAME_REF@[2210; 2212) 1331 NAME_REF@2210..2212
1332 IDENT@[2210; 2212) "u8" 1332 IDENT@2210..2212 "u8"
1333 R_PAREN@[2212; 2213) ")" 1333 R_PAREN@2212..2213 ")"
1334 WHITESPACE@[2213; 2214) " " 1334 WHITESPACE@2213..2214 " "
1335 BLOCK_EXPR@[2214; 2693) 1335 BLOCK_EXPR@2214..2693
1336 BLOCK@[2214; 2693) 1336 BLOCK@2214..2693
1337 L_CURLY@[2214; 2215) "{" 1337 L_CURLY@2214..2215 "{"
1338 WHITESPACE@[2215; 2220) "\n " 1338 WHITESPACE@2215..2220 "\n "
1339 IF_EXPR@[2220; 2691) 1339 IF_EXPR@2220..2691
1340 IF_KW@[2220; 2222) "if" 1340 IF_KW@2220..2222 "if"
1341 WHITESPACE@[2222; 2223) " " 1341 WHITESPACE@2222..2223 " "
1342 CONDITION@[2223; 2232) 1342 CONDITION@2223..2232
1343 BIN_EXPR@[2223; 2232) 1343 BIN_EXPR@2223..2232
1344 PATH_EXPR@[2223; 2225) 1344 PATH_EXPR@2223..2225
1345 PATH@[2223; 2225) 1345 PATH@2223..2225
1346 PATH_SEGMENT@[2223; 2225) 1346 PATH_SEGMENT@2223..2225
1347 NAME_REF@[2223; 2225) 1347 NAME_REF@2223..2225
1348 IDENT@[2223; 2225) "u8" 1348 IDENT@2223..2225 "u8"
1349 WHITESPACE@[2225; 2226) " " 1349 WHITESPACE@2225..2226 " "
1350 NEQ@[2226; 2228) "!=" 1350 NEQ@2226..2228 "!="
1351 WHITESPACE@[2228; 2229) " " 1351 WHITESPACE@2228..2229 " "
1352 LITERAL@[2229; 2232) 1352 LITERAL@2229..2232
1353 INT_NUMBER@[2229; 2232) "0u8" 1353 INT_NUMBER@2229..2232 "0u8"
1354 WHITESPACE@[2232; 2233) " " 1354 WHITESPACE@2232..2233 " "
1355 BLOCK_EXPR@[2233; 2691) 1355 BLOCK_EXPR@2233..2691
1356 BLOCK@[2233; 2691) 1356 BLOCK@2233..2691
1357 L_CURLY@[2233; 2234) "{" 1357 L_CURLY@2233..2234 "{"
1358 WHITESPACE@[2234; 2243) "\n " 1358 WHITESPACE@2234..2243 "\n "
1359 EXPR_STMT@[2243; 2685) 1359 EXPR_STMT@2243..2685
1360 MACRO_CALL@[2243; 2684) 1360 MACRO_CALL@2243..2684
1361 PATH@[2243; 2252) 1361 PATH@2243..2252
1362 PATH_SEGMENT@[2243; 2252) 1362 PATH_SEGMENT@2243..2252
1363 NAME_REF@[2243; 2252) 1363 NAME_REF@2243..2252
1364 IDENT@[2243; 2252) "assert_eq" 1364 IDENT@2243..2252 "assert_eq"
1365 BANG@[2252; 2253) "!" 1365 BANG@2252..2253 "!"
1366 TOKEN_TREE@[2253; 2684) 1366 TOKEN_TREE@2253..2684
1367 L_PAREN@[2253; 2254) "(" 1367 L_PAREN@2253..2254 "("
1368 INT_NUMBER@[2254; 2257) "8u8" 1368 INT_NUMBER@2254..2257 "8u8"
1369 COMMA@[2257; 2258) "," 1369 COMMA@2257..2258 ","
1370 WHITESPACE@[2258; 2259) " " 1370 WHITESPACE@2258..2259 " "
1371 TOKEN_TREE@[2259; 2683) 1371 TOKEN_TREE@2259..2683
1372 L_CURLY@[2259; 2260) "{" 1372 L_CURLY@2259..2260 "{"
1373 WHITESPACE@[2260; 2273) "\n " 1373 WHITESPACE@2260..2273 "\n "
1374 IDENT@[2273; 2284) "macro_rules" 1374 IDENT@2273..2284 "macro_rules"
1375 BANG@[2284; 2285) "!" 1375 BANG@2284..2285 "!"
1376 WHITESPACE@[2285; 2286) " " 1376 WHITESPACE@2285..2286 " "
1377 IDENT@[2286; 2288) "u8" 1377 IDENT@2286..2288 "u8"
1378 WHITESPACE@[2288; 2289) " " 1378 WHITESPACE@2288..2289 " "
1379 TOKEN_TREE@[2289; 2567) 1379 TOKEN_TREE@2289..2567
1380 L_CURLY@[2289; 2290) "{" 1380 L_CURLY@2289..2290 "{"
1381 WHITESPACE@[2290; 2307) "\n " 1381 WHITESPACE@2290..2307 "\n "
1382 TOKEN_TREE@[2307; 2311) 1382 TOKEN_TREE@2307..2311
1383 L_PAREN@[2307; 2308) "(" 1383 L_PAREN@2307..2308 "("
1384 IDENT@[2308; 2310) "u8" 1384 IDENT@2308..2310 "u8"
1385 R_PAREN@[2310; 2311) ")" 1385 R_PAREN@2310..2311 ")"
1386 WHITESPACE@[2311; 2312) " " 1386 WHITESPACE@2311..2312 " "
1387 EQ@[2312; 2313) "=" 1387 EQ@2312..2313 "="
1388 R_ANGLE@[2313; 2314) ">" 1388 R_ANGLE@2313..2314 ">"
1389 WHITESPACE@[2314; 2315) " " 1389 WHITESPACE@2314..2315 " "
1390 TOKEN_TREE@[2315; 2552) 1390 TOKEN_TREE@2315..2552
1391 L_CURLY@[2315; 2316) "{" 1391 L_CURLY@2315..2316 "{"
1392 WHITESPACE@[2316; 2337) "\n " 1392 WHITESPACE@2316..2337 "\n "
1393 MOD_KW@[2337; 2340) "mod" 1393 MOD_KW@2337..2340 "mod"
1394 WHITESPACE@[2340; 2341) " " 1394 WHITESPACE@2340..2341 " "
1395 IDENT@[2341; 2343) "u8" 1395 IDENT@2341..2343 "u8"
1396 WHITESPACE@[2343; 2344) " " 1396 WHITESPACE@2343..2344 " "
1397 TOKEN_TREE@[2344; 2534) 1397 TOKEN_TREE@2344..2534
1398 L_CURLY@[2344; 2345) "{" 1398 L_CURLY@2344..2345 "{"
1399 WHITESPACE@[2345; 2370) "\n ..." 1399 WHITESPACE@2345..2370 "\n ..."
1400 PUB_KW@[2370; 2373) "pub" 1400 PUB_KW@2370..2373 "pub"
1401 WHITESPACE@[2373; 2374) " " 1401 WHITESPACE@2373..2374 " "
1402 FN_KW@[2374; 2376) "fn" 1402 FN_KW@2374..2376 "fn"
1403 WHITESPACE@[2376; 2377) " " 1403 WHITESPACE@2376..2377 " "
1404 IDENT@[2377; 2379) "u8" 1404 IDENT@2377..2379 "u8"
1405 L_ANGLE@[2379; 2380) "<" 1405 L_ANGLE@2379..2380 "<"
1406 LIFETIME@[2380; 2383) "\'u8" 1406 LIFETIME@2380..2383 "\'u8"
1407 COLON@[2383; 2384) ":" 1407 COLON@2383..2384 ":"
1408 WHITESPACE@[2384; 2385) " " 1408 WHITESPACE@2384..2385 " "
1409 LIFETIME@[2385; 2388) "\'u8" 1409 LIFETIME@2385..2388 "\'u8"
1410 WHITESPACE@[2388; 2389) " " 1410 WHITESPACE@2388..2389 " "
1411 PLUS@[2389; 2390) "+" 1411 PLUS@2389..2390 "+"
1412 WHITESPACE@[2390; 2391) " " 1412 WHITESPACE@2390..2391 " "
1413 LIFETIME@[2391; 2394) "\'u8" 1413 LIFETIME@2391..2394 "\'u8"
1414 R_ANGLE@[2394; 2395) ">" 1414 R_ANGLE@2394..2395 ">"
1415 TOKEN_TREE@[2395; 2408) 1415 TOKEN_TREE@2395..2408
1416 L_PAREN@[2395; 2396) "(" 1416 L_PAREN@2395..2396 "("
1417 IDENT@[2396; 2398) "u8" 1417 IDENT@2396..2398 "u8"
1418 COLON@[2398; 2399) ":" 1418 COLON@2398..2399 ":"
1419 WHITESPACE@[2399; 2400) " " 1419 WHITESPACE@2399..2400 " "
1420 AMP@[2400; 2401) "&" 1420 AMP@2400..2401 "&"
1421 LIFETIME@[2401; 2404) "\'u8" 1421 LIFETIME@2401..2404 "\'u8"
1422 WHITESPACE@[2404; 2405) " " 1422 WHITESPACE@2404..2405 " "
1423 IDENT@[2405; 2407) "u8" 1423 IDENT@2405..2407 "u8"
1424 R_PAREN@[2407; 2408) ")" 1424 R_PAREN@2407..2408 ")"
1425 WHITESPACE@[2408; 2409) " " 1425 WHITESPACE@2408..2409 " "
1426 MINUS@[2409; 2410) "-" 1426 MINUS@2409..2410 "-"
1427 R_ANGLE@[2410; 2411) ">" 1427 R_ANGLE@2410..2411 ">"
1428 WHITESPACE@[2411; 2412) " " 1428 WHITESPACE@2411..2412 " "
1429 AMP@[2412; 2413) "&" 1429 AMP@2412..2413 "&"
1430 LIFETIME@[2413; 2416) "\'u8" 1430 LIFETIME@2413..2416 "\'u8"
1431 WHITESPACE@[2416; 2417) " " 1431 WHITESPACE@2416..2417 " "
1432 IDENT@[2417; 2419) "u8" 1432 IDENT@2417..2419 "u8"
1433 WHITESPACE@[2419; 2420) " " 1433 WHITESPACE@2419..2420 " "
1434 TOKEN_TREE@[2420; 2512) 1434 TOKEN_TREE@2420..2512
1435 L_CURLY@[2420; 2421) "{" 1435 L_CURLY@2420..2421 "{"
1436 WHITESPACE@[2421; 2450) "\n ..." 1436 WHITESPACE@2421..2450 "\n ..."
1437 STRING@[2450; 2454) "\"u8\"" 1437 STRING@2450..2454 "\"u8\""
1438 SEMICOLON@[2454; 2455) ";" 1438 SEMICOLON@2454..2455 ";"
1439 WHITESPACE@[2455; 2484) "\n ..." 1439 WHITESPACE@2455..2484 "\n ..."
1440 IDENT@[2484; 2486) "u8" 1440 IDENT@2484..2486 "u8"
1441 WHITESPACE@[2486; 2511) "\n ..." 1441 WHITESPACE@2486..2511 "\n ..."
1442 R_CURLY@[2511; 2512) "}" 1442 R_CURLY@2511..2512 "}"
1443 WHITESPACE@[2512; 2533) "\n " 1443 WHITESPACE@2512..2533 "\n "
1444 R_CURLY@[2533; 2534) "}" 1444 R_CURLY@2533..2534 "}"
1445 WHITESPACE@[2534; 2551) "\n " 1445 WHITESPACE@2534..2551 "\n "
1446 R_CURLY@[2551; 2552) "}" 1446 R_CURLY@2551..2552 "}"
1447 SEMICOLON@[2552; 2553) ";" 1447 SEMICOLON@2552..2553 ";"
1448 WHITESPACE@[2553; 2566) "\n " 1448 WHITESPACE@2553..2566 "\n "
1449 R_CURLY@[2566; 2567) "}" 1449 R_CURLY@2566..2567 "}"
1450 WHITESPACE@[2567; 2581) "\n\n " 1450 WHITESPACE@2567..2581 "\n\n "
1451 IDENT@[2581; 2583) "u8" 1451 IDENT@2581..2583 "u8"
1452 BANG@[2583; 2584) "!" 1452 BANG@2583..2584 "!"
1453 TOKEN_TREE@[2584; 2588) 1453 TOKEN_TREE@2584..2588
1454 L_PAREN@[2584; 2585) "(" 1454 L_PAREN@2584..2585 "("
1455 IDENT@[2585; 2587) "u8" 1455 IDENT@2585..2587 "u8"
1456 R_PAREN@[2587; 2588) ")" 1456 R_PAREN@2587..2588 ")"
1457 SEMICOLON@[2588; 2589) ";" 1457 SEMICOLON@2588..2589 ";"
1458 WHITESPACE@[2589; 2602) "\n " 1458 WHITESPACE@2589..2602 "\n "
1459 LET_KW@[2602; 2605) "let" 1459 LET_KW@2602..2605 "let"
1460 WHITESPACE@[2605; 2606) " " 1460 WHITESPACE@2605..2606 " "
1461 AMP@[2606; 2607) "&" 1461 AMP@2606..2607 "&"
1462 IDENT@[2607; 2609) "u8" 1462 IDENT@2607..2609 "u8"
1463 COLON@[2609; 2610) ":" 1463 COLON@2609..2610 ":"
1464 WHITESPACE@[2610; 2611) " " 1464 WHITESPACE@2610..2611 " "
1465 AMP@[2611; 2612) "&" 1465 AMP@2611..2612 "&"
1466 IDENT@[2612; 2614) "u8" 1466 IDENT@2612..2614 "u8"
1467 WHITESPACE@[2614; 2615) " " 1467 WHITESPACE@2614..2615 " "
1468 EQ@[2615; 2616) "=" 1468 EQ@2615..2616 "="
1469 WHITESPACE@[2616; 2617) " " 1469 WHITESPACE@2616..2617 " "
1470 IDENT@[2617; 2619) "u8" 1470 IDENT@2617..2619 "u8"
1471 COLON@[2619; 2620) ":" 1471 COLON@2619..2620 ":"
1472 COLON@[2620; 2621) ":" 1472 COLON@2620..2621 ":"
1473 IDENT@[2621; 2623) "u8" 1473 IDENT@2621..2623 "u8"
1474 TOKEN_TREE@[2623; 2629) 1474 TOKEN_TREE@2623..2629
1475 L_PAREN@[2623; 2624) "(" 1475 L_PAREN@2623..2624 "("
1476 AMP@[2624; 2625) "&" 1476 AMP@2624..2625 "&"
1477 INT_NUMBER@[2625; 2628) "8u8" 1477 INT_NUMBER@2625..2628 "8u8"
1478 R_PAREN@[2628; 2629) ")" 1478 R_PAREN@2628..2629 ")"
1479 SEMICOLON@[2629; 2630) ";" 1479 SEMICOLON@2629..2630 ";"
1480 WHITESPACE@[2630; 2643) "\n " 1480 WHITESPACE@2630..2643 "\n "
1481 CRATE_KW@[2643; 2648) "crate" 1481 CRATE_KW@2643..2648 "crate"
1482 COLON@[2648; 2649) ":" 1482 COLON@2648..2649 ":"
1483 COLON@[2649; 2650) ":" 1483 COLON@2649..2650 ":"
1484 IDENT@[2650; 2652) "u8" 1484 IDENT@2650..2652 "u8"
1485 TOKEN_TREE@[2652; 2657) 1485 TOKEN_TREE@2652..2657
1486 L_PAREN@[2652; 2653) "(" 1486 L_PAREN@2652..2653 "("
1487 INT_NUMBER@[2653; 2656) "0u8" 1487 INT_NUMBER@2653..2656 "0u8"
1488 R_PAREN@[2656; 2657) ")" 1488 R_PAREN@2656..2657 ")"
1489 SEMICOLON@[2657; 2658) ";" 1489 SEMICOLON@2657..2658 ";"
1490 WHITESPACE@[2658; 2671) "\n " 1490 WHITESPACE@2658..2671 "\n "
1491 IDENT@[2671; 2673) "u8" 1491 IDENT@2671..2673 "u8"
1492 WHITESPACE@[2673; 2682) "\n " 1492 WHITESPACE@2673..2682 "\n "
1493 R_CURLY@[2682; 2683) "}" 1493 R_CURLY@2682..2683 "}"
1494 R_PAREN@[2683; 2684) ")" 1494 R_PAREN@2683..2684 ")"
1495 SEMICOLON@[2684; 2685) ";" 1495 SEMICOLON@2684..2685 ";"
1496 WHITESPACE@[2685; 2690) "\n " 1496 WHITESPACE@2685..2690 "\n "
1497 R_CURLY@[2690; 2691) "}" 1497 R_CURLY@2690..2691 "}"
1498 WHITESPACE@[2691; 2692) "\n" 1498 WHITESPACE@2691..2692 "\n"
1499 R_CURLY@[2692; 2693) "}" 1499 R_CURLY@2692..2693 "}"
1500 WHITESPACE@[2693; 2695) "\n\n" 1500 WHITESPACE@2693..2695 "\n\n"
1501 FN_DEF@[2695; 2832) 1501 FN_DEF@2695..2832
1502 FN_KW@[2695; 2697) "fn" 1502 FN_KW@2695..2697 "fn"
1503 WHITESPACE@[2697; 2698) " " 1503 WHITESPACE@2697..2698 " "
1504 NAME@[2698; 2703) 1504 NAME@2698..2703
1505 IDENT@[2698; 2703) "fishy" 1505 IDENT@2698..2703 "fishy"
1506 PARAM_LIST@[2703; 2705) 1506 PARAM_LIST@2703..2705
1507 L_PAREN@[2703; 2704) "(" 1507 L_PAREN@2703..2704 "("
1508 R_PAREN@[2704; 2705) ")" 1508 R_PAREN@2704..2705 ")"
1509 WHITESPACE@[2705; 2706) " " 1509 WHITESPACE@2705..2706 " "
1510 BLOCK_EXPR@[2706; 2832) 1510 BLOCK_EXPR@2706..2832
1511 BLOCK@[2706; 2832) 1511 BLOCK@2706..2832
1512 L_CURLY@[2706; 2707) "{" 1512 L_CURLY@2706..2707 "{"
1513 WHITESPACE@[2707; 2712) "\n " 1513 WHITESPACE@2707..2712 "\n "
1514 EXPR_STMT@[2712; 2830) 1514 EXPR_STMT@2712..2830
1515 MACRO_CALL@[2712; 2829) 1515 MACRO_CALL@2712..2829
1516 PATH@[2712; 2721) 1516 PATH@2712..2721
1517 PATH_SEGMENT@[2712; 2721) 1517 PATH_SEGMENT@2712..2721
1518 NAME_REF@[2712; 2721) 1518 NAME_REF@2712..2721
1519 IDENT@[2712; 2721) "assert_eq" 1519 IDENT@2712..2721 "assert_eq"
1520 BANG@[2721; 2722) "!" 1520 BANG@2721..2722 "!"
1521 TOKEN_TREE@[2722; 2829) 1521 TOKEN_TREE@2722..2829
1522 L_PAREN@[2722; 2723) "(" 1522 L_PAREN@2722..2723 "("
1523 IDENT@[2723; 2729) "String" 1523 IDENT@2723..2729 "String"
1524 COLON@[2729; 2730) ":" 1524 COLON@2729..2730 ":"
1525 COLON@[2730; 2731) ":" 1525 COLON@2730..2731 ":"
1526 IDENT@[2731; 2735) "from" 1526 IDENT@2731..2735 "from"
1527 TOKEN_TREE@[2735; 2742) 1527 TOKEN_TREE@2735..2742
1528 L_PAREN@[2735; 2736) "(" 1528 L_PAREN@2735..2736 "("
1529 STRING@[2736; 2741) "\"><>\"" 1529 STRING@2736..2741 "\"><>\""
1530 R_PAREN@[2741; 2742) ")" 1530 R_PAREN@2741..2742 ")"
1531 COMMA@[2742; 2743) "," 1531 COMMA@2742..2743 ","
1532 WHITESPACE@[2743; 2759) "\n " 1532 WHITESPACE@2743..2759 "\n "
1533 IDENT@[2759; 2765) "String" 1533 IDENT@2759..2765 "String"
1534 COLON@[2765; 2766) ":" 1534 COLON@2765..2766 ":"
1535 COLON@[2766; 2767) ":" 1535 COLON@2766..2767 ":"
1536 L_ANGLE@[2767; 2768) "<" 1536 L_ANGLE@2767..2768 "<"
1537 R_ANGLE@[2768; 2769) ">" 1537 R_ANGLE@2768..2769 ">"
1538 COLON@[2769; 2770) ":" 1538 COLON@2769..2770 ":"
1539 COLON@[2770; 2771) ":" 1539 COLON@2770..2771 ":"
1540 IDENT@[2771; 2775) "from" 1540 IDENT@2771..2775 "from"
1541 COLON@[2775; 2776) ":" 1541 COLON@2775..2776 ":"
1542 COLON@[2776; 2777) ":" 1542 COLON@2776..2777 ":"
1543 L_ANGLE@[2777; 2778) "<" 1543 L_ANGLE@2777..2778 "<"
1544 R_ANGLE@[2778; 2779) ">" 1544 R_ANGLE@2778..2779 ">"
1545 TOKEN_TREE@[2779; 2786) 1545 TOKEN_TREE@2779..2786
1546 L_PAREN@[2779; 2780) "(" 1546 L_PAREN@2779..2780 "("
1547 STRING@[2780; 2785) "\"><>\"" 1547 STRING@2780..2785 "\"><>\""
1548 R_PAREN@[2785; 2786) ")" 1548 R_PAREN@2785..2786 ")"
1549 DOT@[2786; 2787) "." 1549 DOT@2786..2787 "."
1550 IDENT@[2787; 2792) "chars" 1550 IDENT@2787..2792 "chars"
1551 COLON@[2792; 2793) ":" 1551 COLON@2792..2793 ":"
1552 COLON@[2793; 2794) ":" 1552 COLON@2793..2794 ":"
1553 L_ANGLE@[2794; 2795) "<" 1553 L_ANGLE@2794..2795 "<"
1554 R_ANGLE@[2795; 2796) ">" 1554 R_ANGLE@2795..2796 ">"
1555 TOKEN_TREE@[2796; 2798) 1555 TOKEN_TREE@2796..2798
1556 L_PAREN@[2796; 2797) "(" 1556 L_PAREN@2796..2797 "("
1557 R_PAREN@[2797; 2798) ")" 1557 R_PAREN@2797..2798 ")"
1558 DOT@[2798; 2799) "." 1558 DOT@2798..2799 "."
1559 IDENT@[2799; 2802) "rev" 1559 IDENT@2799..2802 "rev"
1560 COLON@[2802; 2803) ":" 1560 COLON@2802..2803 ":"
1561 COLON@[2803; 2804) ":" 1561 COLON@2803..2804 ":"
1562 L_ANGLE@[2804; 2805) "<" 1562 L_ANGLE@2804..2805 "<"
1563 R_ANGLE@[2805; 2806) ">" 1563 R_ANGLE@2805..2806 ">"
1564 TOKEN_TREE@[2806; 2808) 1564 TOKEN_TREE@2806..2808
1565 L_PAREN@[2806; 2807) "(" 1565 L_PAREN@2806..2807 "("
1566 R_PAREN@[2807; 2808) ")" 1566 R_PAREN@2807..2808 ")"
1567 DOT@[2808; 2809) "." 1567 DOT@2808..2809 "."
1568 IDENT@[2809; 2816) "collect" 1568 IDENT@2809..2816 "collect"
1569 COLON@[2816; 2817) ":" 1569 COLON@2816..2817 ":"
1570 COLON@[2817; 2818) ":" 1570 COLON@2817..2818 ":"
1571 L_ANGLE@[2818; 2819) "<" 1571 L_ANGLE@2818..2819 "<"
1572 IDENT@[2819; 2825) "String" 1572 IDENT@2819..2825 "String"
1573 R_ANGLE@[2825; 2826) ">" 1573 R_ANGLE@2825..2826 ">"
1574 TOKEN_TREE@[2826; 2828) 1574 TOKEN_TREE@2826..2828
1575 L_PAREN@[2826; 2827) "(" 1575 L_PAREN@2826..2827 "("
1576 R_PAREN@[2827; 2828) ")" 1576 R_PAREN@2827..2828 ")"
1577 R_PAREN@[2828; 2829) ")" 1577 R_PAREN@2828..2829 ")"
1578 SEMICOLON@[2829; 2830) ";" 1578 SEMICOLON@2829..2830 ";"
1579 WHITESPACE@[2830; 2831) "\n" 1579 WHITESPACE@2830..2831 "\n"
1580 R_CURLY@[2831; 2832) "}" 1580 R_CURLY@2831..2832 "}"
1581 WHITESPACE@[2832; 2834) "\n\n" 1581 WHITESPACE@2832..2834 "\n\n"
1582 FN_DEF@[2834; 2906) 1582 FN_DEF@2834..2906
1583 FN_KW@[2834; 2836) "fn" 1583 FN_KW@2834..2836 "fn"
1584 WHITESPACE@[2836; 2837) " " 1584 WHITESPACE@2836..2837 " "
1585 NAME@[2837; 2842) 1585 NAME@2837..2842
1586 IDENT@[2837; 2842) "union" 1586 IDENT@2837..2842 "union"
1587 PARAM_LIST@[2842; 2844) 1587 PARAM_LIST@2842..2844
1588 L_PAREN@[2842; 2843) "(" 1588 L_PAREN@2842..2843 "("
1589 R_PAREN@[2843; 2844) ")" 1589 R_PAREN@2843..2844 ")"
1590 WHITESPACE@[2844; 2845) " " 1590 WHITESPACE@2844..2845 " "
1591 BLOCK_EXPR@[2845; 2906) 1591 BLOCK_EXPR@2845..2906
1592 BLOCK@[2845; 2906) 1592 BLOCK@2845..2906
1593 L_CURLY@[2845; 2846) "{" 1593 L_CURLY@2845..2846 "{"
1594 WHITESPACE@[2846; 2851) "\n " 1594 WHITESPACE@2846..2851 "\n "
1595 UNION_DEF@[2851; 2904) 1595 UNION_DEF@2851..2904
1596 UNION_KW@[2851; 2856) "union" 1596 UNION_KW@2851..2856 "union"
1597 WHITESPACE@[2856; 2857) " " 1597 WHITESPACE@2856..2857 " "
1598 NAME@[2857; 2862) 1598 NAME@2857..2862
1599 IDENT@[2857; 2862) "union" 1599 IDENT@2857..2862 "union"
1600 TYPE_PARAM_LIST@[2862; 2870) 1600 TYPE_PARAM_LIST@2862..2870
1601 L_ANGLE@[2862; 2863) "<" 1601 L_ANGLE@2862..2863 "<"
1602 LIFETIME_PARAM@[2863; 2869) 1602 LIFETIME_PARAM@2863..2869
1603 LIFETIME@[2863; 2869) "\'union" 1603 LIFETIME@2863..2869 "\'union"
1604 R_ANGLE@[2869; 2870) ">" 1604 R_ANGLE@2869..2870 ">"
1605 WHITESPACE@[2870; 2871) " " 1605 WHITESPACE@2870..2871 " "
1606 RECORD_FIELD_DEF_LIST@[2871; 2904) 1606 RECORD_FIELD_DEF_LIST@2871..2904
1607 L_CURLY@[2871; 2872) "{" 1607 L_CURLY@2871..2872 "{"
1608 WHITESPACE@[2872; 2873) " " 1608 WHITESPACE@2872..2873 " "
1609 RECORD_FIELD_DEF@[2873; 2901) 1609 RECORD_FIELD_DEF@2873..2901
1610 NAME@[2873; 2878) 1610 NAME@2873..2878
1611 IDENT@[2873; 2878) "union" 1611 IDENT@2873..2878 "union"
1612 COLON@[2878; 2879) ":" 1612 COLON@2878..2879 ":"
1613 WHITESPACE@[2879; 2880) " " 1613 WHITESPACE@2879..2880 " "
1614 REFERENCE_TYPE@[2880; 2901) 1614 REFERENCE_TYPE@2880..2901
1615 AMP@[2880; 2881) "&" 1615 AMP@2880..2881 "&"
1616 LIFETIME@[2881; 2887) "\'union" 1616 LIFETIME@2881..2887 "\'union"
1617 WHITESPACE@[2887; 2888) " " 1617 WHITESPACE@2887..2888 " "
1618 PATH_TYPE@[2888; 2901) 1618 PATH_TYPE@2888..2901
1619 PATH@[2888; 2901) 1619 PATH@2888..2901
1620 PATH_SEGMENT@[2888; 2901) 1620 PATH_SEGMENT@2888..2901
1621 NAME_REF@[2888; 2893) 1621 NAME_REF@2888..2893
1622 IDENT@[2888; 2893) "union" 1622 IDENT@2888..2893 "union"
1623 TYPE_ARG_LIST@[2893; 2901) 1623 TYPE_ARG_LIST@2893..2901
1624 L_ANGLE@[2893; 2894) "<" 1624 L_ANGLE@2893..2894 "<"
1625 LIFETIME_ARG@[2894; 2900) 1625 LIFETIME_ARG@2894..2900
1626 LIFETIME@[2894; 2900) "\'union" 1626 LIFETIME@2894..2900 "\'union"
1627 R_ANGLE@[2900; 2901) ">" 1627 R_ANGLE@2900..2901 ">"
1628 COMMA@[2901; 2902) "," 1628 COMMA@2901..2902 ","
1629 WHITESPACE@[2902; 2903) " " 1629 WHITESPACE@2902..2903 " "
1630 R_CURLY@[2903; 2904) "}" 1630 R_CURLY@2903..2904 "}"
1631 WHITESPACE@[2904; 2905) "\n" 1631 WHITESPACE@2904..2905 "\n"
1632 R_CURLY@[2905; 2906) "}" 1632 R_CURLY@2905..2906 "}"
1633 WHITESPACE@[2906; 2908) "\n\n" 1633 WHITESPACE@2906..2908 "\n\n"
1634 FN_DEF@[2908; 3042) 1634 FN_DEF@2908..3042
1635 FN_KW@[2908; 2910) "fn" 1635 FN_KW@2908..2910 "fn"
1636 WHITESPACE@[2910; 2911) " " 1636 WHITESPACE@2910..2911 " "
1637 NAME@[2911; 2929) 1637 NAME@2911..2929
1638 IDENT@[2911; 2929) "special_characters" 1638 IDENT@2911..2929 "special_characters"
1639 PARAM_LIST@[2929; 2931) 1639 PARAM_LIST@2929..2931
1640 L_PAREN@[2929; 2930) "(" 1640 L_PAREN@2929..2930 "("
1641 R_PAREN@[2930; 2931) ")" 1641 R_PAREN@2930..2931 ")"
1642 WHITESPACE@[2931; 2932) " " 1642 WHITESPACE@2931..2932 " "
1643 BLOCK_EXPR@[2932; 3042) 1643 BLOCK_EXPR@2932..3042
1644 BLOCK@[2932; 3042) 1644 BLOCK@2932..3042
1645 L_CURLY@[2932; 2933) "{" 1645 L_CURLY@2932..2933 "{"
1646 WHITESPACE@[2933; 2938) "\n " 1646 WHITESPACE@2933..2938 "\n "
1647 LET_STMT@[2938; 3021) 1647 LET_STMT@2938..3021
1648 LET_KW@[2938; 2941) "let" 1648 LET_KW@2938..2941 "let"
1649 WHITESPACE@[2941; 2942) " " 1649 WHITESPACE@2941..2942 " "
1650 BIND_PAT@[2942; 2945) 1650 BIND_PAT@2942..2945
1651 NAME@[2942; 2945) 1651 NAME@2942..2945
1652 IDENT@[2942; 2945) "val" 1652 IDENT@2942..2945 "val"
1653 WHITESPACE@[2945; 2946) " " 1653 WHITESPACE@2945..2946 " "
1654 EQ@[2946; 2947) "=" 1654 EQ@2946..2947 "="
1655 WHITESPACE@[2947; 2948) " " 1655 WHITESPACE@2947..2948 " "
1656 PREFIX_EXPR@[2948; 3013) 1656 PREFIX_EXPR@2948..3013
1657 BANG@[2948; 2949) "!" 1657 BANG@2948..2949 "!"
1658 PAREN_EXPR@[2949; 3013) 1658 PAREN_EXPR@2949..3013
1659 L_PAREN@[2949; 2950) "(" 1659 L_PAREN@2949..2950 "("
1660 BIN_EXPR@[2950; 3012) 1660 BIN_EXPR@2950..3012
1661 CALL_EXPR@[2950; 2995) 1661 CALL_EXPR@2950..2995
1662 PAREN_EXPR@[2950; 2971) 1662 PAREN_EXPR@2950..2971
1663 L_PAREN@[2950; 2951) "(" 1663 L_PAREN@2950..2951 "("
1664 LAMBDA_EXPR@[2951; 2970) 1664 LAMBDA_EXPR@2951..2970
1665 PARAM_LIST@[2951; 2968) 1665 PARAM_LIST@2951..2968
1666 PIPE@[2951; 2952) "|" 1666 PIPE@2951..2952 "|"
1667 PARAM@[2952; 2962) 1667 PARAM@2952..2962
1668 TUPLE_PAT@[2952; 2956) 1668 TUPLE_PAT@2952..2956
1669 L_PAREN@[2952; 2953) "(" 1669 L_PAREN@2952..2953 "("
1670 DOT_DOT_PAT@[2953; 2955) 1670 DOT_DOT_PAT@2953..2955
1671 DOT2@[2953; 2955) ".." 1671 DOT2@2953..2955 ".."
1672 R_PAREN@[2955; 2956) ")" 1672 R_PAREN@2955..2956 ")"
1673 COLON@[2956; 2957) ":" 1673 COLON@2956..2957 ":"
1674 TUPLE_TYPE@[2957; 2962) 1674 TUPLE_TYPE@2957..2962
1675 L_PAREN@[2957; 2958) "(" 1675 L_PAREN@2957..2958 "("
1676 PLACEHOLDER_TYPE@[2958; 2959) 1676 PLACEHOLDER_TYPE@2958..2959
1677 UNDERSCORE@[2958; 2959) "_" 1677 UNDERSCORE@2958..2959 "_"
1678 COMMA@[2959; 2960) "," 1678 COMMA@2959..2960 ","
1679 PLACEHOLDER_TYPE@[2960; 2961) 1679 PLACEHOLDER_TYPE@2960..2961
1680 UNDERSCORE@[2960; 2961) "_" 1680 UNDERSCORE@2960..2961 "_"
1681 R_PAREN@[2961; 2962) ")" 1681 R_PAREN@2961..2962 ")"
1682 COMMA@[2962; 2963) "," 1682 COMMA@2962..2963 ","
1683 PARAM@[2963; 2967) 1683 PARAM@2963..2967
1684 BIND_PAT@[2963; 2967) 1684 BIND_PAT@2963..2967
1685 NAME@[2963; 2965) 1685 NAME@2963..2965
1686 IDENT@[2963; 2965) "__" 1686 IDENT@2963..2965 "__"
1687 AT@[2965; 2966) "@" 1687 AT@2965..2966 "@"
1688 PLACEHOLDER_PAT@[2966; 2967) 1688 PLACEHOLDER_PAT@2966..2967
1689 UNDERSCORE@[2966; 2967) "_" 1689 UNDERSCORE@2966..2967 "_"
1690 PIPE@[2967; 2968) "|" 1690 PIPE@2967..2968 "|"
1691 PATH_EXPR@[2968; 2970) 1691 PATH_EXPR@2968..2970
1692 PATH@[2968; 2970) 1692 PATH@2968..2970
1693 PATH_SEGMENT@[2968; 2970) 1693 PATH_SEGMENT@2968..2970
1694 NAME_REF@[2968; 2970) 1694 NAME_REF@2968..2970
1695 IDENT@[2968; 2970) "__" 1695 IDENT@2968..2970 "__"
1696 R_PAREN@[2970; 2971) ")" 1696 R_PAREN@2970..2971 ")"
1697 ARG_LIST@[2971; 2995) 1697 ARG_LIST@2971..2995
1698 L_PAREN@[2971; 2972) "(" 1698 L_PAREN@2971..2972 "("
1699 TUPLE_EXPR@[2972; 2987) 1699 TUPLE_EXPR@2972..2987
1700 L_PAREN@[2972; 2973) "(" 1700 L_PAREN@2972..2973 "("
1701 REF_EXPR@[2973; 2979) 1701 REF_EXPR@2973..2979
1702 AMP@[2973; 2974) "&" 1702 AMP@2973..2974 "&"
1703 PREFIX_EXPR@[2974; 2979) 1703 PREFIX_EXPR@2974..2979
1704 STAR@[2974; 2975) "*" 1704 STAR@2974..2975 "*"
1705 LITERAL@[2975; 2979) 1705 LITERAL@2975..2979
1706 STRING@[2975; 2979) "\"\\\\\"" 1706 STRING@2975..2979 "\"\\\\\""
1707 COMMA@[2979; 2980) "," 1707 COMMA@2979..2980 ","
1708 LITERAL@[2980; 2986) 1708 LITERAL@2980..2986
1709 CHAR@[2980; 2986) "\'🤔\'" 1709 CHAR@2980..2986 "\'🤔\'"
1710 R_PAREN@[2986; 2987) ")" 1710 R_PAREN@2986..2987 ")"
1711 COMMENT@[2987; 2991) "/**/" 1711 COMMENT@2987..2991 "/**/"
1712 COMMA@[2991; 2992) "," 1712 COMMA@2991..2992 ","
1713 BLOCK_EXPR@[2992; 2994) 1713 BLOCK_EXPR@2992..2994
1714 BLOCK@[2992; 2994) 1714 BLOCK@2992..2994
1715 L_CURLY@[2992; 2993) "{" 1715 L_CURLY@2992..2993 "{"
1716 R_CURLY@[2993; 2994) "}" 1716 R_CURLY@2993..2994 "}"
1717 R_PAREN@[2994; 2995) ")" 1717 R_PAREN@2994..2995 ")"
1718 EQ2@[2995; 2997) "==" 1718 EQ2@2995..2997 "=="
1719 BLOCK_EXPR@[2997; 3012) 1719 BLOCK_EXPR@2997..3012
1720 BLOCK@[2997; 3012) 1720 BLOCK@2997..3012
1721 L_CURLY@[2997; 2998) "{" 1721 L_CURLY@2997..2998 "{"
1722 EXPR_STMT@[2998; 3011) 1722 EXPR_STMT@2998..3011
1723 REF_EXPR@[2998; 3010) 1723 REF_EXPR@2998..3010
1724 AMP@[2998; 2999) "&" 1724 AMP@2998..2999 "&"
1725 INDEX_EXPR@[2999; 3010) 1725 INDEX_EXPR@2999..3010
1726 ARRAY_EXPR@[2999; 3006) 1726 ARRAY_EXPR@2999..3006
1727 L_BRACK@[2999; 3000) "[" 1727 L_BRACK@2999..3000 "["
1728 RANGE_EXPR@[3000; 3005) 1728 RANGE_EXPR@3000..3005
1729 DOT2EQ@[3000; 3003) "..=" 1729 DOT2EQ@3000..3003 "..="
1730 RANGE_EXPR@[3003; 3005) 1730 RANGE_EXPR@3003..3005
1731 DOT2@[3003; 3005) ".." 1731 DOT2@3003..3005 ".."
1732 R_BRACK@[3005; 3006) "]" 1732 R_BRACK@3005..3006 "]"
1733 L_BRACK@[3006; 3007) "[" 1733 L_BRACK@3006..3007 "["
1734 RANGE_EXPR@[3007; 3009) 1734 RANGE_EXPR@3007..3009
1735 DOT2@[3007; 3009) ".." 1735 DOT2@3007..3009 ".."
1736 R_BRACK@[3009; 3010) "]" 1736 R_BRACK@3009..3010 "]"
1737 SEMICOLON@[3010; 3011) ";" 1737 SEMICOLON@3010..3011 ";"
1738 R_CURLY@[3011; 3012) "}" 1738 R_CURLY@3011..3012 "}"
1739 R_PAREN@[3012; 3013) ")" 1739 R_PAREN@3012..3013 ")"
1740 COMMENT@[3013; 3015) "//" 1740 COMMENT@3013..3015 "//"
1741 WHITESPACE@[3015; 3020) "\n " 1741 WHITESPACE@3015..3020 "\n "
1742 SEMICOLON@[3020; 3021) ";" 1742 SEMICOLON@3020..3021 ";"
1743 WHITESPACE@[3021; 3026) "\n " 1743 WHITESPACE@3021..3026 "\n "
1744 EXPR_STMT@[3026; 3040) 1744 EXPR_STMT@3026..3040
1745 MACRO_CALL@[3026; 3039) 1745 MACRO_CALL@3026..3039
1746 PATH@[3026; 3032) 1746 PATH@3026..3032
1747 PATH_SEGMENT@[3026; 3032) 1747 PATH_SEGMENT@3026..3032
1748 NAME_REF@[3026; 3032) 1748 NAME_REF@3026..3032
1749 IDENT@[3026; 3032) "assert" 1749 IDENT@3026..3032 "assert"
1750 BANG@[3032; 3033) "!" 1750 BANG@3032..3033 "!"
1751 TOKEN_TREE@[3033; 3039) 1751 TOKEN_TREE@3033..3039
1752 L_PAREN@[3033; 3034) "(" 1752 L_PAREN@3033..3034 "("
1753 BANG@[3034; 3035) "!" 1753 BANG@3034..3035 "!"
1754 IDENT@[3035; 3038) "val" 1754 IDENT@3035..3038 "val"
1755 R_PAREN@[3038; 3039) ")" 1755 R_PAREN@3038..3039 ")"
1756 SEMICOLON@[3039; 3040) ";" 1756 SEMICOLON@3039..3040 ";"
1757 WHITESPACE@[3040; 3041) "\n" 1757 WHITESPACE@3040..3041 "\n"
1758 R_CURLY@[3041; 3042) "}" 1758 R_CURLY@3041..3042 "}"
1759 WHITESPACE@[3042; 3044) "\n\n" 1759 WHITESPACE@3042..3044 "\n\n"
1760 FN_DEF@[3044; 3514) 1760 FN_DEF@3044..3514
1761 FN_KW@[3044; 3046) "fn" 1761 FN_KW@3044..3046 "fn"
1762 WHITESPACE@[3046; 3047) " " 1762 WHITESPACE@3046..3047 " "
1763 NAME@[3047; 3057) 1763 NAME@3047..3057
1764 IDENT@[3047; 3057) "punch_card" 1764 IDENT@3047..3057 "punch_card"
1765 PARAM_LIST@[3057; 3059) 1765 PARAM_LIST@3057..3059
1766 L_PAREN@[3057; 3058) "(" 1766 L_PAREN@3057..3058 "("
1767 R_PAREN@[3058; 3059) ")" 1767 R_PAREN@3058..3059 ")"
1768 WHITESPACE@[3059; 3060) " " 1768 WHITESPACE@3059..3060 " "
1769 RET_TYPE@[3060; 3083) 1769 RET_TYPE@3060..3083
1770 THIN_ARROW@[3060; 3062) "->" 1770 THIN_ARROW@3060..3062 "->"
1771 WHITESPACE@[3062; 3063) " " 1771 WHITESPACE@3062..3063 " "
1772 IMPL_TRAIT_TYPE@[3063; 3083) 1772 IMPL_TRAIT_TYPE@3063..3083
1773 IMPL_KW@[3063; 3067) "impl" 1773 IMPL_KW@3063..3067 "impl"
1774 WHITESPACE@[3067; 3068) " " 1774 WHITESPACE@3067..3068 " "
1775 TYPE_BOUND_LIST@[3068; 3083) 1775 TYPE_BOUND_LIST@3068..3083
1776 TYPE_BOUND@[3068; 3083) 1776 TYPE_BOUND@3068..3083
1777 PATH_TYPE@[3068; 3083) 1777 PATH_TYPE@3068..3083
1778 PATH@[3068; 3083) 1778 PATH@3068..3083
1779 PATH@[3068; 3076) 1779 PATH@3068..3076
1780 PATH@[3068; 3071) 1780 PATH@3068..3071
1781 PATH_SEGMENT@[3068; 3071) 1781 PATH_SEGMENT@3068..3071
1782 NAME_REF@[3068; 3071) 1782 NAME_REF@3068..3071
1783 IDENT@[3068; 3071) "std" 1783 IDENT@3068..3071 "std"
1784 COLON2@[3071; 3073) "::" 1784 COLON2@3071..3073 "::"
1785 PATH_SEGMENT@[3073; 3076) 1785 PATH_SEGMENT@3073..3076
1786 NAME_REF@[3073; 3076) 1786 NAME_REF@3073..3076
1787 IDENT@[3073; 3076) "fmt" 1787 IDENT@3073..3076 "fmt"
1788 COLON2@[3076; 3078) "::" 1788 COLON2@3076..3078 "::"
1789 PATH_SEGMENT@[3078; 3083) 1789 PATH_SEGMENT@3078..3083
1790 NAME_REF@[3078; 3083) 1790 NAME_REF@3078..3083
1791 IDENT@[3078; 3083) "Debug" 1791 IDENT@3078..3083 "Debug"
1792 WHITESPACE@[3083; 3084) " " 1792 WHITESPACE@3083..3084 " "
1793 BLOCK_EXPR@[3084; 3514) 1793 BLOCK_EXPR@3084..3514
1794 BLOCK@[3084; 3514) 1794 BLOCK@3084..3514
1795 L_CURLY@[3084; 3085) "{" 1795 L_CURLY@3084..3085 "{"
1796 WHITESPACE@[3085; 3090) "\n " 1796 WHITESPACE@3085..3090 "\n "
1797 RANGE_EXPR@[3090; 3512) 1797 RANGE_EXPR@3090..3512
1798 DOT2EQ@[3090; 3093) "..=" 1798 DOT2EQ@3090..3093 "..="
1799 RANGE_EXPR@[3093; 3512) 1799 RANGE_EXPR@3093..3512
1800 DOT2EQ@[3093; 3096) "..=" 1800 DOT2EQ@3093..3096 "..="
1801 RANGE_EXPR@[3096; 3512) 1801 RANGE_EXPR@3096..3512
1802 DOT2@[3096; 3098) ".." 1802 DOT2@3096..3098 ".."
1803 WHITESPACE@[3098; 3099) " " 1803 WHITESPACE@3098..3099 " "
1804 RANGE_EXPR@[3099; 3512) 1804 RANGE_EXPR@3099..3512
1805 DOT2@[3099; 3101) ".." 1805 DOT2@3099..3101 ".."
1806 WHITESPACE@[3101; 3105) " " 1806 WHITESPACE@3101..3105 " "
1807 RANGE_EXPR@[3105; 3512) 1807 RANGE_EXPR@3105..3512
1808 DOT2@[3105; 3107) ".." 1808 DOT2@3105..3107 ".."
1809 WHITESPACE@[3107; 3108) " " 1809 WHITESPACE@3107..3108 " "
1810 RANGE_EXPR@[3108; 3512) 1810 RANGE_EXPR@3108..3512
1811 DOT2@[3108; 3110) ".." 1811 DOT2@3108..3110 ".."
1812 WHITESPACE@[3110; 3111) " " 1812 WHITESPACE@3110..3111 " "
1813 RANGE_EXPR@[3111; 3512) 1813 RANGE_EXPR@3111..3512
1814 DOT2@[3111; 3113) ".." 1814 DOT2@3111..3113 ".."
1815 WHITESPACE@[3113; 3114) " " 1815 WHITESPACE@3113..3114 " "
1816 RANGE_EXPR@[3114; 3512) 1816 RANGE_EXPR@3114..3512
1817 DOT2@[3114; 3116) ".." 1817 DOT2@3114..3116 ".."
1818 WHITESPACE@[3116; 3120) " " 1818 WHITESPACE@3116..3120 " "
1819 RANGE_EXPR@[3120; 3512) 1819 RANGE_EXPR@3120..3512
1820 DOT2@[3120; 3122) ".." 1820 DOT2@3120..3122 ".."
1821 WHITESPACE@[3122; 3123) " " 1821 WHITESPACE@3122..3123 " "
1822 RANGE_EXPR@[3123; 3512) 1822 RANGE_EXPR@3123..3512
1823 DOT2@[3123; 3125) ".." 1823 DOT2@3123..3125 ".."
1824 WHITESPACE@[3125; 3126) " " 1824 WHITESPACE@3125..3126 " "
1825 RANGE_EXPR@[3126; 3512) 1825 RANGE_EXPR@3126..3512
1826 DOT2@[3126; 3128) ".." 1826 DOT2@3126..3128 ".."
1827 WHITESPACE@[3128; 3129) " " 1827 WHITESPACE@3128..3129 " "
1828 RANGE_EXPR@[3129; 3512) 1828 RANGE_EXPR@3129..3512
1829 DOT2@[3129; 3131) ".." 1829 DOT2@3129..3131 ".."
1830 WHITESPACE@[3131; 3135) " " 1830 WHITESPACE@3131..3135 " "
1831 RANGE_EXPR@[3135; 3512) 1831 RANGE_EXPR@3135..3512
1832 DOT2@[3135; 3137) ".." 1832 DOT2@3135..3137 ".."
1833 WHITESPACE@[3137; 3138) " " 1833 WHITESPACE@3137..3138 " "
1834 RANGE_EXPR@[3138; 3512) 1834 RANGE_EXPR@3138..3512
1835 DOT2EQ@[3138; 3141) "..=" 1835 DOT2EQ@3138..3141 "..="
1836 RANGE_EXPR@[3141; 3512) 1836 RANGE_EXPR@3141..3512
1837 DOT2@[3141; 3143) ".." 1837 DOT2@3141..3143 ".."
1838 WHITESPACE@[3143; 3144) " " 1838 WHITESPACE@3143..3144 " "
1839 RANGE_EXPR@[3144; 3512) 1839 RANGE_EXPR@3144..3512
1840 DOT2@[3144; 3146) ".." 1840 DOT2@3144..3146 ".."
1841 WHITESPACE@[3146; 3151) "\n " 1841 WHITESPACE@3146..3151 "\n "
1842 RANGE_EXPR@[3151; 3512) 1842 RANGE_EXPR@3151..3512
1843 DOT2EQ@[3151; 3154) "..=" 1843 DOT2EQ@3151..3154 "..="
1844 RANGE_EXPR@[3154; 3512) 1844 RANGE_EXPR@3154..3512
1845 DOT2@[3154; 3156) ".." 1845 DOT2@3154..3156 ".."
1846 WHITESPACE@[3156; 3157) " " 1846 WHITESPACE@3156..3157 " "
1847 RANGE_EXPR@[3157; 3512) 1847 RANGE_EXPR@3157..3512
1848 DOT2EQ@[3157; 3160) "..=" 1848 DOT2EQ@3157..3160 "..="
1849 RANGE_EXPR@[3160; 3512) 1849 RANGE_EXPR@3160..3512
1850 DOT2@[3160; 3162) ".." 1850 DOT2@3160..3162 ".."
1851 WHITESPACE@[3162; 3166) " " 1851 WHITESPACE@3162..3166 " "
1852 RANGE_EXPR@[3166; 3512) 1852 RANGE_EXPR@3166..3512
1853 DOT2@[3166; 3168) ".." 1853 DOT2@3166..3168 ".."
1854 WHITESPACE@[3168; 3169) " " 1854 WHITESPACE@3168..3169 " "
1855 RANGE_EXPR@[3169; 3512) 1855 RANGE_EXPR@3169..3512
1856 DOT2@[3169; 3171) ".." 1856 DOT2@3169..3171 ".."
1857 WHITESPACE@[3171; 3172) " " 1857 WHITESPACE@3171..3172 " "
1858 RANGE_EXPR@[3172; 3512) 1858 RANGE_EXPR@3172..3512
1859 DOT2@[3172; 3174) ".." 1859 DOT2@3172..3174 ".."
1860 WHITESPACE@[3174; 3175) " " 1860 WHITESPACE@3174..3175 " "
1861 RANGE_EXPR@[3175; 3512) 1861 RANGE_EXPR@3175..3512
1862 DOT2@[3175; 3177) ".." 1862 DOT2@3175..3177 ".."
1863 WHITESPACE@[3177; 3181) " " 1863 WHITESPACE@3177..3181 " "
1864 RANGE_EXPR@[3181; 3512) 1864 RANGE_EXPR@3181..3512
1865 DOT2@[3181; 3183) ".." 1865 DOT2@3181..3183 ".."
1866 WHITESPACE@[3183; 3184) " " 1866 WHITESPACE@3183..3184 " "
1867 RANGE_EXPR@[3184; 3512) 1867 RANGE_EXPR@3184..3512
1868 DOT2@[3184; 3186) ".." 1868 DOT2@3184..3186 ".."
1869 WHITESPACE@[3186; 3187) " " 1869 WHITESPACE@3186..3187 " "
1870 RANGE_EXPR@[3187; 3512) 1870 RANGE_EXPR@3187..3512
1871 DOT2@[3187; 3189) ".." 1871 DOT2@3187..3189 ".."
1872 WHITESPACE@[3189; 3190) " " 1872 WHITESPACE@3189..3190 " "
1873 RANGE_EXPR@[3190; 3512) 1873 RANGE_EXPR@3190..3512
1874 DOT2@[3190; 3192) ".." 1874 DOT2@3190..3192 ".."
1875 WHITESPACE@[3192; 3196) " " 1875 WHITESPACE@3192..3196 " "
1876 RANGE_EXPR@[3196; 3512) 1876 RANGE_EXPR@3196..3512
1877 DOT2EQ@[3196; 3199) "..=" 1877 DOT2EQ@3196..3199 "..="
1878 RANGE_EXPR@[3199; 3512) 1878 RANGE_EXPR@3199..3512
1879 DOT2EQ@[3199; 3202) "..=" 1879 DOT2EQ@3199..3202 "..="
1880 RANGE_EXPR@[3202; 3512) 1880 RANGE_EXPR@3202..3512
1881 DOT2EQ@[3202; 3205) "..=" 1881 DOT2EQ@3202..3205 "..="
1882 RANGE_EXPR@[3205; 3512) 1882 RANGE_EXPR@3205..3512
1883 DOT2@[3205; 3207) ".." 1883 DOT2@3205..3207 ".."
1884 WHITESPACE@[3207; 3212) "\n " 1884 WHITESPACE@3207..3212 "\n "
1885 RANGE_EXPR@[3212; 3512) 1885 RANGE_EXPR@3212..3512
1886 DOT2EQ@[3212; 3215) "..=" 1886 DOT2EQ@3212..3215 "..="
1887 RANGE_EXPR@[3215; 3512) 1887 RANGE_EXPR@3215..3512
1888 DOT2@[3215; 3217) ".." 1888 DOT2@3215..3217 ".."
1889 WHITESPACE@[3217; 3218) " " 1889 WHITESPACE@3217..3218 " "
1890 RANGE_EXPR@[3218; 3512) 1890 RANGE_EXPR@3218..3512
1891 DOT2EQ@[3218; 3221) "..=" 1891 DOT2EQ@3218..3221 "..="
1892 RANGE_EXPR@[3221; 3512) 1892 RANGE_EXPR@3221..3512
1893 DOT2@[3221; 3223) ".." 1893 DOT2@3221..3223 ".."
1894 WHITESPACE@[3223; 3227) " " 1894 WHITESPACE@3223..3227 " "
1895 RANGE_EXPR@[3227; 3512) 1895 RANGE_EXPR@3227..3512
1896 DOT2EQ@[3227; 3230) "..=" 1896 DOT2EQ@3227..3230 "..="
1897 RANGE_EXPR@[3230; 3512) 1897 RANGE_EXPR@3230..3512
1898 DOT2@[3230; 3232) ".." 1898 DOT2@3230..3232 ".."
1899 WHITESPACE@[3232; 3233) " " 1899 WHITESPACE@3232..3233 " "
1900 RANGE_EXPR@[3233; 3512) 1900 RANGE_EXPR@3233..3512
1901 DOT2EQ@[3233; 3236) "..=" 1901 DOT2EQ@3233..3236 "..="
1902 RANGE_EXPR@[3236; 3512) 1902 RANGE_EXPR@3236..3512
1903 DOT2@[3236; 3238) ".." 1903 DOT2@3236..3238 ".."
1904 WHITESPACE@[3238; 3242) " " 1904 WHITESPACE@3238..3242 " "
1905 RANGE_EXPR@[3242; 3512) 1905 RANGE_EXPR@3242..3512
1906 DOT2@[3242; 3244) ".." 1906 DOT2@3242..3244 ".."
1907 WHITESPACE@[3244; 3245) " " 1907 WHITESPACE@3244..3245 " "
1908 RANGE_EXPR@[3245; 3512) 1908 RANGE_EXPR@3245..3512
1909 DOT2EQ@[3245; 3248) "..=" 1909 DOT2EQ@3245..3248 "..="
1910 RANGE_EXPR@[3248; 3512) 1910 RANGE_EXPR@3248..3512
1911 DOT2EQ@[3248; 3251) "..=" 1911 DOT2EQ@3248..3251 "..="
1912 RANGE_EXPR@[3251; 3512) 1912 RANGE_EXPR@3251..3512
1913 DOT2@[3251; 3253) ".." 1913 DOT2@3251..3253 ".."
1914 WHITESPACE@[3253; 3257) " " 1914 WHITESPACE@3253..3257 " "
1915 RANGE_EXPR@[3257; 3512) 1915 RANGE_EXPR@3257..3512
1916 DOT2@[3257; 3259) ".." 1916 DOT2@3257..3259 ".."
1917 WHITESPACE@[3259; 3260) " " 1917 WHITESPACE@3259..3260 " "
1918 RANGE_EXPR@[3260; 3512) 1918 RANGE_EXPR@3260..3512
1919 DOT2EQ@[3260; 3263) "..=" 1919 DOT2EQ@3260..3263 "..="
1920 RANGE_EXPR@[3263; 3512) 1920 RANGE_EXPR@3263..3512
1921 DOT2@[3263; 3265) ".." 1921 DOT2@3263..3265 ".."
1922 WHITESPACE@[3265; 3266) " " 1922 [email protected] " "
1923 RANGE_EXPR@[3266; 3512) 1923 RANGE_EXPR@3266..3512
1924 DOT2@[3266; 3268) ".." 1924 DOT2@3266..3268 ".."
1925 WHITESPACE@[3268; 3273) "\n " 1925 [email protected] "\n "
1926 RANGE_EXPR@[3273; 3512) 1926 RANGE_EXPR@3273..3512
1927 DOT2EQ@[3273; 3276) "..=" 1927 [email protected] "..="
1928 RANGE_EXPR@[3276; 3512) 1928 [email protected]
1929 DOT2EQ@[3276; 3279) "..=" 1929 [email protected] "..="
1930 RANGE_EXPR@[3279; 3512) 1930 [email protected]
1931 DOT2@[3279; 3281) ".." 1931 [email protected] ".."
1932 WHITESPACE@[3281; 3282) " " 1932 [email protected] " "
1933 RANGE_EXPR@[3282; 3512) 1933 [email protected]
1934 DOT2@[3282; 3284) ".." 1934 [email protected] ".."
1935 WHITESPACE@[3284; 3288) " " 1935 [email protected] " "
1936 RANGE_EXPR@[3288; 3512) 1936 [email protected]
1937 DOT2EQ@[3288; 3291) "..=" 1937 [email protected] "..="
1938 RANGE_EXPR@[3291; 3512) 1938 [email protected]
1939 DOT2@[3291; 3293) ".." 1939 [email protected] ".."
1940 WHITESPACE@[3293; 3294) " " 1940 [email protected] " "
1941 RANGE_EXPR@[3294; 3512) 1941 [email protected]
1942 DOT2EQ@[3294; 3297) "..=" 1942 [email protected] "..="
1943 RANGE_EXPR@[3297; 3512) 1943 [email protected]
1944 DOT2@[3297; 3299) ".." 1944 [email protected] ".."
1945 WHITESPACE@[3299; 3303) " " 1945 [email protected] " "
1946 RANGE_EXPR@[3303; 3512) 1946 [email protected]
1947 DOT2EQ@[3303; 3306) "..=" 1947 [email protected] "..="
1948 RANGE_EXPR@[3306; 3512) 1948 [email protected]
1949 DOT2@[3306; 3308) ".." 1949 [email protected] ".."
1950 WHITESPACE@[3308; 3309) " " 1950 [email protected] " "
1951 RANGE_EXPR@[3309; 3512) 1951 [email protected]
1952 DOT2@[3309; 3311) ".." 1952 [email protected] ".."
1953 WHITESPACE@[3311; 3312) " " 1953 [email protected] " "
1954 RANGE_EXPR@[3312; 3512) 1954 [email protected]
1955 DOT2@[3312; 3314) ".." 1955 [email protected] ".."
1956 WHITESPACE@[3314; 3318) " " 1956 [email protected] " "
1957 RANGE_EXPR@[3318; 3512) 1957 [email protected]
1958 DOT2@[3318; 3320) ".." 1958 [email protected] ".."
1959 WHITESPACE@[3320; 3321) " " 1959 [email protected] " "
1960 RANGE_EXPR@[3321; 3512) 1960 [email protected]
1961 DOT2EQ@[3321; 3324) "..=" 1961 [email protected] "..="
1962 RANGE_EXPR@[3324; 3512) 1962 [email protected]
1963 DOT2@[3324; 3326) ".." 1963 [email protected] ".."
1964 WHITESPACE@[3326; 3327) " " 1964 [email protected] " "
1965 RANGE_EXPR@[3327; 3512) 1965 [email protected]
1966 DOT2@[3327; 3329) ".." 1966 [email protected] ".."
1967 WHITESPACE@[3329; 3334) "\n " 1967 [email protected] "\n "
1968 RANGE_EXPR@[3334; 3512) 1968 [email protected]
1969 DOT2EQ@[3334; 3337) "..=" 1969 [email protected] "..="
1970 RANGE_EXPR@[3337; 3512) 1970 [email protected]
1971 DOT2@[3337; 3339) ".." 1971 [email protected] ".."
1972 WHITESPACE@[3339; 3340) " " 1972 [email protected] " "
1973 RANGE_EXPR@[3340; 3512) 1973 [email protected]
1974 DOT2EQ@[3340; 3343) "..=" 1974 [email protected] "..="
1975 RANGE_EXPR@[3343; 3512) 1975 [email protected]
1976 DOT2@[3343; 3345) ".." 1976 [email protected] ".."
1977 WHITESPACE@[3345; 3349) " " 1977 [email protected] " "
1978 RANGE_EXPR@[3349; 3512) 1978 [email protected]
1979 DOT2EQ@[3349; 3352) "..=" 1979 [email protected] "..="
1980 RANGE_EXPR@[3352; 3512) 1980 [email protected]
1981 DOT2@[3352; 3354) ".." 1981 [email protected] ".."
1982 WHITESPACE@[3354; 3355) " " 1982 [email protected] " "
1983 RANGE_EXPR@[3355; 3512) 1983 [email protected]
1984 DOT2EQ@[3355; 3358) "..=" 1984 [email protected] "..="
1985 RANGE_EXPR@[3358; 3512) 1985 [email protected]
1986 DOT2@[3358; 3360) ".." 1986 [email protected] ".."
1987 WHITESPACE@[3360; 3364) " " 1987 [email protected] " "
1988 RANGE_EXPR@[3364; 3512) 1988 [email protected]
1989 DOT2@[3364; 3366) ".." 1989 [email protected] ".."
1990 WHITESPACE@[3366; 3367) " " 1990 [email protected] " "
1991 RANGE_EXPR@[3367; 3512) 1991 [email protected]
1992 DOT2EQ@[3367; 3370) "..=" 1992 [email protected] "..="
1993 RANGE_EXPR@[3370; 3512) 1993 [email protected]
1994 DOT2@[3370; 3372) ".." 1994 [email protected] ".."
1995 WHITESPACE@[3372; 3373) " " 1995 [email protected] " "
1996 RANGE_EXPR@[3373; 3512) 1996 [email protected]
1997 DOT2@[3373; 3375) ".." 1997 [email protected] ".."
1998 WHITESPACE@[3375; 3379) " " 1998 [email protected] " "
1999 RANGE_EXPR@[3379; 3512) 1999 [email protected]
2000 DOT2@[3379; 3381) ".." 2000 [email protected] ".."
2001 WHITESPACE@[3381; 3382) " " 2001 [email protected] " "
2002 RANGE_EXPR@[3382; 3512) 2002 [email protected]
2003 DOT2EQ@[3382; 3385) "..=" 2003 [email protected] "..="
2004 RANGE_EXPR@[3385; 3512) 2004 [email protected]
2005 DOT2@[3385; 3387) ".." 2005 [email protected] ".."
2006 WHITESPACE@[3387; 3388) " " 2006 [email protected] " "
2007 RANGE_EXPR@[3388; 3512) 2007 [email protected]
2008 DOT2@[3388; 3390) ".." 2008 [email protected] ".."
2009 WHITESPACE@[3390; 3395) "\n " 2009 [email protected] "\n "
2010 RANGE_EXPR@[3395; 3512) 2010 [email protected]
2011 DOT2EQ@[3395; 3398) "..=" 2011 [email protected] "..="
2012 RANGE_EXPR@[3398; 3512) 2012 [email protected]
2013 DOT2@[3398; 3400) ".." 2013 [email protected] ".."
2014 WHITESPACE@[3400; 3401) " " 2014 [email protected] " "
2015 RANGE_EXPR@[3401; 3512) 2015 [email protected]
2016 DOT2EQ@[3401; 3404) "..=" 2016 [email protected] "..="
2017 RANGE_EXPR@[3404; 3512) 2017 [email protected]
2018 DOT2@[3404; 3406) ".." 2018 [email protected] ".."
2019 WHITESPACE@[3406; 3410) " " 2019 [email protected] " "
2020 RANGE_EXPR@[3410; 3512) 2020 [email protected]
2021 DOT2EQ@[3410; 3413) "..=" 2021 [email protected] "..="
2022 RANGE_EXPR@[3413; 3512) 2022 [email protected]
2023 DOT2@[3413; 3415) ".." 2023 [email protected] ".."
2024 WHITESPACE@[3415; 3416) " " 2024 [email protected] " "
2025 RANGE_EXPR@[3416; 3512) 2025 [email protected]
2026 DOT2EQ@[3416; 3419) "..=" 2026 [email protected] "..="
2027 RANGE_EXPR@[3419; 3512) 2027 [email protected]
2028 DOT2@[3419; 3421) ".." 2028 [email protected] ".."
2029 WHITESPACE@[3421; 3425) " " 2029 [email protected] " "
2030 RANGE_EXPR@[3425; 3512) 2030 [email protected]
2031 DOT2@[3425; 3427) ".." 2031 [email protected] ".."
2032 WHITESPACE@[3427; 3428) " " 2032 [email protected] " "
2033 RANGE_EXPR@[3428; 3512) 2033 [email protected]
2034 DOT2@[3428; 3430) ".." 2034 [email protected] ".."
2035 WHITESPACE@[3430; 3431) " " 2035 [email protected] " "
2036 RANGE_EXPR@[3431; 3512) 2036 [email protected]
2037 DOT2EQ@[3431; 3434) "..=" 2037 [email protected] "..="
2038 RANGE_EXPR@[3434; 3512) 2038 [email protected]
2039 DOT2@[3434; 3436) ".." 2039 [email protected] ".."
2040 WHITESPACE@[3436; 3440) " " 2040 [email protected] " "
2041 RANGE_EXPR@[3440; 3512) 2041 [email protected]
2042 DOT2@[3440; 3442) ".." 2042 [email protected] ".."
2043 WHITESPACE@[3442; 3443) " " 2043 [email protected] " "
2044 RANGE_EXPR@[3443; 3512) 2044 [email protected]
2045 DOT2EQ@[3443; 3446) "..=" 2045 [email protected] "..="
2046 RANGE_EXPR@[3446; 3512) 2046 [email protected]
2047 DOT2@[3446; 3448) ".." 2047 [email protected] ".."
2048 WHITESPACE@[3448; 3449) " " 2048 [email protected] " "
2049 RANGE_EXPR@[3449; 3512) 2049 [email protected]
2050 DOT2@[3449; 3451) ".." 2050 [email protected] ".."
2051 WHITESPACE@[3451; 3456) "\n " 2051 [email protected] "\n "
2052 RANGE_EXPR@[3456; 3512) 2052 [email protected]
2053 DOT2EQ@[3456; 3459) "..=" 2053 [email protected] "..="
2054 RANGE_EXPR@[3459; 3512) 2054 [email protected]
2055 DOT2@[3459; 3461) ".." 2055 [email protected] ".."
2056 WHITESPACE@[3461; 3462) " " 2056 [email protected] " "
2057 RANGE_EXPR@[3462; 3512) 2057 [email protected]
2058 DOT2EQ@[3462; 3465) "..=" 2058 [email protected] "..="
2059 RANGE_EXPR@[3465; 3512) 2059 [email protected]
2060 DOT2@[3465; 3467) ".." 2060 [email protected] ".."
2061 WHITESPACE@[3467; 3471) " " 2061 [email protected] " "
2062 RANGE_EXPR@[3471; 3512) 2062 [email protected]
2063 DOT2@[3471; 3473) ".." 2063 [email protected] ".."
2064 WHITESPACE@[3473; 3474) " " 2064 [email protected] " "
2065 RANGE_EXPR@[3474; 3512) 2065 [email protected]
2066 DOT2EQ@[3474; 3477) "..=" 2066 [email protected] "..="
2067 RANGE_EXPR@[3477; 3512) 2067 [email protected]
2068 DOT2EQ@[3477; 3480) "..=" 2068 [email protected] "..="
2069 RANGE_EXPR@[3480; 3512) 2069 [email protected]
2070 DOT2@[3480; 3482) ".." 2070 [email protected] ".."
2071 WHITESPACE@[3482; 3486) " " 2071 [email protected] " "
2072 RANGE_EXPR@[3486; 3512) 2072 [email protected]
2073 DOT2EQ@[3486; 3489) "..=" 2073 [email protected] "..="
2074 RANGE_EXPR@[3489; 3512) 2074 [email protected]
2075 DOT2EQ@[3489; 3492) "..=" 2075 [email protected] "..="
2076 RANGE_EXPR@[3492; 3512) 2076 [email protected]
2077 DOT2@[3492; 3494) ".." 2077 [email protected] ".."
2078 WHITESPACE@[3494; 3495) " " 2078 [email protected] " "
2079 RANGE_EXPR@[3495; 3512) 2079 [email protected]
2080 DOT2@[3495; 3497) ".." 2080 [email protected] ".."
2081 WHITESPACE@[3497; 3501) " " 2081 [email protected] " "
2082 RANGE_EXPR@[3501; 3512) 2082 [email protected]
2083 DOT2@[3501; 3503) ".." 2083 [email protected] ".."
2084 WHITESPACE@[3503; 3504) " " 2084 [email protected] " "
2085 RANGE_EXPR@[3504; 3512) 2085 [email protected]
2086 DOT2EQ@[3504; 3507) "..=" 2086 [email protected] "..="
2087 RANGE_EXPR@[3507; 3512) 2087 [email protected]
2088 DOT2@[3507; 3509) ".." 2088 [email protected] ".."
2089 WHITESPACE@[3509; 3510) " " 2089 [email protected] " "
2090 RANGE_EXPR@[3510; 3512) 2090 [email protected]
2091 DOT2@[3510; 3512) ".." 2091 [email protected] ".."
2092 WHITESPACE@[3512; 3513) "\n" 2092 WHITESPACE@3512..3513 "\n"
2093 R_CURLY@[3513; 3514) "}" 2093 R_CURLY@3513..3514 "}"
2094 WHITESPACE@[3514; 3516) "\n\n" 2094 WHITESPACE@3514..3516 "\n\n"
2095 FN_DEF@[3516; 3552) 2095 FN_DEF@3516..3552
2096 FN_KW@[3516; 3518) "fn" 2096 FN_KW@3516..3518 "fn"
2097 WHITESPACE@[3518; 3519) " " 2097 WHITESPACE@3518..3519 " "
2098 NAME@[3519; 3525) 2098 NAME@3519..3525
2099 IDENT@[3519; 3525) "ktulhu" 2099 IDENT@3519..3525 "ktulhu"
2100 PARAM_LIST@[3525; 3527) 2100 PARAM_LIST@3525..3527
2101 L_PAREN@[3525; 3526) "(" 2101 L_PAREN@3525..3526 "("
2102 R_PAREN@[3526; 3527) ")" 2102 R_PAREN@3526..3527 ")"
2103 WHITESPACE@[3527; 3528) " " 2103 WHITESPACE@3527..3528 " "
2104 BLOCK_EXPR@[3528; 3552) 2104 BLOCK_EXPR@3528..3552
2105 BLOCK@[3528; 3552) 2105 BLOCK@3528..3552
2106 L_CURLY@[3528; 3529) "{" 2106 L_CURLY@3528..3529 "{"
2107 WHITESPACE@[3529; 3534) "\n " 2107 WHITESPACE@3529..3534 "\n "
2108 SEMICOLON@[3534; 3535) ";" 2108 SEMICOLON@3534..3535 ";"
2109 SEMICOLON@[3535; 3536) ";" 2109 SEMICOLON@3535..3536 ";"
2110 SEMICOLON@[3536; 3537) ";" 2110 SEMICOLON@3536..3537 ";"
2111 EXPR_STMT@[3537; 3540) 2111 EXPR_STMT@3537..3540
2112 TUPLE_EXPR@[3537; 3539) 2112 TUPLE_EXPR@3537..3539
2113 L_PAREN@[3537; 3538) "(" 2113 L_PAREN@3537..3538 "("
2114 R_PAREN@[3538; 3539) ")" 2114 R_PAREN@3538..3539 ")"
2115 SEMICOLON@[3539; 3540) ";" 2115 SEMICOLON@3539..3540 ";"
2116 SEMICOLON@[3540; 3541) ";" 2116 SEMICOLON@3540..3541 ";"
2117 SEMICOLON@[3541; 3542) ";" 2117 SEMICOLON@3541..3542 ";"
2118 SEMICOLON@[3542; 3543) ";" 2118 SEMICOLON@3542..3543 ";"
2119 SEMICOLON@[3543; 3544) ";" 2119 SEMICOLON@3543..3544 ";"
2120 SEMICOLON@[3544; 3545) ";" 2120 SEMICOLON@3544..3545 ";"
2121 SEMICOLON@[3545; 3546) ";" 2121 SEMICOLON@3545..3546 ";"
2122 SEMICOLON@[3546; 3547) ";" 2122 SEMICOLON@3546..3547 ";"
2123 SEMICOLON@[3547; 3548) ";" 2123 SEMICOLON@3547..3548 ";"
2124 TUPLE_EXPR@[3548; 3550) 2124 TUPLE_EXPR@3548..3550
2125 L_PAREN@[3548; 3549) "(" 2125 L_PAREN@3548..3549 "("
2126 R_PAREN@[3549; 3550) ")" 2126 R_PAREN@3549..3550 ")"
2127 WHITESPACE@[3550; 3551) "\n" 2127 WHITESPACE@3550..3551 "\n"
2128 R_CURLY@[3551; 3552) "}" 2128 R_CURLY@3551..3552 "}"
2129 WHITESPACE@[3552; 3554) "\n\n" 2129 WHITESPACE@3552..3554 "\n\n"
2130 FN_DEF@[3554; 3812) 2130 FN_DEF@3554..3812
2131 VISIBILITY@[3554; 3557) 2131 VISIBILITY@3554..3557
2132 PUB_KW@[3554; 3557) "pub" 2132 PUB_KW@3554..3557 "pub"
2133 WHITESPACE@[3557; 3558) " " 2133 WHITESPACE@3557..3558 " "
2134 FN_KW@[3558; 3560) "fn" 2134 FN_KW@3558..3560 "fn"
2135 WHITESPACE@[3560; 3561) " " 2135 WHITESPACE@3560..3561 " "
2136 NAME@[3561; 3565) 2136 NAME@3561..3565
2137 IDENT@[3561; 3565) "main" 2137 IDENT@3561..3565 "main"
2138 PARAM_LIST@[3565; 3567) 2138 PARAM_LIST@3565..3567
2139 L_PAREN@[3565; 3566) "(" 2139 L_PAREN@3565..3566 "("
2140 R_PAREN@[3566; 3567) ")" 2140 R_PAREN@3566..3567 ")"
2141 WHITESPACE@[3567; 3568) " " 2141 WHITESPACE@3567..3568 " "
2142 BLOCK_EXPR@[3568; 3812) 2142 BLOCK_EXPR@3568..3812
2143 BLOCK@[3568; 3812) 2143 BLOCK@3568..3812
2144 L_CURLY@[3568; 3569) "{" 2144 L_CURLY@3568..3569 "{"
2145 WHITESPACE@[3569; 3574) "\n " 2145 WHITESPACE@3569..3574 "\n "
2146 EXPR_STMT@[3574; 3584) 2146 EXPR_STMT@3574..3584
2147 CALL_EXPR@[3574; 3583) 2147 CALL_EXPR@3574..3583
2148 PATH_EXPR@[3574; 3581) 2148 PATH_EXPR@3574..3581
2149 PATH@[3574; 3581) 2149 PATH@3574..3581
2150 PATH_SEGMENT@[3574; 3581) 2150 PATH_SEGMENT@3574..3581
2151 NAME_REF@[3574; 3581) 2151 NAME_REF@3574..3581
2152 IDENT@[3574; 3581) "strange" 2152 IDENT@3574..3581 "strange"
2153 ARG_LIST@[3581; 3583) 2153 ARG_LIST@3581..3583
2154 L_PAREN@[3581; 3582) "(" 2154 L_PAREN@3581..3582 "("
2155 R_PAREN@[3582; 3583) ")" 2155 R_PAREN@3582..3583 ")"
2156 SEMICOLON@[3583; 3584) ";" 2156 SEMICOLON@3583..3584 ";"
2157 WHITESPACE@[3584; 3589) "\n " 2157 WHITESPACE@3584..3589 "\n "
2158 EXPR_STMT@[3589; 3597) 2158 EXPR_STMT@3589..3597
2159 CALL_EXPR@[3589; 3596) 2159 CALL_EXPR@3589..3596
2160 PATH_EXPR@[3589; 3594) 2160 PATH_EXPR@3589..3594
2161 PATH@[3589; 3594) 2161 PATH@3589..3594
2162 PATH_SEGMENT@[3589; 3594) 2162 PATH_SEGMENT@3589..3594
2163 NAME_REF@[3589; 3594) 2163 NAME_REF@3589..3594
2164 IDENT@[3589; 3594) "funny" 2164 IDENT@3589..3594 "funny"
2165 ARG_LIST@[3594; 3596) 2165 ARG_LIST@3594..3596
2166 L_PAREN@[3594; 3595) "(" 2166 L_PAREN@3594..3595 "("
2167 R_PAREN@[3595; 3596) ")" 2167 R_PAREN@3595..3596 ")"
2168 SEMICOLON@[3596; 3597) ";" 2168 SEMICOLON@3596..3597 ";"
2169 WHITESPACE@[3597; 3602) "\n " 2169 WHITESPACE@3597..3602 "\n "
2170 EXPR_STMT@[3602; 3609) 2170 EXPR_STMT@3602..3609
2171 CALL_EXPR@[3602; 3608) 2171 CALL_EXPR@3602..3608
2172 PATH_EXPR@[3602; 3606) 2172 PATH_EXPR@3602..3606
2173 PATH@[3602; 3606) 2173 PATH@3602..3606
2174 PATH_SEGMENT@[3602; 3606) 2174 PATH_SEGMENT@3602..3606
2175 NAME_REF@[3602; 3606) 2175 NAME_REF@3602..3606
2176 IDENT@[3602; 3606) "what" 2176 IDENT@3602..3606 "what"
2177 ARG_LIST@[3606; 3608) 2177 ARG_LIST@3606..3608
2178 L_PAREN@[3606; 3607) "(" 2178 L_PAREN@3606..3607 "("
2179 R_PAREN@[3607; 3608) ")" 2179 R_PAREN@3607..3608 ")"
2180 SEMICOLON@[3608; 3609) ";" 2180 SEMICOLON@3608..3609 ";"
2181 WHITESPACE@[3609; 3614) "\n " 2181 WHITESPACE@3609..3614 "\n "
2182 EXPR_STMT@[3614; 3628) 2182 EXPR_STMT@3614..3628
2183 CALL_EXPR@[3614; 3627) 2183 CALL_EXPR@3614..3627
2184 PATH_EXPR@[3614; 3625) 2184 PATH_EXPR@3614..3625
2185 PATH@[3614; 3625) 2185 PATH@3614..3625
2186 PATH_SEGMENT@[3614; 3625) 2186 PATH_SEGMENT@3614..3625
2187 NAME_REF@[3614; 3625) 2187 NAME_REF@3614..3625
2188 IDENT@[3614; 3625) "zombiejesus" 2188 IDENT@3614..3625 "zombiejesus"
2189 ARG_LIST@[3625; 3627) 2189 ARG_LIST@3625..3627
2190 L_PAREN@[3625; 3626) "(" 2190 L_PAREN@3625..3626 "("
2191 R_PAREN@[3626; 3627) ")" 2191 R_PAREN@3626..3627 ")"
2192 SEMICOLON@[3627; 3628) ";" 2192 SEMICOLON@3627..3628 ";"
2193 WHITESPACE@[3628; 3633) "\n " 2193 WHITESPACE@3628..3633 "\n "
2194 EXPR_STMT@[3633; 3643) 2194 EXPR_STMT@3633..3643
2195 CALL_EXPR@[3633; 3642) 2195 CALL_EXPR@3633..3642
2196 PATH_EXPR@[3633; 3640) 2196 PATH_EXPR@3633..3640
2197 PATH@[3633; 3640) 2197 PATH@3633..3640
2198 PATH_SEGMENT@[3633; 3640) 2198 PATH_SEGMENT@3633..3640
2199 NAME_REF@[3633; 3640) 2199 NAME_REF@3633..3640
2200 IDENT@[3633; 3640) "notsure" 2200 IDENT@3633..3640 "notsure"
2201 ARG_LIST@[3640; 3642) 2201 ARG_LIST@3640..3642
2202 L_PAREN@[3640; 3641) "(" 2202 L_PAREN@3640..3641 "("
2203 R_PAREN@[3641; 3642) ")" 2203 R_PAREN@3641..3642 ")"
2204 SEMICOLON@[3642; 3643) ";" 2204 SEMICOLON@3642..3643 ";"
2205 WHITESPACE@[3643; 3648) "\n " 2205 WHITESPACE@3643..3648 "\n "
2206 EXPR_STMT@[3648; 3664) 2206 EXPR_STMT@3648..3664
2207 CALL_EXPR@[3648; 3663) 2207 CALL_EXPR@3648..3663
2208 PATH_EXPR@[3648; 3661) 2208 PATH_EXPR@3648..3661
2209 PATH@[3648; 3661) 2209 PATH@3648..3661
2210 PATH_SEGMENT@[3648; 3661) 2210 PATH_SEGMENT@3648..3661
2211 NAME_REF@[3648; 3661) 2211 NAME_REF@3648..3661
2212 IDENT@[3648; 3661) "canttouchthis" 2212 IDENT@3648..3661 "canttouchthis"
2213 ARG_LIST@[3661; 3663) 2213 ARG_LIST@3661..3663
2214 L_PAREN@[3661; 3662) "(" 2214 L_PAREN@3661..3662 "("
2215 R_PAREN@[3662; 3663) ")" 2215 R_PAREN@3662..3663 ")"
2216 SEMICOLON@[3663; 3664) ";" 2216 SEMICOLON@3663..3664 ";"
2217 WHITESPACE@[3664; 3669) "\n " 2217 WHITESPACE@3664..3669 "\n "
2218 EXPR_STMT@[3669; 3681) 2218 EXPR_STMT@3669..3681
2219 CALL_EXPR@[3669; 3680) 2219 CALL_EXPR@3669..3680
2220 PATH_EXPR@[3669; 3678) 2220 PATH_EXPR@3669..3678
2221 PATH@[3669; 3678) 2221 PATH@3669..3678
2222 PATH_SEGMENT@[3669; 3678) 2222 PATH_SEGMENT@3669..3678
2223 NAME_REF@[3669; 3678) 2223 NAME_REF@3669..3678
2224 IDENT@[3669; 3678) "angrydome" 2224 IDENT@3669..3678 "angrydome"
2225 ARG_LIST@[3678; 3680) 2225 ARG_LIST@3678..3680
2226 L_PAREN@[3678; 3679) "(" 2226 L_PAREN@3678..3679 "("
2227 R_PAREN@[3679; 3680) ")" 2227 R_PAREN@3679..3680 ")"
2228 SEMICOLON@[3680; 3681) ";" 2228 SEMICOLON@3680..3681 ";"
2229 WHITESPACE@[3681; 3686) "\n " 2229 WHITESPACE@3681..3686 "\n "
2230 EXPR_STMT@[3686; 3701) 2230 EXPR_STMT@3686..3701
2231 CALL_EXPR@[3686; 3700) 2231 CALL_EXPR@3686..3700
2232 PATH_EXPR@[3686; 3698) 2232 PATH_EXPR@3686..3698
2233 PATH@[3686; 3698) 2233 PATH@3686..3698
2234 PATH_SEGMENT@[3686; 3698) 2234 PATH_SEGMENT@3686..3698
2235 NAME_REF@[3686; 3698) 2235 NAME_REF@3686..3698
2236 IDENT@[3686; 3698) "evil_lincoln" 2236 IDENT@3686..3698 "evil_lincoln"
2237 ARG_LIST@[3698; 3700) 2237 ARG_LIST@3698..3700
2238 L_PAREN@[3698; 3699) "(" 2238 L_PAREN@3698..3699 "("
2239 R_PAREN@[3699; 3700) ")" 2239 R_PAREN@3699..3700 ")"
2240 SEMICOLON@[3700; 3701) ";" 2240 SEMICOLON@3700..3701 ";"
2241 WHITESPACE@[3701; 3706) "\n " 2241 WHITESPACE@3701..3706 "\n "
2242 EXPR_STMT@[3706; 3713) 2242 EXPR_STMT@3706..3713
2243 CALL_EXPR@[3706; 3712) 2243 CALL_EXPR@3706..3712
2244 PATH_EXPR@[3706; 3710) 2244 PATH_EXPR@3706..3710
2245 PATH@[3706; 3710) 2245 PATH@3706..3710
2246 PATH_SEGMENT@[3706; 3710) 2246 PATH_SEGMENT@3706..3710
2247 NAME_REF@[3706; 3710) 2247 NAME_REF@3706..3710
2248 IDENT@[3706; 3710) "dots" 2248 IDENT@3706..3710 "dots"
2249 ARG_LIST@[3710; 3712) 2249 ARG_LIST@3710..3712
2250 L_PAREN@[3710; 3711) "(" 2250 L_PAREN@3710..3711 "("
2251 R_PAREN@[3711; 3712) ")" 2251 R_PAREN@3711..3712 ")"
2252 SEMICOLON@[3712; 3713) ";" 2252 SEMICOLON@3712..3713 ";"
2253 WHITESPACE@[3713; 3718) "\n " 2253 WHITESPACE@3713..3718 "\n "
2254 EXPR_STMT@[3718; 3726) 2254 EXPR_STMT@3718..3726
2255 CALL_EXPR@[3718; 3725) 2255 CALL_EXPR@3718..3725
2256 PATH_EXPR@[3718; 3720) 2256 PATH_EXPR@3718..3720
2257 PATH@[3718; 3720) 2257 PATH@3718..3720
2258 PATH_SEGMENT@[3718; 3720) 2258 PATH_SEGMENT@3718..3720
2259 NAME_REF@[3718; 3720) 2259 NAME_REF@3718..3720
2260 IDENT@[3718; 3720) "u8" 2260 IDENT@3718..3720 "u8"
2261 ARG_LIST@[3720; 3725) 2261 ARG_LIST@3720..3725
2262 L_PAREN@[3720; 3721) "(" 2262 L_PAREN@3720..3721 "("
2263 LITERAL@[3721; 3724) 2263 LITERAL@3721..3724
2264 INT_NUMBER@[3721; 3724) "8u8" 2264 INT_NUMBER@3721..3724 "8u8"
2265 R_PAREN@[3724; 3725) ")" 2265 R_PAREN@3724..3725 ")"
2266 SEMICOLON@[3725; 3726) ";" 2266 SEMICOLON@3725..3726 ";"
2267 WHITESPACE@[3726; 3731) "\n " 2267 WHITESPACE@3726..3731 "\n "
2268 EXPR_STMT@[3731; 3739) 2268 EXPR_STMT@3731..3739
2269 CALL_EXPR@[3731; 3738) 2269 CALL_EXPR@3731..3738
2270 PATH_EXPR@[3731; 3736) 2270 PATH_EXPR@3731..3736
2271 PATH@[3731; 3736) 2271 PATH@3731..3736
2272 PATH_SEGMENT@[3731; 3736) 2272 PATH_SEGMENT@3731..3736
2273 NAME_REF@[3731; 3736) 2273 NAME_REF@3731..3736
2274 IDENT@[3731; 3736) "fishy" 2274 IDENT@3731..3736 "fishy"
2275 ARG_LIST@[3736; 3738) 2275 ARG_LIST@3736..3738
2276 L_PAREN@[3736; 3737) "(" 2276 L_PAREN@3736..3737 "("
2277 R_PAREN@[3737; 3738) ")" 2277 R_PAREN@3737..3738 ")"
2278 SEMICOLON@[3738; 3739) ";" 2278 SEMICOLON@3738..3739 ";"
2279 WHITESPACE@[3739; 3744) "\n " 2279 WHITESPACE@3739..3744 "\n "
2280 EXPR_STMT@[3744; 3752) 2280 EXPR_STMT@3744..3752
2281 CALL_EXPR@[3744; 3751) 2281 CALL_EXPR@3744..3751
2282 PATH_EXPR@[3744; 3749) 2282 PATH_EXPR@3744..3749
2283 PATH@[3744; 3749) 2283 PATH@3744..3749
2284 PATH_SEGMENT@[3744; 3749) 2284 PATH_SEGMENT@3744..3749
2285 NAME_REF@[3744; 3749) 2285 NAME_REF@3744..3749
2286 IDENT@[3744; 3749) "union" 2286 IDENT@3744..3749 "union"
2287 ARG_LIST@[3749; 3751) 2287 ARG_LIST@3749..3751
2288 L_PAREN@[3749; 3750) "(" 2288 L_PAREN@3749..3750 "("
2289 R_PAREN@[3750; 3751) ")" 2289 R_PAREN@3750..3751 ")"
2290 SEMICOLON@[3751; 3752) ";" 2290 SEMICOLON@3751..3752 ";"
2291 WHITESPACE@[3752; 3757) "\n " 2291 WHITESPACE@3752..3757 "\n "
2292 EXPR_STMT@[3757; 3778) 2292 EXPR_STMT@3757..3778
2293 CALL_EXPR@[3757; 3777) 2293 CALL_EXPR@3757..3777
2294 PATH_EXPR@[3757; 3775) 2294 PATH_EXPR@3757..3775
2295 PATH@[3757; 3775) 2295 PATH@3757..3775
2296 PATH_SEGMENT@[3757; 3775) 2296 PATH_SEGMENT@3757..3775
2297 NAME_REF@[3757; 3775) 2297 NAME_REF@3757..3775
2298 IDENT@[3757; 3775) "special_characters" 2298 IDENT@3757..3775 "special_characters"
2299 ARG_LIST@[3775; 3777) 2299 ARG_LIST@3775..3777
2300 L_PAREN@[3775; 3776) "(" 2300 L_PAREN@3775..3776 "("
2301 R_PAREN@[3776; 3777) ")" 2301 R_PAREN@3776..3777 ")"
2302 SEMICOLON@[3777; 3778) ";" 2302 SEMICOLON@3777..3778 ";"
2303 WHITESPACE@[3778; 3783) "\n " 2303 WHITESPACE@3778..3783 "\n "
2304 EXPR_STMT@[3783; 3796) 2304 EXPR_STMT@3783..3796
2305 CALL_EXPR@[3783; 3795) 2305 CALL_EXPR@3783..3795
2306 PATH_EXPR@[3783; 3793) 2306 PATH_EXPR@3783..3793
2307 PATH@[3783; 3793) 2307 PATH@3783..3793
2308 PATH_SEGMENT@[3783; 3793) 2308 PATH_SEGMENT@3783..3793
2309 NAME_REF@[3783; 3793) 2309 NAME_REF@3783..3793
2310 IDENT@[3783; 3793) "punch_card" 2310 IDENT@3783..3793 "punch_card"
2311 ARG_LIST@[3793; 3795) 2311 ARG_LIST@3793..3795
2312 L_PAREN@[3793; 3794) "(" 2312 L_PAREN@3793..3794 "("
2313 R_PAREN@[3794; 3795) ")" 2313 R_PAREN@3794..3795 ")"
2314 SEMICOLON@[3795; 3796) ";" 2314 SEMICOLON@3795..3796 ";"
2315 WHITESPACE@[3796; 3801) "\n " 2315 WHITESPACE@3796..3801 "\n "
2316 EXPR_STMT@[3801; 3810) 2316 EXPR_STMT@3801..3810
2317 CALL_EXPR@[3801; 3809) 2317 CALL_EXPR@3801..3809
2318 PATH_EXPR@[3801; 3807) 2318 PATH_EXPR@3801..3807
2319 PATH@[3801; 3807) 2319 PATH@3801..3807
2320 PATH_SEGMENT@[3801; 3807) 2320 PATH_SEGMENT@3801..3807
2321 NAME_REF@[3801; 3807) 2321 NAME_REF@3801..3807
2322 IDENT@[3801; 3807) "ktulhu" 2322 IDENT@3801..3807 "ktulhu"
2323 ARG_LIST@[3807; 3809) 2323 ARG_LIST@3807..3809
2324 L_PAREN@[3807; 3808) "(" 2324 L_PAREN@3807..3808 "("
2325 R_PAREN@[3808; 3809) ")" 2325 R_PAREN@3808..3809 ")"
2326 SEMICOLON@[3809; 3810) ";" 2326 SEMICOLON@3809..3810 ";"
2327 WHITESPACE@[3810; 3811) "\n" 2327 WHITESPACE@3810..3811 "\n"
2328 R_CURLY@[3811; 3812) "}" 2328 R_CURLY@3811..3812 "}"
2329 WHITESPACE@[3812; 3813) "\n" 2329 WHITESPACE@3812..3813 "\n"