aboutsummaryrefslogtreecommitdiff
path: root/crates/ra_syntax/tests/data/parser/ok/0018_struct_type_params.txt
blob: 3f06f20f93e7f549481ac854fed78e707cecb6e2 (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) "struct"
    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) "\n"
  STRUCT_DEF@[14; 32)
    STRUCT_KW@[14; 20) "struct"
    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) "\n"
  STRUCT_DEF@[33; 56)
    STRUCT_KW@[33; 39) "struct"
    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) "\n\n"
  STRUCT_DEF@[58; 70)
    STRUCT_KW@[58; 64) "struct"
    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) "\n"
  STRUCT_DEF@[71; 85)
    STRUCT_KW@[71; 77) "struct"
    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) "\n"
  STRUCT_DEF@[86; 101)
    STRUCT_KW@[86; 92) "struct"
    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) "\n"
  STRUCT_DEF@[102; 120)
    STRUCT_KW@[102; 108) "struct"
    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) "\n"
  STRUCT_DEF@[121; 142)
    STRUCT_KW@[121; 127) "struct"
    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) "\n"
  STRUCT_DEF@[143; 166)
    STRUCT_KW@[143; 149) "struct"
    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) "\n"
  STRUCT_DEF@[167; 183)
    STRUCT_KW@[167; 173) "struct"
    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) "\n"
  STRUCT_DEF@[184; 203)
    STRUCT_KW@[184; 190) "struct"
    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) "\n"
  STRUCT_DEF@[204; 233)
    STRUCT_KW@[204; 210) "struct"
    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) "\n\n"
  STRUCT_DEF@[235; 249)
    STRUCT_KW@[235; 241) "struct"
    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) "\n"
  STRUCT_DEF@[250; 267)
    STRUCT_KW@[250; 256) "struct"
    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) "\n"
  STRUCT_DEF@[268; 289)
    STRUCT_KW@[268; 274) "struct"
    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) "\n"