aboutsummaryrefslogtreecommitdiff
path: root/crates/ra_syntax/tests/data/parser/ok/0018_struct_type_params.txt
blob: 05480c81b0c8aaae9bb343e519990c131a01deb4 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
SOURCE_FILE@[0; 290)
  STRUCT_DEF@[0; 13)
    STRUCT_KW@[0; 6)
    WHITESPACE@[6; 7)
    NAME@[7; 9)
      IDENT@[7; 9) "S1"
    TYPE_PARAM_LIST@[9; 12)
      L_ANGLE@[9; 10)
      TYPE_PARAM@[10; 11)
        NAME@[10; 11)
          IDENT@[10; 11) "T"
      R_ANGLE@[11; 12)
    SEMI@[12; 13)
  WHITESPACE@[13; 14)
  STRUCT_DEF@[14; 32)
    STRUCT_KW@[14; 20)
    WHITESPACE@[20; 21)
    NAME@[21; 23)
      IDENT@[21; 23) "S2"
    TYPE_PARAM_LIST@[23; 26)
      L_ANGLE@[23; 24)
      TYPE_PARAM@[24; 25)
        NAME@[24; 25)
          IDENT@[24; 25) "T"
      R_ANGLE@[25; 26)
    POS_FIELD_DEF_LIST@[26; 31)
      L_PAREN@[26; 27)
      POS_FIELD_DEF@[27; 30)
        PATH_TYPE@[27; 30)
          PATH@[27; 30)
            PATH_SEGMENT@[27; 30)
              NAME_REF@[27; 30)
                IDENT@[27; 30) "u32"
      R_PAREN@[30; 31)
    SEMI@[31; 32)
  WHITESPACE@[32; 33)
  STRUCT_DEF@[33; 56)
    STRUCT_KW@[33; 39)
    WHITESPACE@[39; 40)
    NAME@[40; 42)
      IDENT@[40; 42) "S3"
    TYPE_PARAM_LIST@[42; 45)
      L_ANGLE@[42; 43)
      TYPE_PARAM@[43; 44)
        NAME@[43; 44)
          IDENT@[43; 44) "T"
      R_ANGLE@[44; 45)
    WHITESPACE@[45; 46)
    NAMED_FIELD_DEF_LIST@[46; 56)
      L_CURLY@[46; 47)
      WHITESPACE@[47; 48)
      NAMED_FIELD_DEF@[48; 54)
        NAME@[48; 49)
          IDENT@[48; 49) "u"
        COLON@[49; 50)
        WHITESPACE@[50; 51)
        PATH_TYPE@[51; 54)
          PATH@[51; 54)
            PATH_SEGMENT@[51; 54)
              NAME_REF@[51; 54)
                IDENT@[51; 54) "u32"
      WHITESPACE@[54; 55)
      R_CURLY@[55; 56)
  WHITESPACE@[56; 58)
  STRUCT_DEF@[58; 70)
    STRUCT_KW@[58; 64)
    WHITESPACE@[64; 65)
    NAME@[65; 67)
      IDENT@[65; 67) "S4"
    TYPE_PARAM_LIST@[67; 69)
      L_ANGLE@[67; 68)
      R_ANGLE@[68; 69)
    SEMI@[69; 70)
  WHITESPACE@[70; 71)
  STRUCT_DEF@[71; 85)
    STRUCT_KW@[71; 77)
    WHITESPACE@[77; 78)
    NAME@[78; 80)
      IDENT@[78; 80) "S5"
    TYPE_PARAM_LIST@[80; 84)
      L_ANGLE@[80; 81)
      LIFETIME_PARAM@[81; 83)
        LIFETIME@[81; 83) "'a"
      R_ANGLE@[83; 84)
    SEMI@[84; 85)
  WHITESPACE@[85; 86)
  STRUCT_DEF@[86; 101)
    STRUCT_KW@[86; 92)
    WHITESPACE@[92; 93)
    NAME@[93; 95)
      IDENT@[93; 95) "S6"
    TYPE_PARAM_LIST@[95; 100)
      L_ANGLE@[95; 96)
      LIFETIME_PARAM@[96; 99)
        LIFETIME@[96; 98) "'a"
        COLON@[98; 99)
      R_ANGLE@[99; 100)
    SEMI@[100; 101)
  WHITESPACE@[101; 102)
  STRUCT_DEF@[102; 120)
    STRUCT_KW@[102; 108)
    WHITESPACE@[108; 109)
    NAME@[109; 111)
      IDENT@[109; 111) "S7"
    TYPE_PARAM_LIST@[111; 119)
      L_ANGLE@[111; 112)
      LIFETIME_PARAM@[112; 118)
        LIFETIME@[112; 114) "'a"
        COLON@[114; 115)
        WHITESPACE@[115; 116)
        LIFETIME@[116; 118) "'b"
      R_ANGLE@[118; 119)
    SEMI@[119; 120)
  WHITESPACE@[120; 121)
  STRUCT_DEF@[121; 142)
    STRUCT_KW@[121; 127)
    WHITESPACE@[127; 128)
    NAME@[128; 130)
      IDENT@[128; 130) "S8"
    TYPE_PARAM_LIST@[130; 141)
      L_ANGLE@[130; 131)
      LIFETIME_PARAM@[131; 139)
        LIFETIME@[131; 133) "'a"
        COLON@[133; 134)
        WHITESPACE@[134; 135)
        LIFETIME@[135; 137) "'b"
        WHITESPACE@[137; 138)
        PLUS@[138; 139)
      WHITESPACE@[139; 140)
      R_ANGLE@[140; 141)
    SEMI@[141; 142)
  WHITESPACE@[142; 143)
  STRUCT_DEF@[143; 166)
    STRUCT_KW@[143; 149)
    WHITESPACE@[149; 150)
    NAME@[150; 152)
      IDENT@[150; 152) "S9"
    TYPE_PARAM_LIST@[152; 165)
      L_ANGLE@[152; 153)
      LIFETIME_PARAM@[153; 164)
        LIFETIME@[153; 155) "'a"
        COLON@[155; 156)
        WHITESPACE@[156; 157)
        LIFETIME@[157; 159) "'b"
        WHITESPACE@[159; 160)
        PLUS@[160; 161)
        WHITESPACE@[161; 162)
        LIFETIME@[162; 164) "'c"
      R_ANGLE@[164; 165)
    SEMI@[165; 166)
  WHITESPACE@[166; 167)
  STRUCT_DEF@[167; 183)
    STRUCT_KW@[167; 173)
    WHITESPACE@[173; 174)
    NAME@[174; 177)
      IDENT@[174; 177) "S10"
    TYPE_PARAM_LIST@[177; 182)
      L_ANGLE@[177; 178)
      LIFETIME_PARAM@[178; 180)
        LIFETIME@[178; 180) "'a"
      COMMA@[180; 181)
      R_ANGLE@[181; 182)
    SEMI@[182; 183)
  WHITESPACE@[183; 184)
  STRUCT_DEF@[184; 203)
    STRUCT_KW@[184; 190)
    WHITESPACE@[190; 191)
    NAME@[191; 194)
      IDENT@[191; 194) "S11"
    TYPE_PARAM_LIST@[194; 202)
      L_ANGLE@[194; 195)
      LIFETIME_PARAM@[195; 197)
        LIFETIME@[195; 197) "'a"
      COMMA@[197; 198)
      WHITESPACE@[198; 199)
      LIFETIME_PARAM@[199; 201)
        LIFETIME@[199; 201) "'b"
      R_ANGLE@[201; 202)
    SEMI@[202; 203)
  WHITESPACE@[203; 204)
  STRUCT_DEF@[204; 233)
    STRUCT_KW@[204; 210)
    WHITESPACE@[210; 211)
    NAME@[211; 214)
      IDENT@[211; 214) "S12"
    TYPE_PARAM_LIST@[214; 232)
      L_ANGLE@[214; 215)
      LIFETIME_PARAM@[215; 222)
        LIFETIME@[215; 217) "'a"
        COLON@[217; 218)
        WHITESPACE@[218; 219)
        LIFETIME@[219; 221) "'b"
        PLUS@[221; 222)
      COMMA@[222; 223)
      WHITESPACE@[223; 224)
      LIFETIME_PARAM@[224; 230)
        LIFETIME@[224; 226) "'b"
        COLON@[226; 227)
        WHITESPACE@[227; 228)
        LIFETIME@[228; 230) "'c"
      COMMA@[230; 231)
      R_ANGLE@[231; 232)
    SEMI@[232; 233)
  WHITESPACE@[233; 235)
  STRUCT_DEF@[235; 249)
    STRUCT_KW@[235; 241)
    WHITESPACE@[241; 242)
    NAME@[242; 245)
      IDENT@[242; 245) "S13"
    TYPE_PARAM_LIST@[245; 248)
      L_ANGLE@[245; 246)
      TYPE_PARAM@[246; 247)
        NAME@[246; 247)
          IDENT@[246; 247) "T"
      R_ANGLE@[247; 248)
    SEMI@[248; 249)
  WHITESPACE@[249; 250)
  STRUCT_DEF@[250; 267)
    STRUCT_KW@[250; 256)
    WHITESPACE@[256; 257)
    NAME@[257; 260)
      IDENT@[257; 260) "S14"
    TYPE_PARAM_LIST@[260; 266)
      L_ANGLE@[260; 261)
      TYPE_PARAM@[261; 262)
        NAME@[261; 262)
          IDENT@[261; 262) "T"
      COMMA@[262; 263)
      WHITESPACE@[263; 264)
      TYPE_PARAM@[264; 265)
        NAME@[264; 265)
          IDENT@[264; 265) "U"
      R_ANGLE@[265; 266)
    SEMI@[266; 267)
  WHITESPACE@[267; 268)
  STRUCT_DEF@[268; 289)
    STRUCT_KW@[268; 274)
    WHITESPACE@[274; 275)
    NAME@[275; 278)
      IDENT@[275; 278) "S15"
    TYPE_PARAM_LIST@[278; 288)
      L_ANGLE@[278; 279)
      LIFETIME_PARAM@[279; 281)
        LIFETIME@[279; 281) "'a"
      COMMA@[281; 282)
      WHITESPACE@[282; 283)
      TYPE_PARAM@[283; 284)
        NAME@[283; 284)
          IDENT@[283; 284) "T"
      COMMA@[284; 285)
      WHITESPACE@[285; 286)
      TYPE_PARAM@[286; 287)
        NAME@[286; 287)
          IDENT@[286; 287) "U"
      R_ANGLE@[287; 288)
    SEMI@[288; 289)
  WHITESPACE@[289; 290)