aboutsummaryrefslogtreecommitdiff
path: root/crates
diff options
context:
space:
mode:
Diffstat (limited to 'crates')
-rw-r--r--crates/ra_syntax/tests/data/parser/err/0024_many_type_parens.txt118
-rw-r--r--crates/ra_syntax/tests/data/parser/inline/ok/0048_path_type_with_bounds.rs1
-rw-r--r--crates/ra_syntax/tests/data/parser/inline/ok/0048_path_type_with_bounds.txt63
3 files changed, 115 insertions, 67 deletions
diff --git a/crates/ra_syntax/tests/data/parser/err/0024_many_type_parens.txt b/crates/ra_syntax/tests/data/parser/err/0024_many_type_parens.txt
index b353a5383..45fa70593 100644
--- a/crates/ra_syntax/tests/data/parser/err/0024_many_type_parens.txt
+++ b/crates/ra_syntax/tests/data/parser/err/0024_many_type_parens.txt
@@ -84,28 +84,30 @@ SOURCE_FILE@[0; 240)
84 UNDERSCORE@[75; 76) 84 UNDERSCORE@[75; 76)
85 COLON@[76; 77) 85 COLON@[76; 77)
86 WHITESPACE@[77; 78) 86 WHITESPACE@[77; 78)
87 PATH_TYPE@[78; 121) 87 DYN_TRAIT_TYPE@[78; 121)
88 PATH@[78; 88) 88 TYPE_BOUND_LIST@[78; 121)
89 PATH_SEGMENT@[78; 88) 89 TYPE_BOUND@[78; 88)
90 NAME_REF@[78; 81) 90 PATH_TYPE@[78; 88)
91 IDENT@[78; 81) "Box" 91 PATH@[78; 88)
92 TYPE_ARG_LIST@[81; 88) 92 PATH_SEGMENT@[78; 88)
93 L_ANGLE@[81; 82) 93 NAME_REF@[78; 81)
94 TYPE_ARG@[82; 88) 94 IDENT@[78; 81) "Box"
95 PAREN_TYPE@[82; 88) 95 TYPE_ARG_LIST@[81; 88)
96 L_PAREN@[82; 83) 96 L_ANGLE@[81; 82)
97 PATH_TYPE@[83; 87) 97 TYPE_ARG@[82; 88)
98 PATH@[83; 87) 98 PAREN_TYPE@[82; 88)
99 PATH_SEGMENT@[83; 87) 99 L_PAREN@[82; 83)
100 NAME_REF@[83; 87) 100 PATH_TYPE@[83; 87)
101 IDENT@[83; 87) "Copy" 101 PATH@[83; 87)
102 R_PAREN@[87; 88) 102 PATH_SEGMENT@[83; 87)
103 err: `expected COMMA` 103 NAME_REF@[83; 87)
104 err: `expected R_ANGLE` 104 IDENT@[83; 87) "Copy"
105 WHITESPACE@[88; 89) 105 R_PAREN@[87; 88)
106 PLUS@[89; 90) 106 err: `expected COMMA`
107 WHITESPACE@[90; 91) 107 err: `expected R_ANGLE`
108 TYPE_BOUND_LIST@[91; 121) 108 WHITESPACE@[88; 89)
109 PLUS@[89; 90)
110 WHITESPACE@[90; 91)
109 TYPE_BOUND@[91; 99) 111 TYPE_BOUND@[91; 99)
110 L_PAREN@[91; 92) 112 L_PAREN@[91; 92)
111 QUESTION@[92; 93) 113 QUESTION@[92; 93)
@@ -254,41 +256,43 @@ SOURCE_FILE@[0; 240)
254 UNDERSCORE@[189; 190) 256 UNDERSCORE@[189; 190)
255 COLON@[190; 191) 257 COLON@[190; 191)
256 WHITESPACE@[191; 192) 258 WHITESPACE@[191; 192)
257 PATH_TYPE@[192; 235) 259 DYN_TRAIT_TYPE@[192; 235)
258 PATH@[192; 215) 260 TYPE_BOUND_LIST@[192; 235)
259 PATH_SEGMENT@[192; 215) 261 TYPE_BOUND@[192; 215)
260 NAME_REF@[192; 195) 262 PATH_TYPE@[192; 215)
261 IDENT@[192; 195) "Box" 263 PATH@[192; 215)
262 TYPE_ARG_LIST@[195; 215) 264 PATH_SEGMENT@[192; 215)
263 L_ANGLE@[195; 196) 265 NAME_REF@[192; 195)
264 TYPE_ARG@[196; 215) 266 IDENT@[192; 195) "Box"
265 PAREN_TYPE@[196; 215) 267 TYPE_ARG_LIST@[195; 215)
266 L_PAREN@[196; 197) 268 L_ANGLE@[195; 196)
267 FOR_TYPE@[197; 214) 269 TYPE_ARG@[196; 215)
268 FOR_KW@[197; 200) 270 PAREN_TYPE@[196; 215)
269 TYPE_PARAM_LIST@[200; 204) 271 L_PAREN@[196; 197)
270 L_ANGLE@[200; 201) 272 FOR_TYPE@[197; 214)
271 LIFETIME_PARAM@[201; 203) 273 FOR_KW@[197; 200)
272 LIFETIME@[201; 203) "'a" 274 TYPE_PARAM_LIST@[200; 204)
273 R_ANGLE@[203; 204) 275 L_ANGLE@[200; 201)
274 WHITESPACE@[204; 205) 276 LIFETIME_PARAM@[201; 203)
275 PATH_TYPE@[205; 214) 277 LIFETIME@[201; 203) "'a"
276 PATH@[205; 214) 278 R_ANGLE@[203; 204)
277 PATH_SEGMENT@[205; 214) 279 WHITESPACE@[204; 205)
278 NAME_REF@[205; 210) 280 PATH_TYPE@[205; 214)
279 IDENT@[205; 210) "Trait" 281 PATH@[205; 214)
280 TYPE_ARG_LIST@[210; 214) 282 PATH_SEGMENT@[205; 214)
281 L_ANGLE@[210; 211) 283 NAME_REF@[205; 210)
282 LIFETIME_ARG@[211; 213) 284 IDENT@[205; 210) "Trait"
283 LIFETIME@[211; 213) "'a" 285 TYPE_ARG_LIST@[210; 214)
284 R_ANGLE@[213; 214) 286 L_ANGLE@[210; 211)
285 R_PAREN@[214; 215) 287 LIFETIME_ARG@[211; 213)
286 err: `expected COMMA` 288 LIFETIME@[211; 213) "'a"
287 err: `expected R_ANGLE` 289 R_ANGLE@[213; 214)
288 WHITESPACE@[215; 216) 290 R_PAREN@[214; 215)
289 PLUS@[216; 217) 291 err: `expected COMMA`
290 WHITESPACE@[217; 218) 292 err: `expected R_ANGLE`
291 TYPE_BOUND_LIST@[218; 235) 293 WHITESPACE@[215; 216)
294 PLUS@[216; 217)
295 WHITESPACE@[217; 218)
292 TYPE_BOUND@[218; 224) 296 TYPE_BOUND@[218; 224)
293 L_PAREN@[218; 219) 297 L_PAREN@[218; 219)
294 PATH_TYPE@[219; 223) 298 PATH_TYPE@[219; 223)
diff --git a/crates/ra_syntax/tests/data/parser/inline/ok/0048_path_type_with_bounds.rs b/crates/ra_syntax/tests/data/parser/inline/ok/0048_path_type_with_bounds.rs
index 215210e27..4bb0f63b7 100644
--- a/crates/ra_syntax/tests/data/parser/inline/ok/0048_path_type_with_bounds.rs
+++ b/crates/ra_syntax/tests/data/parser/inline/ok/0048_path_type_with_bounds.rs
@@ -1 +1,2 @@
1fn foo() -> Box<T + 'f> {} 1fn foo() -> Box<T + 'f> {}
2fn foo() -> Box<dyn T + 'f> {}
diff --git a/crates/ra_syntax/tests/data/parser/inline/ok/0048_path_type_with_bounds.txt b/crates/ra_syntax/tests/data/parser/inline/ok/0048_path_type_with_bounds.txt
index a0110f555..6faf4d3b9 100644
--- a/crates/ra_syntax/tests/data/parser/inline/ok/0048_path_type_with_bounds.txt
+++ b/crates/ra_syntax/tests/data/parser/inline/ok/0048_path_type_with_bounds.txt
@@ -1,4 +1,4 @@
1SOURCE_FILE@[0; 27) 1SOURCE_FILE@[0; 58)
2 FN_DEF@[0; 26) 2 FN_DEF@[0; 26)
3 FN_KW@[0; 2) 3 FN_KW@[0; 2)
4 WHITESPACE@[2; 3) 4 WHITESPACE@[2; 3)
@@ -19,15 +19,17 @@ SOURCE_FILE@[0; 27)
19 TYPE_ARG_LIST@[15; 23) 19 TYPE_ARG_LIST@[15; 23)
20 L_ANGLE@[15; 16) 20 L_ANGLE@[15; 16)
21 TYPE_ARG@[16; 22) 21 TYPE_ARG@[16; 22)
22 PATH_TYPE@[16; 22) 22 DYN_TRAIT_TYPE@[16; 22)
23 PATH@[16; 17) 23 TYPE_BOUND_LIST@[16; 22)
24 PATH_SEGMENT@[16; 17) 24 TYPE_BOUND@[16; 17)
25 NAME_REF@[16; 17) 25 PATH_TYPE@[16; 17)
26 IDENT@[16; 17) "T" 26 PATH@[16; 17)
27 WHITESPACE@[17; 18) 27 PATH_SEGMENT@[16; 17)
28 PLUS@[18; 19) 28 NAME_REF@[16; 17)
29 WHITESPACE@[19; 20) 29 IDENT@[16; 17) "T"
30 TYPE_BOUND_LIST@[20; 22) 30 WHITESPACE@[17; 18)
31 PLUS@[18; 19)
32 WHITESPACE@[19; 20)
31 TYPE_BOUND@[20; 22) 33 TYPE_BOUND@[20; 22)
32 LIFETIME@[20; 22) "'f" 34 LIFETIME@[20; 22) "'f"
33 R_ANGLE@[22; 23) 35 R_ANGLE@[22; 23)
@@ -36,3 +38,44 @@ SOURCE_FILE@[0; 27)
36 L_CURLY@[24; 25) 38 L_CURLY@[24; 25)
37 R_CURLY@[25; 26) 39 R_CURLY@[25; 26)
38 WHITESPACE@[26; 27) 40 WHITESPACE@[26; 27)
41 FN_DEF@[27; 57)
42 FN_KW@[27; 29)
43 WHITESPACE@[29; 30)
44 NAME@[30; 33)
45 IDENT@[30; 33) "foo"
46 PARAM_LIST@[33; 35)
47 L_PAREN@[33; 34)
48 R_PAREN@[34; 35)
49 WHITESPACE@[35; 36)
50 RET_TYPE@[36; 54)
51 THIN_ARROW@[36; 38)
52 WHITESPACE@[38; 39)
53 PATH_TYPE@[39; 54)
54 PATH@[39; 54)
55 PATH_SEGMENT@[39; 54)
56 NAME_REF@[39; 42)
57 IDENT@[39; 42) "Box"
58 TYPE_ARG_LIST@[42; 54)
59 L_ANGLE@[42; 43)
60 TYPE_ARG@[43; 53)
61 DYN_TRAIT_TYPE@[43; 53)
62 DYN_KW@[43; 46)
63 WHITESPACE@[46; 47)
64 TYPE_BOUND_LIST@[47; 53)
65 TYPE_BOUND@[47; 48)
66 PATH_TYPE@[47; 48)
67 PATH@[47; 48)
68 PATH_SEGMENT@[47; 48)
69 NAME_REF@[47; 48)
70 IDENT@[47; 48) "T"
71 WHITESPACE@[48; 49)
72 PLUS@[49; 50)
73 WHITESPACE@[50; 51)
74 TYPE_BOUND@[51; 53)
75 LIFETIME@[51; 53) "'f"
76 R_ANGLE@[53; 54)
77 WHITESPACE@[54; 55)
78 BLOCK@[55; 57)
79 L_CURLY@[55; 56)
80 R_CURLY@[56; 57)
81 WHITESPACE@[57; 58)