diff options
Diffstat (limited to 'crates/ra_syntax/test_data/parser/ok/0051_parameter_attrs.rast')
-rw-r--r-- | crates/ra_syntax/test_data/parser/ok/0051_parameter_attrs.rast | 1038 |
1 files changed, 519 insertions, 519 deletions
diff --git a/crates/ra_syntax/test_data/parser/ok/0051_parameter_attrs.rast b/crates/ra_syntax/test_data/parser/ok/0051_parameter_attrs.rast index 8fd28427c..6aacc2141 100644 --- a/crates/ra_syntax/test_data/parser/ok/0051_parameter_attrs.rast +++ b/crates/ra_syntax/test_data/parser/ok/0051_parameter_attrs.rast | |||
@@ -1,519 +1,519 @@ | |||
1 | SOURCE_FILE@[0; 519) | 1 | SOURCE_FILE@0..519 |
2 | FN_DEF@[0; 37) | 2 | FN_DEF@0..37 |
3 | FN_KW@[0; 2) "fn" | 3 | FN_KW@0..2 "fn" |
4 | WHITESPACE@[2; 3) " " | 4 | WHITESPACE@2..3 " " |
5 | NAME@[3; 5) | 5 | NAME@3..5 |
6 | IDENT@[3; 5) "g1" | 6 | IDENT@3..5 "g1" |
7 | PARAM_LIST@[5; 34) | 7 | PARAM_LIST@5..34 |
8 | L_PAREN@[5; 6) "(" | 8 | L_PAREN@5..6 "(" |
9 | ATTR@[6; 14) | 9 | ATTR@6..14 |
10 | POUND@[6; 7) "#" | 10 | POUND@6..7 "#" |
11 | L_BRACK@[7; 8) "[" | 11 | L_BRACK@7..8 "[" |
12 | PATH@[8; 13) | 12 | PATH@8..13 |
13 | PATH_SEGMENT@[8; 13) | 13 | PATH_SEGMENT@8..13 |
14 | NAME_REF@[8; 13) | 14 | NAME_REF@8..13 |
15 | IDENT@[8; 13) "attr1" | 15 | IDENT@8..13 "attr1" |
16 | R_BRACK@[13; 14) "]" | 16 | R_BRACK@13..14 "]" |
17 | WHITESPACE@[14; 15) " " | 17 | WHITESPACE@14..15 " " |
18 | ATTR@[15; 23) | 18 | ATTR@15..23 |
19 | POUND@[15; 16) "#" | 19 | POUND@15..16 "#" |
20 | L_BRACK@[16; 17) "[" | 20 | L_BRACK@16..17 "[" |
21 | PATH@[17; 22) | 21 | PATH@17..22 |
22 | PATH_SEGMENT@[17; 22) | 22 | PATH_SEGMENT@17..22 |
23 | NAME_REF@[17; 22) | 23 | NAME_REF@17..22 |
24 | IDENT@[17; 22) "attr2" | 24 | IDENT@17..22 "attr2" |
25 | R_BRACK@[22; 23) "]" | 25 | R_BRACK@22..23 "]" |
26 | WHITESPACE@[23; 24) " " | 26 | WHITESPACE@23..24 " " |
27 | PARAM@[24; 33) | 27 | PARAM@24..33 |
28 | BIND_PAT@[24; 27) | 28 | BIND_PAT@24..27 |
29 | NAME@[24; 27) | 29 | NAME@24..27 |
30 | IDENT@[24; 27) "pat" | 30 | IDENT@24..27 "pat" |
31 | COLON@[27; 28) ":" | 31 | COLON@27..28 ":" |
32 | WHITESPACE@[28; 29) " " | 32 | WHITESPACE@28..29 " " |
33 | PATH_TYPE@[29; 33) | 33 | PATH_TYPE@29..33 |
34 | PATH@[29; 33) | 34 | PATH@29..33 |
35 | PATH_SEGMENT@[29; 33) | 35 | PATH_SEGMENT@29..33 |
36 | NAME_REF@[29; 33) | 36 | NAME_REF@29..33 |
37 | IDENT@[29; 33) "Type" | 37 | IDENT@29..33 "Type" |
38 | R_PAREN@[33; 34) ")" | 38 | R_PAREN@33..34 ")" |
39 | WHITESPACE@[34; 35) " " | 39 | WHITESPACE@34..35 " " |
40 | BLOCK_EXPR@[35; 37) | 40 | BLOCK_EXPR@35..37 |
41 | BLOCK@[35; 37) | 41 | BLOCK@35..37 |
42 | L_CURLY@[35; 36) "{" | 42 | L_CURLY@35..36 "{" |
43 | R_CURLY@[36; 37) "}" | 43 | R_CURLY@36..37 "}" |
44 | WHITESPACE@[37; 38) "\n" | 44 | WHITESPACE@37..38 "\n" |
45 | FN_DEF@[38; 62) | 45 | FN_DEF@38..62 |
46 | FN_KW@[38; 40) "fn" | 46 | FN_KW@38..40 "fn" |
47 | WHITESPACE@[40; 41) " " | 47 | WHITESPACE@40..41 " " |
48 | NAME@[41; 43) | 48 | NAME@41..43 |
49 | IDENT@[41; 43) "g2" | 49 | IDENT@41..43 "g2" |
50 | PARAM_LIST@[43; 59) | 50 | PARAM_LIST@43..59 |
51 | L_PAREN@[43; 44) "(" | 51 | L_PAREN@43..44 "(" |
52 | ATTR@[44; 52) | 52 | ATTR@44..52 |
53 | POUND@[44; 45) "#" | 53 | POUND@44..45 "#" |
54 | L_BRACK@[45; 46) "[" | 54 | L_BRACK@45..46 "[" |
55 | PATH@[46; 51) | 55 | PATH@46..51 |
56 | PATH_SEGMENT@[46; 51) | 56 | PATH_SEGMENT@46..51 |
57 | NAME_REF@[46; 51) | 57 | NAME_REF@46..51 |
58 | IDENT@[46; 51) "attr1" | 58 | IDENT@46..51 "attr1" |
59 | R_BRACK@[51; 52) "]" | 59 | R_BRACK@51..52 "]" |
60 | WHITESPACE@[52; 53) " " | 60 | WHITESPACE@52..53 " " |
61 | PARAM@[53; 58) | 61 | PARAM@53..58 |
62 | BIND_PAT@[53; 54) | 62 | BIND_PAT@53..54 |
63 | NAME@[53; 54) | 63 | NAME@53..54 |
64 | IDENT@[53; 54) "x" | 64 | IDENT@53..54 "x" |
65 | COLON@[54; 55) ":" | 65 | COLON@54..55 ":" |
66 | WHITESPACE@[55; 56) " " | 66 | WHITESPACE@55..56 " " |
67 | PATH_TYPE@[56; 58) | 67 | PATH_TYPE@56..58 |
68 | PATH@[56; 58) | 68 | PATH@56..58 |
69 | PATH_SEGMENT@[56; 58) | 69 | PATH_SEGMENT@56..58 |
70 | NAME_REF@[56; 58) | 70 | NAME_REF@56..58 |
71 | IDENT@[56; 58) "u8" | 71 | IDENT@56..58 "u8" |
72 | R_PAREN@[58; 59) ")" | 72 | R_PAREN@58..59 ")" |
73 | WHITESPACE@[59; 60) " " | 73 | WHITESPACE@59..60 " " |
74 | BLOCK_EXPR@[60; 62) | 74 | BLOCK_EXPR@60..62 |
75 | BLOCK@[60; 62) | 75 | BLOCK@60..62 |
76 | L_CURLY@[60; 61) "{" | 76 | L_CURLY@60..61 "{" |
77 | R_CURLY@[61; 62) "}" | 77 | R_CURLY@61..62 "}" |
78 | WHITESPACE@[62; 64) "\n\n" | 78 | WHITESPACE@62..64 "\n\n" |
79 | EXTERN_BLOCK@[64; 128) | 79 | EXTERN_BLOCK@64..128 |
80 | ABI@[64; 74) | 80 | ABI@64..74 |
81 | EXTERN_KW@[64; 70) "extern" | 81 | EXTERN_KW@64..70 "extern" |
82 | WHITESPACE@[70; 71) " " | 82 | WHITESPACE@70..71 " " |
83 | STRING@[71; 74) "\"C\"" | 83 | STRING@71..74 "\"C\"" |
84 | WHITESPACE@[74; 75) " " | 84 | WHITESPACE@74..75 " " |
85 | EXTERN_ITEM_LIST@[75; 128) | 85 | EXTERN_ITEM_LIST@75..128 |
86 | L_CURLY@[75; 76) "{" | 86 | L_CURLY@75..76 "{" |
87 | WHITESPACE@[76; 77) " " | 87 | WHITESPACE@76..77 " " |
88 | FN_DEF@[77; 126) | 88 | FN_DEF@77..126 |
89 | FN_KW@[77; 79) "fn" | 89 | FN_KW@77..79 "fn" |
90 | WHITESPACE@[79; 80) " " | 90 | WHITESPACE@79..80 " " |
91 | NAME@[80; 86) | 91 | NAME@80..86 |
92 | IDENT@[80; 86) "printf" | 92 | IDENT@80..86 "printf" |
93 | PARAM_LIST@[86; 118) | 93 | PARAM_LIST@86..118 |
94 | L_PAREN@[86; 87) "(" | 94 | L_PAREN@86..87 "(" |
95 | PARAM@[87; 104) | 95 | PARAM@87..104 |
96 | BIND_PAT@[87; 93) | 96 | BIND_PAT@87..93 |
97 | NAME@[87; 93) | 97 | NAME@87..93 |
98 | IDENT@[87; 93) "format" | 98 | IDENT@87..93 "format" |
99 | COLON@[93; 94) ":" | 99 | COLON@93..94 ":" |
100 | WHITESPACE@[94; 95) " " | 100 | WHITESPACE@94..95 " " |
101 | POINTER_TYPE@[95; 104) | 101 | POINTER_TYPE@95..104 |
102 | STAR@[95; 96) "*" | 102 | STAR@95..96 "*" |
103 | CONST_KW@[96; 101) "const" | 103 | CONST_KW@96..101 "const" |
104 | WHITESPACE@[101; 102) " " | 104 | WHITESPACE@101..102 " " |
105 | PATH_TYPE@[102; 104) | 105 | PATH_TYPE@102..104 |
106 | PATH@[102; 104) | 106 | PATH@102..104 |
107 | PATH_SEGMENT@[102; 104) | 107 | PATH_SEGMENT@102..104 |
108 | NAME_REF@[102; 104) | 108 | NAME_REF@102..104 |
109 | IDENT@[102; 104) "i8" | 109 | IDENT@102..104 "i8" |
110 | COMMA@[104; 105) "," | 110 | COMMA@104..105 "," |
111 | WHITESPACE@[105; 106) " " | 111 | WHITESPACE@105..106 " " |
112 | ATTR@[106; 113) | 112 | ATTR@106..113 |
113 | POUND@[106; 107) "#" | 113 | POUND@106..107 "#" |
114 | L_BRACK@[107; 108) "[" | 114 | L_BRACK@107..108 "[" |
115 | PATH@[108; 112) | 115 | PATH@108..112 |
116 | PATH_SEGMENT@[108; 112) | 116 | PATH_SEGMENT@108..112 |
117 | NAME_REF@[108; 112) | 117 | NAME_REF@108..112 |
118 | IDENT@[108; 112) "attr" | 118 | IDENT@108..112 "attr" |
119 | R_BRACK@[112; 113) "]" | 119 | R_BRACK@112..113 "]" |
120 | WHITESPACE@[113; 114) " " | 120 | WHITESPACE@113..114 " " |
121 | PARAM@[114; 117) | 121 | PARAM@114..117 |
122 | DOT3@[114; 117) "..." | 122 | DOT3@114..117 "..." |
123 | R_PAREN@[117; 118) ")" | 123 | R_PAREN@117..118 ")" |
124 | WHITESPACE@[118; 119) " " | 124 | WHITESPACE@118..119 " " |
125 | RET_TYPE@[119; 125) | 125 | RET_TYPE@119..125 |
126 | THIN_ARROW@[119; 121) "->" | 126 | THIN_ARROW@119..121 "->" |
127 | WHITESPACE@[121; 122) " " | 127 | WHITESPACE@121..122 " " |
128 | PATH_TYPE@[122; 125) | 128 | PATH_TYPE@122..125 |
129 | PATH@[122; 125) | 129 | PATH@122..125 |
130 | PATH_SEGMENT@[122; 125) | 130 | PATH_SEGMENT@122..125 |
131 | NAME_REF@[122; 125) | 131 | NAME_REF@122..125 |
132 | IDENT@[122; 125) "i32" | 132 | IDENT@122..125 "i32" |
133 | SEMICOLON@[125; 126) ";" | 133 | SEMICOLON@125..126 ";" |
134 | WHITESPACE@[126; 127) " " | 134 | WHITESPACE@126..127 " " |
135 | R_CURLY@[127; 128) "}" | 135 | R_CURLY@127..128 "}" |
136 | WHITESPACE@[128; 130) "\n\n" | 136 | WHITESPACE@128..130 "\n\n" |
137 | FN_DEF@[130; 172) | 137 | FN_DEF@130..172 |
138 | FN_KW@[130; 132) "fn" | 138 | FN_KW@130..132 "fn" |
139 | WHITESPACE@[132; 133) " " | 139 | WHITESPACE@132..133 " " |
140 | NAME@[133; 136) | 140 | NAME@133..136 |
141 | IDENT@[133; 136) "foo" | 141 | IDENT@133..136 "foo" |
142 | TYPE_PARAM_LIST@[136; 168) | 142 | TYPE_PARAM_LIST@136..168 |
143 | L_ANGLE@[136; 137) "<" | 143 | L_ANGLE@136..137 "<" |
144 | TYPE_PARAM@[137; 167) | 144 | TYPE_PARAM@137..167 |
145 | NAME@[137; 138) | 145 | NAME@137..138 |
146 | IDENT@[137; 138) "F" | 146 | IDENT@137..138 "F" |
147 | COLON@[138; 139) ":" | 147 | COLON@138..139 ":" |
148 | WHITESPACE@[139; 140) " " | 148 | WHITESPACE@139..140 " " |
149 | TYPE_BOUND_LIST@[140; 167) | 149 | TYPE_BOUND_LIST@140..167 |
150 | TYPE_BOUND@[140; 167) | 150 | TYPE_BOUND@140..167 |
151 | PATH_TYPE@[140; 167) | 151 | PATH_TYPE@140..167 |
152 | PATH@[140; 167) | 152 | PATH@140..167 |
153 | PATH_SEGMENT@[140; 167) | 153 | PATH_SEGMENT@140..167 |
154 | NAME_REF@[140; 145) | 154 | NAME_REF@140..145 |
155 | IDENT@[140; 145) "FnMut" | 155 | IDENT@140..145 "FnMut" |
156 | PARAM_LIST@[145; 167) | 156 | PARAM_LIST@145..167 |
157 | L_PAREN@[145; 146) "(" | 157 | L_PAREN@145..146 "(" |
158 | ATTR@[146; 153) | 158 | ATTR@146..153 |
159 | POUND@[146; 147) "#" | 159 | POUND@146..147 "#" |
160 | L_BRACK@[147; 148) "[" | 160 | L_BRACK@147..148 "[" |
161 | PATH@[148; 152) | 161 | PATH@148..152 |
162 | PATH_SEGMENT@[148; 152) | 162 | PATH_SEGMENT@148..152 |
163 | NAME_REF@[148; 152) | 163 | NAME_REF@148..152 |
164 | IDENT@[148; 152) "attr" | 164 | IDENT@148..152 "attr" |
165 | R_BRACK@[152; 153) "]" | 165 | R_BRACK@152..153 "]" |
166 | WHITESPACE@[153; 154) " " | 166 | WHITESPACE@153..154 " " |
167 | PARAM@[154; 166) | 167 | PARAM@154..166 |
168 | REFERENCE_TYPE@[154; 166) | 168 | REFERENCE_TYPE@154..166 |
169 | AMP@[154; 155) "&" | 169 | AMP@154..155 "&" |
170 | MUT_KW@[155; 158) "mut" | 170 | MUT_KW@155..158 "mut" |
171 | WHITESPACE@[158; 159) " " | 171 | WHITESPACE@158..159 " " |
172 | PATH_TYPE@[159; 166) | 172 | PATH_TYPE@159..166 |
173 | PATH@[159; 166) | 173 | PATH@159..166 |
174 | PATH_SEGMENT@[159; 166) | 174 | PATH_SEGMENT@159..166 |
175 | NAME_REF@[159; 162) | 175 | NAME_REF@159..162 |
176 | IDENT@[159; 162) "Foo" | 176 | IDENT@159..162 "Foo" |
177 | TYPE_ARG_LIST@[162; 166) | 177 | TYPE_ARG_LIST@162..166 |
178 | L_ANGLE@[162; 163) "<" | 178 | L_ANGLE@162..163 "<" |
179 | LIFETIME_ARG@[163; 165) | 179 | LIFETIME_ARG@163..165 |
180 | LIFETIME@[163; 165) "\'a" | 180 | LIFETIME@163..165 "\'a" |
181 | R_ANGLE@[165; 166) ">" | 181 | R_ANGLE@165..166 ">" |
182 | R_PAREN@[166; 167) ")" | 182 | R_PAREN@166..167 ")" |
183 | R_ANGLE@[167; 168) ">" | 183 | R_ANGLE@167..168 ">" |
184 | PARAM_LIST@[168; 170) | 184 | PARAM_LIST@168..170 |
185 | L_PAREN@[168; 169) "(" | 185 | L_PAREN@168..169 "(" |
186 | R_PAREN@[169; 170) ")" | 186 | R_PAREN@169..170 ")" |
187 | BLOCK_EXPR@[170; 172) | 187 | BLOCK_EXPR@170..172 |
188 | BLOCK@[170; 172) | 188 | BLOCK@170..172 |
189 | L_CURLY@[170; 171) "{" | 189 | L_CURLY@170..171 "{" |
190 | R_CURLY@[171; 172) "}" | 190 | R_CURLY@171..172 "}" |
191 | WHITESPACE@[172; 174) "\n\n" | 191 | WHITESPACE@172..174 "\n\n" |
192 | TRAIT_DEF@[174; 236) | 192 | TRAIT_DEF@174..236 |
193 | TRAIT_KW@[174; 179) "trait" | 193 | TRAIT_KW@174..179 "trait" |
194 | WHITESPACE@[179; 180) " " | 194 | WHITESPACE@179..180 " " |
195 | NAME@[180; 183) | 195 | NAME@180..183 |
196 | IDENT@[180; 183) "Foo" | 196 | IDENT@180..183 "Foo" |
197 | WHITESPACE@[183; 184) " " | 197 | WHITESPACE@183..184 " " |
198 | ITEM_LIST@[184; 236) | 198 | ITEM_LIST@184..236 |
199 | L_CURLY@[184; 185) "{" | 199 | L_CURLY@184..185 "{" |
200 | WHITESPACE@[185; 190) "\n " | 200 | WHITESPACE@185..190 "\n " |
201 | FN_DEF@[190; 234) | 201 | FN_DEF@190..234 |
202 | FN_KW@[190; 192) "fn" | 202 | FN_KW@190..192 "fn" |
203 | WHITESPACE@[192; 193) " " | 203 | WHITESPACE@192..193 " " |
204 | NAME@[193; 196) | 204 | NAME@193..196 |
205 | IDENT@[193; 196) "bar" | 205 | IDENT@193..196 "bar" |
206 | PARAM_LIST@[196; 233) | 206 | PARAM_LIST@196..233 |
207 | L_PAREN@[196; 197) "(" | 207 | L_PAREN@196..197 "(" |
208 | ATTR@[197; 204) | 208 | ATTR@197..204 |
209 | POUND@[197; 198) "#" | 209 | POUND@197..198 "#" |
210 | L_BRACK@[198; 199) "[" | 210 | L_BRACK@198..199 "[" |
211 | PATH@[199; 203) | 211 | PATH@199..203 |
212 | PATH_SEGMENT@[199; 203) | 212 | PATH_SEGMENT@199..203 |
213 | NAME_REF@[199; 203) | 213 | NAME_REF@199..203 |
214 | IDENT@[199; 203) "attr" | 214 | IDENT@199..203 "attr" |
215 | R_BRACK@[203; 204) "]" | 215 | R_BRACK@203..204 "]" |
216 | WHITESPACE@[204; 205) " " | 216 | WHITESPACE@204..205 " " |
217 | PARAM@[205; 211) | 217 | PARAM@205..211 |
218 | PLACEHOLDER_PAT@[205; 206) | 218 | PLACEHOLDER_PAT@205..206 |
219 | UNDERSCORE@[205; 206) "_" | 219 | UNDERSCORE@205..206 "_" |
220 | COLON@[206; 207) ":" | 220 | COLON@206..207 ":" |
221 | WHITESPACE@[207; 208) " " | 221 | WHITESPACE@207..208 " " |
222 | PATH_TYPE@[208; 211) | 222 | PATH_TYPE@208..211 |
223 | PATH@[208; 211) | 223 | PATH@208..211 |
224 | PATH_SEGMENT@[208; 211) | 224 | PATH_SEGMENT@208..211 |
225 | NAME_REF@[208; 211) | 225 | NAME_REF@208..211 |
226 | IDENT@[208; 211) "u64" | 226 | IDENT@208..211 "u64" |
227 | COMMA@[211; 212) "," | 227 | COMMA@211..212 "," |
228 | WHITESPACE@[212; 213) " " | 228 | WHITESPACE@212..213 " " |
229 | ATTR@[213; 221) | 229 | ATTR@213..221 |
230 | POUND@[213; 214) "#" | 230 | POUND@213..214 "#" |
231 | WHITESPACE@[214; 215) " " | 231 | WHITESPACE@214..215 " " |
232 | L_BRACK@[215; 216) "[" | 232 | L_BRACK@215..216 "[" |
233 | PATH@[216; 220) | 233 | PATH@216..220 |
234 | PATH_SEGMENT@[216; 220) | 234 | PATH_SEGMENT@216..220 |
235 | NAME_REF@[216; 220) | 235 | NAME_REF@216..220 |
236 | IDENT@[216; 220) "attr" | 236 | IDENT@216..220 "attr" |
237 | R_BRACK@[220; 221) "]" | 237 | R_BRACK@220..221 "]" |
238 | WHITESPACE@[221; 222) " " | 238 | WHITESPACE@221..222 " " |
239 | PARAM@[222; 232) | 239 | PARAM@222..232 |
240 | BIND_PAT@[222; 227) | 240 | BIND_PAT@222..227 |
241 | MUT_KW@[222; 225) "mut" | 241 | MUT_KW@222..225 "mut" |
242 | WHITESPACE@[225; 226) " " | 242 | WHITESPACE@225..226 " " |
243 | NAME@[226; 227) | 243 | NAME@226..227 |
244 | IDENT@[226; 227) "x" | 244 | IDENT@226..227 "x" |
245 | COLON@[227; 228) ":" | 245 | COLON@227..228 ":" |
246 | WHITESPACE@[228; 229) " " | 246 | WHITESPACE@228..229 " " |
247 | PATH_TYPE@[229; 232) | 247 | PATH_TYPE@229..232 |
248 | PATH@[229; 232) | 248 | PATH@229..232 |
249 | PATH_SEGMENT@[229; 232) | 249 | PATH_SEGMENT@229..232 |
250 | NAME_REF@[229; 232) | 250 | NAME_REF@229..232 |
251 | IDENT@[229; 232) "i32" | 251 | IDENT@229..232 "i32" |
252 | R_PAREN@[232; 233) ")" | 252 | R_PAREN@232..233 ")" |
253 | SEMICOLON@[233; 234) ";" | 253 | SEMICOLON@233..234 ";" |
254 | WHITESPACE@[234; 235) "\n" | 254 | WHITESPACE@234..235 "\n" |
255 | R_CURLY@[235; 236) "}" | 255 | R_CURLY@235..236 "}" |
256 | WHITESPACE@[236; 238) "\n\n" | 256 | WHITESPACE@236..238 "\n\n" |
257 | IMPL_DEF@[238; 519) | 257 | IMPL_DEF@238..519 |
258 | IMPL_KW@[238; 242) "impl" | 258 | IMPL_KW@238..242 "impl" |
259 | WHITESPACE@[242; 243) " " | 259 | WHITESPACE@242..243 " " |
260 | PATH_TYPE@[243; 244) | 260 | PATH_TYPE@243..244 |
261 | PATH@[243; 244) | 261 | PATH@243..244 |
262 | PATH_SEGMENT@[243; 244) | 262 | PATH_SEGMENT@243..244 |
263 | NAME_REF@[243; 244) | 263 | NAME_REF@243..244 |
264 | IDENT@[243; 244) "S" | 264 | IDENT@243..244 "S" |
265 | WHITESPACE@[244; 245) " " | 265 | WHITESPACE@244..245 " " |
266 | ITEM_LIST@[245; 519) | 266 | ITEM_LIST@245..519 |
267 | L_CURLY@[245; 246) "{" | 267 | L_CURLY@245..246 "{" |
268 | WHITESPACE@[246; 252) "\n " | 268 | WHITESPACE@246..252 "\n " |
269 | FN_DEF@[252; 277) | 269 | FN_DEF@252..277 |
270 | FN_KW@[252; 254) "fn" | 270 | FN_KW@252..254 "fn" |
271 | WHITESPACE@[254; 255) " " | 271 | WHITESPACE@254..255 " " |
272 | NAME@[255; 256) | 272 | NAME@255..256 |
273 | IDENT@[255; 256) "f" | 273 | IDENT@255..256 "f" |
274 | PARAM_LIST@[256; 274) | 274 | PARAM_LIST@256..274 |
275 | L_PAREN@[256; 257) "(" | 275 | L_PAREN@256..257 "(" |
276 | ATTR@[257; 268) | 276 | ATTR@257..268 |
277 | POUND@[257; 258) "#" | 277 | POUND@257..258 "#" |
278 | L_BRACK@[258; 259) "[" | 278 | L_BRACK@258..259 "[" |
279 | PATH@[259; 267) | 279 | PATH@259..267 |
280 | PATH_SEGMENT@[259; 267) | 280 | PATH_SEGMENT@259..267 |
281 | NAME_REF@[259; 267) | 281 | NAME_REF@259..267 |
282 | IDENT@[259; 267) "must_use" | 282 | IDENT@259..267 "must_use" |
283 | R_BRACK@[267; 268) "]" | 283 | R_BRACK@267..268 "]" |
284 | WHITESPACE@[268; 269) " " | 284 | WHITESPACE@268..269 " " |
285 | SELF_PARAM@[269; 273) | 285 | SELF_PARAM@269..273 |
286 | SELF_KW@[269; 273) "self" | 286 | SELF_KW@269..273 "self" |
287 | R_PAREN@[273; 274) ")" | 287 | R_PAREN@273..274 ")" |
288 | WHITESPACE@[274; 275) " " | 288 | WHITESPACE@274..275 " " |
289 | BLOCK_EXPR@[275; 277) | 289 | BLOCK_EXPR@275..277 |
290 | BLOCK@[275; 277) | 290 | BLOCK@275..277 |
291 | L_CURLY@[275; 276) "{" | 291 | L_CURLY@275..276 "{" |
292 | R_CURLY@[276; 277) "}" | 292 | R_CURLY@276..277 "}" |
293 | WHITESPACE@[277; 283) "\n " | 293 | WHITESPACE@277..283 "\n " |
294 | FN_DEF@[283; 305) | 294 | FN_DEF@283..305 |
295 | FN_KW@[283; 285) "fn" | 295 | FN_KW@283..285 "fn" |
296 | WHITESPACE@[285; 286) " " | 296 | WHITESPACE@285..286 " " |
297 | NAME@[286; 288) | 297 | NAME@286..288 |
298 | IDENT@[286; 288) "g1" | 298 | IDENT@286..288 "g1" |
299 | PARAM_LIST@[288; 302) | 299 | PARAM_LIST@288..302 |
300 | L_PAREN@[288; 289) "(" | 300 | L_PAREN@288..289 "(" |
301 | ATTR@[289; 296) | 301 | ATTR@289..296 |
302 | POUND@[289; 290) "#" | 302 | POUND@289..290 "#" |
303 | L_BRACK@[290; 291) "[" | 303 | L_BRACK@290..291 "[" |
304 | PATH@[291; 295) | 304 | PATH@291..295 |
305 | PATH_SEGMENT@[291; 295) | 305 | PATH_SEGMENT@291..295 |
306 | NAME_REF@[291; 295) | 306 | NAME_REF@291..295 |
307 | IDENT@[291; 295) "attr" | 307 | IDENT@291..295 "attr" |
308 | R_BRACK@[295; 296) "]" | 308 | R_BRACK@295..296 "]" |
309 | WHITESPACE@[296; 297) " " | 309 | WHITESPACE@296..297 " " |
310 | SELF_PARAM@[297; 301) | 310 | SELF_PARAM@297..301 |
311 | SELF_KW@[297; 301) "self" | 311 | SELF_KW@297..301 "self" |
312 | R_PAREN@[301; 302) ")" | 312 | R_PAREN@301..302 ")" |
313 | WHITESPACE@[302; 303) " " | 313 | WHITESPACE@302..303 " " |
314 | BLOCK_EXPR@[303; 305) | 314 | BLOCK_EXPR@303..305 |
315 | BLOCK@[303; 305) | 315 | BLOCK@303..305 |
316 | L_CURLY@[303; 304) "{" | 316 | L_CURLY@303..304 "{" |
317 | R_CURLY@[304; 305) "}" | 317 | R_CURLY@304..305 "}" |
318 | WHITESPACE@[305; 311) "\n " | 318 | WHITESPACE@305..311 "\n " |
319 | FN_DEF@[311; 334) | 319 | FN_DEF@311..334 |
320 | FN_KW@[311; 313) "fn" | 320 | FN_KW@311..313 "fn" |
321 | WHITESPACE@[313; 314) " " | 321 | WHITESPACE@313..314 " " |
322 | NAME@[314; 316) | 322 | NAME@314..316 |
323 | IDENT@[314; 316) "g2" | 323 | IDENT@314..316 "g2" |
324 | PARAM_LIST@[316; 331) | 324 | PARAM_LIST@316..331 |
325 | L_PAREN@[316; 317) "(" | 325 | L_PAREN@316..317 "(" |
326 | ATTR@[317; 324) | 326 | ATTR@317..324 |
327 | POUND@[317; 318) "#" | 327 | POUND@317..318 "#" |
328 | L_BRACK@[318; 319) "[" | 328 | L_BRACK@318..319 "[" |
329 | PATH@[319; 323) | 329 | PATH@319..323 |
330 | PATH_SEGMENT@[319; 323) | 330 | PATH_SEGMENT@319..323 |
331 | NAME_REF@[319; 323) | 331 | NAME_REF@319..323 |
332 | IDENT@[319; 323) "attr" | 332 | IDENT@319..323 "attr" |
333 | R_BRACK@[323; 324) "]" | 333 | R_BRACK@323..324 "]" |
334 | WHITESPACE@[324; 325) " " | 334 | WHITESPACE@324..325 " " |
335 | SELF_PARAM@[325; 330) | 335 | SELF_PARAM@325..330 |
336 | AMP@[325; 326) "&" | 336 | AMP@325..326 "&" |
337 | SELF_KW@[326; 330) "self" | 337 | SELF_KW@326..330 "self" |
338 | R_PAREN@[330; 331) ")" | 338 | R_PAREN@330..331 ")" |
339 | WHITESPACE@[331; 332) " " | 339 | WHITESPACE@331..332 " " |
340 | BLOCK_EXPR@[332; 334) | 340 | BLOCK_EXPR@332..334 |
341 | BLOCK@[332; 334) | 341 | BLOCK@332..334 |
342 | L_CURLY@[332; 333) "{" | 342 | L_CURLY@332..333 "{" |
343 | R_CURLY@[333; 334) "}" | 343 | R_CURLY@333..334 "}" |
344 | WHITESPACE@[334; 340) "\n " | 344 | WHITESPACE@334..340 "\n " |
345 | FN_DEF@[340; 371) | 345 | FN_DEF@340..371 |
346 | FN_KW@[340; 342) "fn" | 346 | FN_KW@340..342 "fn" |
347 | WHITESPACE@[342; 343) " " | 347 | WHITESPACE@342..343 " " |
348 | NAME@[343; 345) | 348 | NAME@343..345 |
349 | IDENT@[343; 345) "g3" | 349 | IDENT@343..345 "g3" |
350 | TYPE_PARAM_LIST@[345; 349) | 350 | TYPE_PARAM_LIST@345..349 |
351 | L_ANGLE@[345; 346) "<" | 351 | L_ANGLE@345..346 "<" |
352 | LIFETIME_PARAM@[346; 348) | 352 | LIFETIME_PARAM@346..348 |
353 | LIFETIME@[346; 348) "\'a" | 353 | LIFETIME@346..348 "\'a" |
354 | R_ANGLE@[348; 349) ">" | 354 | R_ANGLE@348..349 ">" |
355 | PARAM_LIST@[349; 368) | 355 | PARAM_LIST@349..368 |
356 | L_PAREN@[349; 350) "(" | 356 | L_PAREN@349..350 "(" |
357 | ATTR@[350; 357) | 357 | ATTR@350..357 |
358 | POUND@[350; 351) "#" | 358 | POUND@350..351 "#" |
359 | L_BRACK@[351; 352) "[" | 359 | L_BRACK@351..352 "[" |
360 | PATH@[352; 356) | 360 | PATH@352..356 |
361 | PATH_SEGMENT@[352; 356) | 361 | PATH_SEGMENT@352..356 |
362 | NAME_REF@[352; 356) | 362 | NAME_REF@352..356 |
363 | IDENT@[352; 356) "attr" | 363 | IDENT@352..356 "attr" |
364 | R_BRACK@[356; 357) "]" | 364 | R_BRACK@356..357 "]" |
365 | WHITESPACE@[357; 358) " " | 365 | WHITESPACE@357..358 " " |
366 | SELF_PARAM@[358; 367) | 366 | SELF_PARAM@358..367 |
367 | AMP@[358; 359) "&" | 367 | AMP@358..359 "&" |
368 | MUT_KW@[359; 362) "mut" | 368 | MUT_KW@359..362 "mut" |
369 | WHITESPACE@[362; 363) " " | 369 | WHITESPACE@362..363 " " |
370 | SELF_KW@[363; 367) "self" | 370 | SELF_KW@363..367 "self" |
371 | R_PAREN@[367; 368) ")" | 371 | R_PAREN@367..368 ")" |
372 | WHITESPACE@[368; 369) " " | 372 | WHITESPACE@368..369 " " |
373 | BLOCK_EXPR@[369; 371) | 373 | BLOCK_EXPR@369..371 |
374 | BLOCK@[369; 371) | 374 | BLOCK@369..371 |
375 | L_CURLY@[369; 370) "{" | 375 | L_CURLY@369..370 "{" |
376 | R_CURLY@[370; 371) "}" | 376 | R_CURLY@370..371 "}" |
377 | WHITESPACE@[371; 377) "\n " | 377 | WHITESPACE@371..377 "\n " |
378 | FN_DEF@[377; 407) | 378 | FN_DEF@377..407 |
379 | FN_KW@[377; 379) "fn" | 379 | FN_KW@377..379 "fn" |
380 | WHITESPACE@[379; 380) " " | 380 | WHITESPACE@379..380 " " |
381 | NAME@[380; 382) | 381 | NAME@380..382 |
382 | IDENT@[380; 382) "g4" | 382 | IDENT@380..382 "g4" |
383 | TYPE_PARAM_LIST@[382; 386) | 383 | TYPE_PARAM_LIST@382..386 |
384 | L_ANGLE@[382; 383) "<" | 384 | L_ANGLE@382..383 "<" |
385 | LIFETIME_PARAM@[383; 385) | 385 | LIFETIME_PARAM@383..385 |
386 | LIFETIME@[383; 385) "\'a" | 386 | LIFETIME@383..385 "\'a" |
387 | R_ANGLE@[385; 386) ">" | 387 | R_ANGLE@385..386 ">" |
388 | PARAM_LIST@[386; 404) | 388 | PARAM_LIST@386..404 |
389 | L_PAREN@[386; 387) "(" | 389 | L_PAREN@386..387 "(" |
390 | ATTR@[387; 394) | 390 | ATTR@387..394 |
391 | POUND@[387; 388) "#" | 391 | POUND@387..388 "#" |
392 | L_BRACK@[388; 389) "[" | 392 | L_BRACK@388..389 "[" |
393 | PATH@[389; 393) | 393 | PATH@389..393 |
394 | PATH_SEGMENT@[389; 393) | 394 | PATH_SEGMENT@389..393 |
395 | NAME_REF@[389; 393) | 395 | NAME_REF@389..393 |
396 | IDENT@[389; 393) "attr" | 396 | IDENT@389..393 "attr" |
397 | R_BRACK@[393; 394) "]" | 397 | R_BRACK@393..394 "]" |
398 | WHITESPACE@[394; 395) " " | 398 | WHITESPACE@394..395 " " |
399 | SELF_PARAM@[395; 403) | 399 | SELF_PARAM@395..403 |
400 | AMP@[395; 396) "&" | 400 | AMP@395..396 "&" |
401 | LIFETIME@[396; 398) "\'a" | 401 | LIFETIME@396..398 "\'a" |
402 | WHITESPACE@[398; 399) " " | 402 | WHITESPACE@398..399 " " |
403 | SELF_KW@[399; 403) "self" | 403 | SELF_KW@399..403 "self" |
404 | R_PAREN@[403; 404) ")" | 404 | R_PAREN@403..404 ")" |
405 | WHITESPACE@[404; 405) " " | 405 | WHITESPACE@404..405 " " |
406 | BLOCK_EXPR@[405; 407) | 406 | BLOCK_EXPR@405..407 |
407 | BLOCK@[405; 407) | 407 | BLOCK@405..407 |
408 | L_CURLY@[405; 406) "{" | 408 | L_CURLY@405..406 "{" |
409 | R_CURLY@[406; 407) "}" | 409 | R_CURLY@406..407 "}" |
410 | WHITESPACE@[407; 413) "\n " | 410 | WHITESPACE@407..413 "\n " |
411 | FN_DEF@[413; 447) | 411 | FN_DEF@413..447 |
412 | FN_KW@[413; 415) "fn" | 412 | FN_KW@413..415 "fn" |
413 | WHITESPACE@[415; 416) " " | 413 | WHITESPACE@415..416 " " |
414 | NAME@[416; 418) | 414 | NAME@416..418 |
415 | IDENT@[416; 418) "g5" | 415 | IDENT@416..418 "g5" |
416 | TYPE_PARAM_LIST@[418; 422) | 416 | TYPE_PARAM_LIST@418..422 |
417 | L_ANGLE@[418; 419) "<" | 417 | L_ANGLE@418..419 "<" |
418 | LIFETIME_PARAM@[419; 421) | 418 | LIFETIME_PARAM@419..421 |
419 | LIFETIME@[419; 421) "\'a" | 419 | LIFETIME@419..421 "\'a" |
420 | R_ANGLE@[421; 422) ">" | 420 | R_ANGLE@421..422 ">" |
421 | PARAM_LIST@[422; 444) | 421 | PARAM_LIST@422..444 |
422 | L_PAREN@[422; 423) "(" | 422 | L_PAREN@422..423 "(" |
423 | ATTR@[423; 430) | 423 | ATTR@423..430 |
424 | POUND@[423; 424) "#" | 424 | POUND@423..424 "#" |
425 | L_BRACK@[424; 425) "[" | 425 | L_BRACK@424..425 "[" |
426 | PATH@[425; 429) | 426 | PATH@425..429 |
427 | PATH_SEGMENT@[425; 429) | 427 | PATH_SEGMENT@425..429 |
428 | NAME_REF@[425; 429) | 428 | NAME_REF@425..429 |
429 | IDENT@[425; 429) "attr" | 429 | IDENT@425..429 "attr" |
430 | R_BRACK@[429; 430) "]" | 430 | R_BRACK@429..430 "]" |
431 | WHITESPACE@[430; 431) " " | 431 | WHITESPACE@430..431 " " |
432 | SELF_PARAM@[431; 443) | 432 | SELF_PARAM@431..443 |
433 | AMP@[431; 432) "&" | 433 | AMP@431..432 "&" |
434 | LIFETIME@[432; 434) "\'a" | 434 | LIFETIME@432..434 "\'a" |
435 | WHITESPACE@[434; 435) " " | 435 | WHITESPACE@434..435 " " |
436 | MUT_KW@[435; 438) "mut" | 436 | MUT_KW@435..438 "mut" |
437 | WHITESPACE@[438; 439) " " | 437 | WHITESPACE@438..439 " " |
438 | SELF_KW@[439; 443) "self" | 438 | SELF_KW@439..443 "self" |
439 | R_PAREN@[443; 444) ")" | 439 | R_PAREN@443..444 ")" |
440 | WHITESPACE@[444; 445) " " | 440 | WHITESPACE@444..445 " " |
441 | BLOCK_EXPR@[445; 447) | 441 | BLOCK_EXPR@445..447 |
442 | BLOCK@[445; 447) | 442 | BLOCK@445..447 |
443 | L_CURLY@[445; 446) "{" | 443 | L_CURLY@445..446 "{" |
444 | R_CURLY@[446; 447) "}" | 444 | R_CURLY@446..447 "}" |
445 | WHITESPACE@[447; 453) "\n " | 445 | WHITESPACE@447..453 "\n " |
446 | FN_DEF@[453; 480) | 446 | FN_DEF@453..480 |
447 | FN_KW@[453; 455) "fn" | 447 | FN_KW@453..455 "fn" |
448 | WHITESPACE@[455; 456) " " | 448 | WHITESPACE@455..456 " " |
449 | NAME@[456; 457) | 449 | NAME@456..457 |
450 | IDENT@[456; 457) "c" | 450 | IDENT@456..457 "c" |
451 | PARAM_LIST@[457; 477) | 451 | PARAM_LIST@457..477 |
452 | L_PAREN@[457; 458) "(" | 452 | L_PAREN@457..458 "(" |
453 | ATTR@[458; 465) | 453 | ATTR@458..465 |
454 | POUND@[458; 459) "#" | 454 | POUND@458..459 "#" |
455 | L_BRACK@[459; 460) "[" | 455 | L_BRACK@459..460 "[" |
456 | PATH@[460; 464) | 456 | PATH@460..464 |
457 | PATH_SEGMENT@[460; 464) | 457 | PATH_SEGMENT@460..464 |
458 | NAME_REF@[460; 464) | 458 | NAME_REF@460..464 |
459 | IDENT@[460; 464) "attr" | 459 | IDENT@460..464 "attr" |
460 | R_BRACK@[464; 465) "]" | 460 | R_BRACK@464..465 "]" |
461 | WHITESPACE@[465; 466) " " | 461 | WHITESPACE@465..466 " " |
462 | SELF_PARAM@[466; 476) | 462 | SELF_PARAM@466..476 |
463 | SELF_KW@[466; 470) "self" | 463 | SELF_KW@466..470 "self" |
464 | COLON@[470; 471) ":" | 464 | COLON@470..471 ":" |
465 | WHITESPACE@[471; 472) " " | 465 | WHITESPACE@471..472 " " |
466 | PATH_TYPE@[472; 476) | 466 | PATH_TYPE@472..476 |
467 | PATH@[472; 476) | 467 | PATH@472..476 |
468 | PATH_SEGMENT@[472; 476) | 468 | PATH_SEGMENT@472..476 |
469 | NAME_REF@[472; 476) | 469 | NAME_REF@472..476 |
470 | IDENT@[472; 476) "Self" | 470 | IDENT@472..476 "Self" |
471 | R_PAREN@[476; 477) ")" | 471 | R_PAREN@476..477 ")" |
472 | WHITESPACE@[477; 478) " " | 472 | WHITESPACE@477..478 " " |
473 | BLOCK_EXPR@[478; 480) | 473 | BLOCK_EXPR@478..480 |
474 | BLOCK@[478; 480) | 474 | BLOCK@478..480 |
475 | L_CURLY@[478; 479) "{" | 475 | L_CURLY@478..479 "{" |
476 | R_CURLY@[479; 480) "}" | 476 | R_CURLY@479..480 "}" |
477 | WHITESPACE@[480; 486) "\n " | 477 | WHITESPACE@480..486 "\n " |
478 | FN_DEF@[486; 517) | 478 | FN_DEF@486..517 |
479 | FN_KW@[486; 488) "fn" | 479 | FN_KW@486..488 "fn" |
480 | WHITESPACE@[488; 489) " " | 480 | WHITESPACE@488..489 " " |
481 | NAME@[489; 490) | 481 | NAME@489..490 |
482 | IDENT@[489; 490) "d" | 482 | IDENT@489..490 "d" |
483 | PARAM_LIST@[490; 514) | 483 | PARAM_LIST@490..514 |
484 | L_PAREN@[490; 491) "(" | 484 | L_PAREN@490..491 "(" |
485 | ATTR@[491; 498) | 485 | ATTR@491..498 |
486 | POUND@[491; 492) "#" | 486 | POUND@491..492 "#" |
487 | L_BRACK@[492; 493) "[" | 487 | L_BRACK@492..493 "[" |
488 | PATH@[493; 497) | 488 | PATH@493..497 |
489 | PATH_SEGMENT@[493; 497) | 489 | PATH_SEGMENT@493..497 |
490 | NAME_REF@[493; 497) | 490 | NAME_REF@493..497 |
491 | IDENT@[493; 497) "attr" | 491 | IDENT@493..497 "attr" |
492 | R_BRACK@[497; 498) "]" | 492 | R_BRACK@497..498 "]" |
493 | WHITESPACE@[498; 499) " " | 493 | WHITESPACE@498..499 " " |
494 | SELF_PARAM@[499; 513) | 494 | SELF_PARAM@499..513 |
495 | SELF_KW@[499; 503) "self" | 495 | SELF_KW@499..503 "self" |
496 | COLON@[503; 504) ":" | 496 | COLON@503..504 ":" |
497 | WHITESPACE@[504; 505) " " | 497 | WHITESPACE@504..505 " " |
498 | PATH_TYPE@[505; 513) | 498 | PATH_TYPE@505..513 |
499 | PATH@[505; 513) | 499 | PATH@505..513 |
500 | PATH_SEGMENT@[505; 513) | 500 | PATH_SEGMENT@505..513 |
501 | NAME_REF@[505; 507) | 501 | NAME_REF@505..507 |
502 | IDENT@[505; 507) "Rc" | 502 | IDENT@505..507 "Rc" |
503 | TYPE_ARG_LIST@[507; 513) | 503 | TYPE_ARG_LIST@507..513 |
504 | L_ANGLE@[507; 508) "<" | 504 | L_ANGLE@507..508 "<" |
505 | TYPE_ARG@[508; 512) | 505 | TYPE_ARG@508..512 |
506 | PATH_TYPE@[508; 512) | 506 | PATH_TYPE@508..512 |
507 | PATH@[508; 512) | 507 | PATH@508..512 |
508 | PATH_SEGMENT@[508; 512) | 508 | PATH_SEGMENT@508..512 |
509 | NAME_REF@[508; 512) | 509 | NAME_REF@508..512 |
510 | IDENT@[508; 512) "Self" | 510 | IDENT@508..512 "Self" |
511 | R_ANGLE@[512; 513) ">" | 511 | R_ANGLE@512..513 ">" |
512 | R_PAREN@[513; 514) ")" | 512 | R_PAREN@513..514 ")" |
513 | WHITESPACE@[514; 515) " " | 513 | WHITESPACE@514..515 " " |
514 | BLOCK_EXPR@[515; 517) | 514 | BLOCK_EXPR@515..517 |
515 | BLOCK@[515; 517) | 515 | BLOCK@515..517 |
516 | L_CURLY@[515; 516) "{" | 516 | L_CURLY@515..516 "{" |
517 | R_CURLY@[516; 517) "}" | 517 | R_CURLY@516..517 "}" |
518 | WHITESPACE@[517; 518) "\n" | 518 | WHITESPACE@517..518 "\n" |
519 | R_CURLY@[518; 519) "}" | 519 | R_CURLY@518..519 "}" |