@@ -2610,7 +2610,6 @@ impl<'hir> Ty<'hir> {
26102610 }
26112611 TyKind :: Tup ( tys) => tys. iter ( ) . any ( Self :: is_suggestable_infer_ty) ,
26122612 TyKind :: Ptr ( mut_ty) | TyKind :: Ref ( _, mut_ty) => mut_ty. ty . is_suggestable_infer_ty ( ) ,
2613- TyKind :: OpaqueDef ( _, generic_args) => are_suggestable_generic_args ( generic_args) ,
26142613 TyKind :: Path ( QPath :: TypeRelative ( ty, segment) ) => {
26152614 ty. is_suggestable_infer_ty ( ) || are_suggestable_generic_args ( segment. args ( ) . args )
26162615 }
@@ -2729,19 +2728,8 @@ pub struct BareFnTy<'hir> {
27292728pub struct OpaqueTy < ' hir > {
27302729 pub hir_id : HirId ,
27312730 pub def_id : LocalDefId ,
2732- pub generics : & ' hir Generics < ' hir > ,
27332731 pub bounds : GenericBounds < ' hir > ,
27342732 pub origin : OpaqueTyOrigin ,
2735- /// Return-position impl traits (and async futures) must "reify" any late-bound
2736- /// lifetimes that are captured from the function signature they originate from.
2737- ///
2738- /// This is done by generating a new early-bound lifetime parameter local to the
2739- /// opaque which is instantiated in the function signature with the late-bound
2740- /// lifetime.
2741- ///
2742- /// This mapping associated a captured lifetime (first parameter) with the new
2743- /// early-bound lifetime that was generated for the opaque.
2744- pub lifetime_mapping : & ' hir [ ( & ' hir Lifetime , LocalDefId ) ] ,
27452733 /// Whether the opaque is a return-position impl trait (or async future)
27462734 /// originating from a trait method. This makes it so that the opaque is
27472735 /// lowered as an associated type.
@@ -2837,7 +2825,7 @@ pub enum TyKind<'hir> {
28372825 /// possibly parameters) that are actually bound on the `impl Trait`.
28382826 ///
28392827 /// The last parameter specifies whether this opaque appears in a trait definition.
2840- OpaqueDef ( & ' hir OpaqueTy < ' hir > , & ' hir [ GenericArg < ' hir > ] ) ,
2828+ OpaqueDef ( & ' hir OpaqueTy < ' hir > ) ,
28412829 /// A trait object type `Bound1 + Bound2 + Bound3`
28422830 /// where `Bound` is a trait or a lifetime.
28432831 TraitObject (
@@ -3959,7 +3947,6 @@ impl<'hir> Node<'hir> {
39593947 | Node :: TraitItem ( TraitItem { generics, .. } )
39603948 | Node :: ImplItem ( ImplItem { generics, .. } ) => Some ( generics) ,
39613949 Node :: Item ( item) => item. kind . generics ( ) ,
3962- Node :: OpaqueTy ( opaque) => Some ( opaque. generics ) ,
39633950 _ => None ,
39643951 }
39653952 }
0 commit comments