aboutsummaryrefslogtreecommitdiff
path: root/crates/ra_syntax/test_data/parser/err/0024_many_type_parens.rast
diff options
context:
space:
mode:
Diffstat (limited to 'crates/ra_syntax/test_data/parser/err/0024_many_type_parens.rast')
-rw-r--r--crates/ra_syntax/test_data/parser/err/0024_many_type_parens.rast321
1 files changed, 321 insertions, 0 deletions
diff --git a/crates/ra_syntax/test_data/parser/err/0024_many_type_parens.rast b/crates/ra_syntax/test_data/parser/err/0024_many_type_parens.rast
new file mode 100644
index 000000000..c5c8a29ba
--- /dev/null
+++ b/crates/ra_syntax/test_data/parser/err/0024_many_type_parens.rast
@@ -0,0 +1,321 @@
1SOURCE_FILE@[0; 240)
2 FN_DEF@[0; 53)
3 FN_KW@[0; 2) "fn"
4 WHITESPACE@[2; 3) " "
5 NAME@[3; 4)
6 IDENT@[3; 4) "f"
7 TYPE_PARAM_LIST@[4; 48)
8 L_ANGLE@[4; 5) "<"
9 TYPE_PARAM@[5; 47)
10 NAME@[5; 6)
11 IDENT@[5; 6) "T"
12 COLON@[6; 7) ":"
13 WHITESPACE@[7; 8) " "
14 TYPE_BOUND_LIST@[8; 47)
15 TYPE_BOUND@[8; 14)
16 L_PAREN@[8; 9) "("
17 PATH_TYPE@[9; 13)
18 PATH@[9; 13)
19 PATH_SEGMENT@[9; 13)
20 NAME_REF@[9; 13)
21 IDENT@[9; 13) "Copy"
22 R_PAREN@[13; 14) ")"
23 WHITESPACE@[14; 15) " "
24 PLUS@[15; 16) "+"
25 WHITESPACE@[16; 17) " "
26 TYPE_BOUND@[17; 25)
27 L_PAREN@[17; 18) "("
28 QUESTION@[18; 19) "?"
29 PATH_TYPE@[19; 24)
30 PATH@[19; 24)
31 PATH_SEGMENT@[19; 24)
32 NAME_REF@[19; 24)
33 IDENT@[19; 24) "Sized"
34 R_PAREN@[24; 25) ")"
35 WHITESPACE@[25; 26) " "
36 PLUS@[26; 27) "+"
37 WHITESPACE@[27; 28) " "
38 TYPE_BOUND@[28; 47)
39 L_PAREN@[28; 29) "("
40 FOR_TYPE@[29; 46)
41 FOR_KW@[29; 32) "for"
42 TYPE_PARAM_LIST@[32; 36)
43 L_ANGLE@[32; 33) "<"
44 LIFETIME_PARAM@[33; 35)
45 LIFETIME@[33; 35) "\'a"
46 R_ANGLE@[35; 36) ">"
47 WHITESPACE@[36; 37) " "
48 PATH_TYPE@[37; 46)
49 PATH@[37; 46)
50 PATH_SEGMENT@[37; 46)
51 NAME_REF@[37; 42)
52 IDENT@[37; 42) "Trait"
53 TYPE_ARG_LIST@[42; 46)
54 L_ANGLE@[42; 43) "<"
55 LIFETIME_ARG@[43; 45)
56 LIFETIME@[43; 45) "\'a"
57 R_ANGLE@[45; 46) ">"
58 R_PAREN@[46; 47) ")"
59 R_ANGLE@[47; 48) ">"
60 PARAM_LIST@[48; 50)
61 L_PAREN@[48; 49) "("
62 R_PAREN@[49; 50) ")"
63 WHITESPACE@[50; 51) " "
64 BLOCK_EXPR@[51; 53)
65 BLOCK@[51; 53)
66 L_CURLY@[51; 52) "{"
67 R_CURLY@[52; 53) "}"
68 WHITESPACE@[53; 55) "\n\n"
69 FN_DEF@[55; 239)
70 FN_KW@[55; 57) "fn"
71 WHITESPACE@[57; 58) " "
72 NAME@[58; 62)
73 IDENT@[58; 62) "main"
74 PARAM_LIST@[62; 64)
75 L_PAREN@[62; 63) "("
76 R_PAREN@[63; 64) ")"
77 WHITESPACE@[64; 65) " "
78 BLOCK_EXPR@[65; 239)
79 BLOCK@[65; 239)
80 L_CURLY@[65; 66) "{"
81 WHITESPACE@[66; 71) "\n "
82 LET_STMT@[71; 121)
83 LET_KW@[71; 74) "let"
84 WHITESPACE@[74; 75) " "
85 PLACEHOLDER_PAT@[75; 76)
86 UNDERSCORE@[75; 76) "_"
87 COLON@[76; 77) ":"
88 WHITESPACE@[77; 78) " "
89 DYN_TRAIT_TYPE@[78; 121)
90 TYPE_BOUND_LIST@[78; 121)
91 TYPE_BOUND@[78; 88)
92 PATH_TYPE@[78; 88)
93 PATH@[78; 88)
94 PATH_SEGMENT@[78; 88)
95 NAME_REF@[78; 81)
96 IDENT@[78; 81) "Box"
97 TYPE_ARG_LIST@[81; 88)
98 L_ANGLE@[81; 82) "<"
99 TYPE_ARG@[82; 88)
100 PAREN_TYPE@[82; 88)
101 L_PAREN@[82; 83) "("
102 PATH_TYPE@[83; 87)
103 PATH@[83; 87)
104 PATH_SEGMENT@[83; 87)
105 NAME_REF@[83; 87)
106 IDENT@[83; 87) "Copy"
107 R_PAREN@[87; 88) ")"
108 WHITESPACE@[88; 89) " "
109 PLUS@[89; 90) "+"
110 WHITESPACE@[90; 91) " "
111 TYPE_BOUND@[91; 99)
112 L_PAREN@[91; 92) "("
113 QUESTION@[92; 93) "?"
114 PATH_TYPE@[93; 98)
115 PATH@[93; 98)
116 PATH_SEGMENT@[93; 98)
117 NAME_REF@[93; 98)
118 IDENT@[93; 98) "Sized"
119 R_PAREN@[98; 99) ")"
120 WHITESPACE@[99; 100) " "
121 PLUS@[100; 101) "+"
122 WHITESPACE@[101; 102) " "
123 TYPE_BOUND@[102; 121)
124 L_PAREN@[102; 103) "("
125 FOR_TYPE@[103; 120)
126 FOR_KW@[103; 106) "for"
127 TYPE_PARAM_LIST@[106; 110)
128 L_ANGLE@[106; 107) "<"
129 LIFETIME_PARAM@[107; 109)
130 LIFETIME@[107; 109) "\'a"
131 R_ANGLE@[109; 110) ">"
132 WHITESPACE@[110; 111) " "
133 PATH_TYPE@[111; 120)
134 PATH@[111; 120)
135 PATH_SEGMENT@[111; 120)
136 NAME_REF@[111; 116)
137 IDENT@[111; 116) "Trait"
138 TYPE_ARG_LIST@[116; 120)
139 L_ANGLE@[116; 117) "<"
140 LIFETIME_ARG@[117; 119)
141 LIFETIME@[117; 119) "\'a"
142 R_ANGLE@[119; 120) ">"
143 R_PAREN@[120; 121) ")"
144 EXPR_STMT@[121; 123)
145 ERROR@[121; 122)
146 R_ANGLE@[121; 122) ">"
147 SEMI@[122; 123) ";"
148 WHITESPACE@[123; 128) "\n "
149 LET_STMT@[128; 141)
150 LET_KW@[128; 131) "let"
151 WHITESPACE@[131; 132) " "
152 PLACEHOLDER_PAT@[132; 133)
153 UNDERSCORE@[132; 133) "_"
154 COLON@[133; 134) ":"
155 WHITESPACE@[134; 135) " "
156 PATH_TYPE@[135; 141)
157 PATH@[135; 141)
158 PATH_SEGMENT@[135; 141)
159 NAME_REF@[135; 138)
160 IDENT@[135; 138) "Box"
161 TYPE_ARG_LIST@[138; 141)
162 L_ANGLE@[138; 139) "<"
163 TYPE_ARG@[139; 141)
164 PAREN_TYPE@[139; 141)
165 L_PAREN@[139; 140) "("
166 ERROR@[140; 141)
167 QUESTION@[140; 141) "?"
168 EXPR_STMT@[141; 146)
169 PATH_EXPR@[141; 146)
170 PATH@[141; 146)
171 PATH_SEGMENT@[141; 146)
172 NAME_REF@[141; 146)
173 IDENT@[141; 146) "Sized"
174 EXPR_STMT@[146; 147)
175 ERROR@[146; 147)
176 R_PAREN@[146; 147) ")"
177 WHITESPACE@[147; 148) " "
178 EXPR_STMT@[148; 149)
179 ERROR@[148; 149)
180 PLUS@[148; 149) "+"
181 WHITESPACE@[149; 150) " "
182 EXPR_STMT@[150; 180)
183 TUPLE_EXPR@[150; 180)
184 L_PAREN@[150; 151) "("
185 BIN_EXPR@[151; 180)
186 BIN_EXPR@[151; 178)
187 BIN_EXPR@[151; 169)
188 BIN_EXPR@[151; 167)
189 BIN_EXPR@[151; 164)
190 FOR_EXPR@[151; 157)
191 FOR_KW@[151; 154) "for"
192 ERROR@[154; 155)
193 L_ANGLE@[154; 155) "<"
194 ERROR@[155; 157)
195 LIFETIME@[155; 157) "\'a"
196 R_ANGLE@[157; 158) ">"
197 WHITESPACE@[158; 159) " "
198 PATH_EXPR@[159; 164)
199 PATH@[159; 164)
200 PATH_SEGMENT@[159; 164)
201 NAME_REF@[159; 164)
202 IDENT@[159; 164) "Trait"
203 L_ANGLE@[164; 165) "<"
204 ERROR@[165; 167)
205 LIFETIME@[165; 167) "\'a"
206 R_ANGLE@[167; 168) ">"
207 ERROR@[168; 169)
208 R_PAREN@[168; 169) ")"
209 WHITESPACE@[169; 170) " "
210 PLUS@[170; 171) "+"
211 WHITESPACE@[171; 172) " "
212 PAREN_EXPR@[172; 178)
213 L_PAREN@[172; 173) "("
214 PATH_EXPR@[173; 177)
215 PATH@[173; 177)
216 PATH_SEGMENT@[173; 177)
217 NAME_REF@[173; 177)
218 IDENT@[173; 177) "Copy"
219 R_PAREN@[177; 178) ")"
220 R_ANGLE@[178; 179) ">"
221 ERROR@[179; 180)
222 SEMI@[179; 180) ";"
223 WHITESPACE@[180; 185) "\n "
224 LET_STMT@[185; 235)
225 LET_KW@[185; 188) "let"
226 WHITESPACE@[188; 189) " "
227 PLACEHOLDER_PAT@[189; 190)
228 UNDERSCORE@[189; 190) "_"
229 COLON@[190; 191) ":"
230 WHITESPACE@[191; 192) " "
231 DYN_TRAIT_TYPE@[192; 235)
232 TYPE_BOUND_LIST@[192; 235)
233 TYPE_BOUND@[192; 215)
234 PATH_TYPE@[192; 215)
235 PATH@[192; 215)
236 PATH_SEGMENT@[192; 215)
237 NAME_REF@[192; 195)
238 IDENT@[192; 195) "Box"
239 TYPE_ARG_LIST@[195; 215)
240 L_ANGLE@[195; 196) "<"
241 TYPE_ARG@[196; 215)
242 PAREN_TYPE@[196; 215)
243 L_PAREN@[196; 197) "("
244 FOR_TYPE@[197; 214)
245 FOR_KW@[197; 200) "for"
246 TYPE_PARAM_LIST@[200; 204)
247 L_ANGLE@[200; 201) "<"
248 LIFETIME_PARAM@[201; 203)
249 LIFETIME@[201; 203) "\'a"
250 R_ANGLE@[203; 204) ">"
251 WHITESPACE@[204; 205) " "
252 PATH_TYPE@[205; 214)
253 PATH@[205; 214)
254 PATH_SEGMENT@[205; 214)
255 NAME_REF@[205; 210)
256 IDENT@[205; 210) "Trait"
257 TYPE_ARG_LIST@[210; 214)
258 L_ANGLE@[210; 211) "<"
259 LIFETIME_ARG@[211; 213)
260 LIFETIME@[211; 213) "\'a"
261 R_ANGLE@[213; 214) ">"
262 R_PAREN@[214; 215) ")"
263 WHITESPACE@[215; 216) " "
264 PLUS@[216; 217) "+"
265 WHITESPACE@[217; 218) " "
266 TYPE_BOUND@[218; 224)
267 L_PAREN@[218; 219) "("
268 PATH_TYPE@[219; 223)
269 PATH@[219; 223)
270 PATH_SEGMENT@[219; 223)
271 NAME_REF@[219; 223)
272 IDENT@[219; 223) "Copy"
273 R_PAREN@[223; 224) ")"
274 WHITESPACE@[224; 225) " "
275 PLUS@[225; 226) "+"
276 WHITESPACE@[226; 227) " "
277 TYPE_BOUND@[227; 235)
278 L_PAREN@[227; 228) "("
279 QUESTION@[228; 229) "?"
280 PATH_TYPE@[229; 234)
281 PATH@[229; 234)
282 PATH_SEGMENT@[229; 234)
283 NAME_REF@[229; 234)
284 IDENT@[229; 234) "Sized"
285 R_PAREN@[234; 235) ")"
286 EXPR_STMT@[235; 237)
287 ERROR@[235; 236)
288 R_ANGLE@[235; 236) ">"
289 SEMI@[236; 237) ";"
290 WHITESPACE@[237; 238) "\n"
291 R_CURLY@[238; 239) "}"
292 WHITESPACE@[239; 240) "\n"
293error [88; 88): expected COMMA
294error [88; 88): expected R_ANGLE
295error [121; 121): expected SEMI
296error [121; 121): expected expression
297error [140; 140): expected type
298error [141; 141): expected R_PAREN
299error [141; 141): expected COMMA
300error [141; 141): expected R_ANGLE
301error [141; 141): expected SEMI
302error [146; 146): expected SEMI
303error [146; 146): expected expression
304error [147; 147): expected SEMI
305error [148; 148): expected expression
306error [149; 149): expected SEMI
307error [154; 154): expected pattern
308error [155; 155): expected IN_KW
309error [155; 155): expected expression
310error [157; 157): expected a block
311error [165; 165): expected expression
312error [168; 168): expected expression
313error [179; 179): expected expression
314error [180; 180): expected COMMA
315error [180; 180): expected expression
316error [180; 180): expected R_PAREN
317error [180; 180): expected SEMI
318error [215; 215): expected COMMA
319error [215; 215): expected R_ANGLE
320error [235; 235): expected SEMI
321error [235; 235): expected expression