@@ -4162,7 +4162,7 @@ impl<'hir> Item<'hir> {
4162
4162
Ident ,
4163
4163
& ' hir Generics <' hir>,
4164
4164
GenericBounds <' hir>,
4165
- & ' hir [ TraitItemRef ]
4165
+ & ' hir [ TraitItemId ]
4166
4166
) ,
4167
4167
ItemKind :: Trait ( is_auto, safety, ident, generics, bounds, items) ,
4168
4168
( * is_auto, * safety, * ident, generics, bounds, items) ;
@@ -4335,7 +4335,7 @@ pub enum ItemKind<'hir> {
4335
4335
/// A union definition, e.g., `union Foo<A, B> {x: A, y: B}`.
4336
4336
Union ( Ident , & ' hir Generics < ' hir > , VariantData < ' hir > ) ,
4337
4337
/// A trait definition.
4338
- Trait ( IsAuto , Safety , Ident , & ' hir Generics < ' hir > , GenericBounds < ' hir > , & ' hir [ TraitItemRef ] ) ,
4338
+ Trait ( IsAuto , Safety , Ident , & ' hir Generics < ' hir > , GenericBounds < ' hir > , & ' hir [ TraitItemId ] ) ,
4339
4339
/// A trait alias.
4340
4340
TraitAlias ( Ident , & ' hir Generics < ' hir > , GenericBounds < ' hir > ) ,
4341
4341
@@ -4362,7 +4362,7 @@ pub struct Impl<'hir> {
4362
4362
pub of_trait : Option < TraitRef < ' hir > > ,
4363
4363
4364
4364
pub self_ty : & ' hir Ty < ' hir > ,
4365
- pub items : & ' hir [ ImplItemRef ] ,
4365
+ pub items : & ' hir [ ImplItemId ] ,
4366
4366
}
4367
4367
4368
4368
impl ItemKind < ' _ > {
@@ -4405,32 +4405,6 @@ impl ItemKind<'_> {
4405
4405
}
4406
4406
}
4407
4407
4408
- /// A reference from an trait to one of its associated items. This
4409
- /// contains the item's id, naturally, but also the item's name and
4410
- /// some other high-level details (like whether it is an associated
4411
- /// type or method, and whether it is public). This allows other
4412
- /// passes to find the impl they want without loading the ID (which
4413
- /// means fewer edges in the incremental compilation graph).
4414
- #[ derive( Debug , Clone , Copy , HashStable_Generic ) ]
4415
- pub struct TraitItemRef {
4416
- pub id : TraitItemId ,
4417
- pub ident : Ident ,
4418
- pub span : Span ,
4419
- }
4420
-
4421
- /// A reference from an impl to one of its associated items. This
4422
- /// contains the item's ID, naturally, but also the item's name and
4423
- /// some other high-level details (like whether it is an associated
4424
- /// type or method, and whether it is public). This allows other
4425
- /// passes to find the impl they want without loading the ID (which
4426
- /// means fewer edges in the incremental compilation graph).
4427
- #[ derive( Debug , Clone , Copy , HashStable_Generic ) ]
4428
- pub struct ImplItemRef {
4429
- pub id : ImplItemId ,
4430
- pub ident : Ident ,
4431
- pub span : Span ,
4432
- }
4433
-
4434
4408
// The bodies for items are stored "out of line", in a separate
4435
4409
// hashmap in the `Crate`. Here we just record the hir-id of the item
4436
4410
// so it can fetched later.
0 commit comments