@@ -135,11 +135,11 @@ impl<'ast> visit::Visitor for DefCollector<'ast> {
135
135
DefPathData :: Impl ,
136
136
ItemKind :: Enum ( ..) | ItemKind :: Struct ( ..) | ItemKind :: Trait ( ..) |
137
137
ItemKind :: ExternCrate ( ..) | ItemKind :: ForeignMod ( ..) | ItemKind :: Ty ( ..) =>
138
- DefPathData :: TypeNs ( i. ident . name ) ,
139
- ItemKind :: Mod ( ..) => DefPathData :: Module ( i. ident . name ) ,
138
+ DefPathData :: TypeNs ( i. ident . name . as_str ( ) ) ,
139
+ ItemKind :: Mod ( ..) => DefPathData :: Module ( i. ident . name . as_str ( ) ) ,
140
140
ItemKind :: Static ( ..) | ItemKind :: Const ( ..) | ItemKind :: Fn ( ..) =>
141
- DefPathData :: ValueNs ( i. ident . name ) ,
142
- ItemKind :: Mac ( ..) => DefPathData :: MacroDef ( i. ident . name ) ,
141
+ DefPathData :: ValueNs ( i. ident . name . as_str ( ) ) ,
142
+ ItemKind :: Mac ( ..) => DefPathData :: MacroDef ( i. ident . name . as_str ( ) ) ,
143
143
ItemKind :: Use ( ..) => DefPathData :: Misc ,
144
144
} ;
145
145
let def = self . create_def ( i. id , def_data) ;
@@ -150,12 +150,12 @@ impl<'ast> visit::Visitor for DefCollector<'ast> {
150
150
for v in & enum_definition. variants {
151
151
let variant_def_index =
152
152
this. create_def ( v. node . data . id ( ) ,
153
- DefPathData :: EnumVariant ( v. node . name . name ) ) ;
153
+ DefPathData :: EnumVariant ( v. node . name . name . as_str ( ) ) ) ;
154
154
this. with_parent ( variant_def_index, |this| {
155
155
for ( index, field) in v. node . data . fields ( ) . iter ( ) . enumerate ( ) {
156
156
let name = field. ident . map ( |ident| ident. name )
157
157
. unwrap_or_else ( || token:: intern ( & index. to_string ( ) ) ) ;
158
- this. create_def ( field. id , DefPathData :: Field ( name) ) ;
158
+ this. create_def ( field. id , DefPathData :: Field ( name. as_str ( ) ) ) ;
159
159
}
160
160
161
161
if let Some ( ref expr) = v. node . disr_expr {
@@ -172,8 +172,8 @@ impl<'ast> visit::Visitor for DefCollector<'ast> {
172
172
}
173
173
174
174
for ( index, field) in struct_def. fields ( ) . iter ( ) . enumerate ( ) {
175
- let name = field. ident . map ( |ident| ident. name )
176
- . unwrap_or ( token:: intern ( & index. to_string ( ) ) ) ;
175
+ let name = field. ident . map ( |ident| ident. name . as_str ( ) )
176
+ . unwrap_or ( token:: intern ( & index. to_string ( ) ) . as_str ( ) ) ;
177
177
this. create_def ( field. id , DefPathData :: Field ( name) ) ;
178
178
}
179
179
}
@@ -184,7 +184,8 @@ impl<'ast> visit::Visitor for DefCollector<'ast> {
184
184
}
185
185
186
186
fn visit_foreign_item ( & mut self , foreign_item : & ForeignItem ) {
187
- let def = self . create_def ( foreign_item. id , DefPathData :: ValueNs ( foreign_item. ident . name ) ) ;
187
+ let def = self . create_def ( foreign_item. id ,
188
+ DefPathData :: ValueNs ( foreign_item. ident . name . as_str ( ) ) ) ;
188
189
189
190
self . with_parent ( def, |this| {
190
191
visit:: walk_foreign_item ( this, foreign_item) ;
@@ -193,7 +194,7 @@ impl<'ast> visit::Visitor for DefCollector<'ast> {
193
194
194
195
fn visit_generics ( & mut self , generics : & Generics ) {
195
196
for ty_param in generics. ty_params . iter ( ) {
196
- self . create_def ( ty_param. id , DefPathData :: TypeParam ( ty_param. ident . name ) ) ;
197
+ self . create_def ( ty_param. id , DefPathData :: TypeParam ( ty_param. ident . name . as_str ( ) ) ) ;
197
198
}
198
199
199
200
visit:: walk_generics ( self , generics) ;
@@ -202,9 +203,9 @@ impl<'ast> visit::Visitor for DefCollector<'ast> {
202
203
fn visit_trait_item ( & mut self , ti : & TraitItem ) {
203
204
let def_data = match ti. node {
204
205
TraitItemKind :: Method ( ..) | TraitItemKind :: Const ( ..) =>
205
- DefPathData :: ValueNs ( ti. ident . name ) ,
206
- TraitItemKind :: Type ( ..) => DefPathData :: TypeNs ( ti. ident . name ) ,
207
- TraitItemKind :: Macro ( ..) => DefPathData :: MacroDef ( ti. ident . name ) ,
206
+ DefPathData :: ValueNs ( ti. ident . name . as_str ( ) ) ,
207
+ TraitItemKind :: Type ( ..) => DefPathData :: TypeNs ( ti. ident . name . as_str ( ) ) ,
208
+ TraitItemKind :: Macro ( ..) => DefPathData :: MacroDef ( ti. ident . name . as_str ( ) ) ,
208
209
} ;
209
210
210
211
let def = self . create_def ( ti. id , def_data) ;
@@ -220,9 +221,9 @@ impl<'ast> visit::Visitor for DefCollector<'ast> {
220
221
fn visit_impl_item ( & mut self , ii : & ImplItem ) {
221
222
let def_data = match ii. node {
222
223
ImplItemKind :: Method ( ..) | ImplItemKind :: Const ( ..) =>
223
- DefPathData :: ValueNs ( ii. ident . name ) ,
224
- ImplItemKind :: Type ( ..) => DefPathData :: TypeNs ( ii. ident . name ) ,
225
- ImplItemKind :: Macro ( ..) => DefPathData :: MacroDef ( ii. ident . name ) ,
224
+ DefPathData :: ValueNs ( ii. ident . name . as_str ( ) ) ,
225
+ ImplItemKind :: Type ( ..) => DefPathData :: TypeNs ( ii. ident . name . as_str ( ) ) ,
226
+ ImplItemKind :: Macro ( ..) => DefPathData :: MacroDef ( ii. ident . name . as_str ( ) ) ,
226
227
} ;
227
228
228
229
let def = self . create_def ( ii. id , def_data) ;
@@ -239,7 +240,7 @@ impl<'ast> visit::Visitor for DefCollector<'ast> {
239
240
let parent_def = self . parent_def ;
240
241
241
242
if let PatKind :: Ident ( _, id, _) = pat. node {
242
- let def = self . create_def ( pat. id , DefPathData :: Binding ( id. node . name ) ) ;
243
+ let def = self . create_def ( pat. id , DefPathData :: Binding ( id. node . name . as_str ( ) ) ) ;
243
244
self . parent_def = Some ( def) ;
244
245
}
245
246
@@ -271,11 +272,11 @@ impl<'ast> visit::Visitor for DefCollector<'ast> {
271
272
}
272
273
273
274
fn visit_lifetime_def ( & mut self , def : & LifetimeDef ) {
274
- self . create_def ( def. lifetime . id , DefPathData :: LifetimeDef ( def. lifetime . name ) ) ;
275
+ self . create_def ( def. lifetime . id , DefPathData :: LifetimeDef ( def. lifetime . name . as_str ( ) ) ) ;
275
276
}
276
277
277
278
fn visit_macro_def ( & mut self , macro_def : & MacroDef ) {
278
- self . create_def ( macro_def. id , DefPathData :: MacroDef ( macro_def. ident . name ) ) ;
279
+ self . create_def ( macro_def. id , DefPathData :: MacroDef ( macro_def. ident . name . as_str ( ) ) ) ;
279
280
}
280
281
}
281
282
@@ -301,9 +302,9 @@ impl<'ast> intravisit::Visitor<'ast> for DefCollector<'ast> {
301
302
hir:: ItemEnum ( ..) | hir:: ItemStruct ( ..) | hir:: ItemTrait ( ..) |
302
303
hir:: ItemExternCrate ( ..) | hir:: ItemMod ( ..) | hir:: ItemForeignMod ( ..) |
303
304
hir:: ItemTy ( ..) =>
304
- DefPathData :: TypeNs ( i. name ) ,
305
+ DefPathData :: TypeNs ( i. name . as_str ( ) ) ,
305
306
hir:: ItemStatic ( ..) | hir:: ItemConst ( ..) | hir:: ItemFn ( ..) =>
306
- DefPathData :: ValueNs ( i. name ) ,
307
+ DefPathData :: ValueNs ( i. name . as_str ( ) ) ,
307
308
hir:: ItemUse ( ..) => DefPathData :: Misc ,
308
309
} ;
309
310
let def = self . create_def ( i. id , def_data) ;
@@ -314,12 +315,12 @@ impl<'ast> intravisit::Visitor<'ast> for DefCollector<'ast> {
314
315
for v in & enum_definition. variants {
315
316
let variant_def_index =
316
317
this. create_def ( v. node . data . id ( ) ,
317
- DefPathData :: EnumVariant ( v. node . name ) ) ;
318
+ DefPathData :: EnumVariant ( v. node . name . as_str ( ) ) ) ;
318
319
319
320
this. with_parent ( variant_def_index, |this| {
320
321
for field in v. node . data . fields ( ) {
321
322
this. create_def ( field. id ,
322
- DefPathData :: Field ( field. name ) ) ;
323
+ DefPathData :: Field ( field. name . as_str ( ) ) ) ;
323
324
}
324
325
if let Some ( ref expr) = v. node . disr_expr {
325
326
this. visit_hir_const_integer ( expr) ;
@@ -335,7 +336,7 @@ impl<'ast> intravisit::Visitor<'ast> for DefCollector<'ast> {
335
336
}
336
337
337
338
for field in struct_def. fields ( ) {
338
- this. create_def ( field. id , DefPathData :: Field ( field. name ) ) ;
339
+ this. create_def ( field. id , DefPathData :: Field ( field. name . as_str ( ) ) ) ;
339
340
}
340
341
}
341
342
_ => { }
@@ -345,7 +346,8 @@ impl<'ast> intravisit::Visitor<'ast> for DefCollector<'ast> {
345
346
}
346
347
347
348
fn visit_foreign_item ( & mut self , foreign_item : & ' ast hir:: ForeignItem ) {
348
- let def = self . create_def ( foreign_item. id , DefPathData :: ValueNs ( foreign_item. name ) ) ;
349
+ let def = self . create_def ( foreign_item. id ,
350
+ DefPathData :: ValueNs ( foreign_item. name . as_str ( ) ) ) ;
349
351
350
352
self . with_parent ( def, |this| {
351
353
intravisit:: walk_foreign_item ( this, foreign_item) ;
@@ -354,7 +356,7 @@ impl<'ast> intravisit::Visitor<'ast> for DefCollector<'ast> {
354
356
355
357
fn visit_generics ( & mut self , generics : & ' ast hir:: Generics ) {
356
358
for ty_param in generics. ty_params . iter ( ) {
357
- self . create_def ( ty_param. id , DefPathData :: TypeParam ( ty_param. name ) ) ;
359
+ self . create_def ( ty_param. id , DefPathData :: TypeParam ( ty_param. name . as_str ( ) ) ) ;
358
360
}
359
361
360
362
intravisit:: walk_generics ( self , generics) ;
@@ -363,8 +365,8 @@ impl<'ast> intravisit::Visitor<'ast> for DefCollector<'ast> {
363
365
fn visit_trait_item ( & mut self , ti : & ' ast hir:: TraitItem ) {
364
366
let def_data = match ti. node {
365
367
hir:: MethodTraitItem ( ..) | hir:: ConstTraitItem ( ..) =>
366
- DefPathData :: ValueNs ( ti. name ) ,
367
- hir:: TypeTraitItem ( ..) => DefPathData :: TypeNs ( ti. name ) ,
368
+ DefPathData :: ValueNs ( ti. name . as_str ( ) ) ,
369
+ hir:: TypeTraitItem ( ..) => DefPathData :: TypeNs ( ti. name . as_str ( ) ) ,
368
370
} ;
369
371
370
372
let def = self . create_def ( ti. id , def_data) ;
@@ -380,8 +382,8 @@ impl<'ast> intravisit::Visitor<'ast> for DefCollector<'ast> {
380
382
fn visit_impl_item ( & mut self , ii : & ' ast hir:: ImplItem ) {
381
383
let def_data = match ii. node {
382
384
hir:: ImplItemKind :: Method ( ..) | hir:: ImplItemKind :: Const ( ..) =>
383
- DefPathData :: ValueNs ( ii. name ) ,
384
- hir:: ImplItemKind :: Type ( ..) => DefPathData :: TypeNs ( ii. name ) ,
385
+ DefPathData :: ValueNs ( ii. name . as_str ( ) ) ,
386
+ hir:: ImplItemKind :: Type ( ..) => DefPathData :: TypeNs ( ii. name . as_str ( ) ) ,
385
387
} ;
386
388
387
389
let def = self . create_def ( ii. id , def_data) ;
@@ -398,7 +400,7 @@ impl<'ast> intravisit::Visitor<'ast> for DefCollector<'ast> {
398
400
let parent_def = self . parent_def ;
399
401
400
402
if let hir:: PatKind :: Binding ( _, name, _) = pat. node {
401
- let def = self . create_def ( pat. id , DefPathData :: Binding ( name. node ) ) ;
403
+ let def = self . create_def ( pat. id , DefPathData :: Binding ( name. node . as_str ( ) ) ) ;
402
404
self . parent_def = Some ( def) ;
403
405
}
404
406
@@ -430,10 +432,10 @@ impl<'ast> intravisit::Visitor<'ast> for DefCollector<'ast> {
430
432
}
431
433
432
434
fn visit_lifetime_def ( & mut self , def : & ' ast hir:: LifetimeDef ) {
433
- self . create_def ( def. lifetime . id , DefPathData :: LifetimeDef ( def. lifetime . name ) ) ;
435
+ self . create_def ( def. lifetime . id , DefPathData :: LifetimeDef ( def. lifetime . name . as_str ( ) ) ) ;
434
436
}
435
437
436
438
fn visit_macro_def ( & mut self , macro_def : & ' ast hir:: MacroDef ) {
437
- self . create_def ( macro_def. id , DefPathData :: MacroDef ( macro_def. name ) ) ;
439
+ self . create_def ( macro_def. id , DefPathData :: MacroDef ( macro_def. name . as_str ( ) ) ) ;
438
440
}
439
441
}
0 commit comments