Created
May 29, 2022 10:57
-
-
Save nikomatsakis/b2091af76682214cf45ade1fe1449394 to your computer and use it in GitHub Desktop.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
┐rustc_ast_lowering::item::lower_crate | |
├─┐rustc_ast_lowering::with_hir_id_owner owner=NodeId(0) | |
│ ├─┐rustc_ast_lowering::index::index_hir item=Crate(Mod { spans: ModSpans { inner_span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:3:1: 15:13 (#0), inject_use_span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:5:1: 5:1 (#0) }, item_ids: [ItemId { def_id: DefId(0:1) }, ItemId { def_id: DefId(0:2) }, ItemId { def_id: DefId(0:3) }, ItemId { def_id: DefId(0:5) }, ItemId { def_id: DefId(0:7) }, ItemId { def_id: DefId(0:11) }] }) | |
│ │ ├─0ms DEBUG rustc_ast_lowering::index visit_nested_item: ItemId { def_id: DefId(0:1) } | |
│ │ ├─0ms DEBUG rustc_ast_lowering::index visit_nested_item: ItemId { def_id: DefId(0:2) } | |
│ │ ├─0ms DEBUG rustc_ast_lowering::index visit_nested_item: ItemId { def_id: DefId(0:3) } | |
│ │ ├─0ms DEBUG rustc_ast_lowering::index visit_nested_item: ItemId { def_id: DefId(0:5) } | |
│ │ ├─0ms DEBUG rustc_ast_lowering::index visit_nested_item: ItemId { def_id: DefId(0:7) } | |
│ │ ├─0ms DEBUG rustc_ast_lowering::index visit_nested_item: ItemId { def_id: DefId(0:11) } | |
│ ├─┘ | |
├─┘ | |
┘ | |
┐rustc_ast_lowering::item::lower_item item=Item { attrs: [Attribute { kind: Normal(AttrItem { path: Path { span: no-location (#1), segments: [PathSegment { ident: prelude_import#1, id: NodeId(3), args: None }], tokens: None }, args: Empty, tokens: None }, None), id: AttrId(2), style: Outer, span: no-location (#1) }], id: NodeId(2), span: no-location (#1), vis: Visibility { kind: Inherited, span: no-location (#1), tokens: None }, ident: #0, kind: Use(UseTree { prefix: Path { span: no-location (#1), segments: [PathSegment { ident: {{root}}#1, id: NodeId(4), args: None }, PathSegment { ident: std#1, id: NodeId(5), args: None }, PathSegment { ident: prelude#1, id: NodeId(6), args: None }, PathSegment { ident: rust_2015#1, id: NodeId(7), args: None }], tokens: None }, kind: Glob, span: no-location (#1) }), tokens: None } | |
├─┐rustc_ast_lowering::with_hir_id_owner owner=NodeId(2) | |
│ ├─┐rustc_ast_lowering::item::lower_use_tree tree=UseTree { prefix: Path { span: no-location (#1), segments: [PathSegment { ident: {{root}}#1, id: NodeId(4), args: None }, PathSegment { ident: std#1, id: NodeId(5), args: None }, PathSegment { ident: prelude#1, id: NodeId(6), args: None }, PathSegment { ident: rust_2015#1, id: NodeId(7), args: None }], tokens: None }, kind: Glob, span: no-location (#1) }, prefix=Path { span: no-location (#1), segments: [], tokens: None }, id=NodeId(2), vis_span=no-location (#1), ident=#0, attrs=Some([Attribute { kind: Normal(AttrItem { path: Path { span: no-location (#1), segments: [PathSegment { ident: prelude_import#1, id: NodeId(3), args: None }], tokens: None }, args: Empty, tokens: None }, None), id: AttrId(2), style: Outer, span: no-location (#1) }]) | |
│ │ ├─┐rustc_ast_lowering::lower_res res=Err | |
│ │ │ ├─0ms TRACE rustc_ast_lowering from remapping, res=Err | |
│ │ │ ├─0ms TRACE rustc_ast_lowering res=Ok(Err) | |
│ │ ├─┘ | |
│ │ ├─0ms DEBUG rustc_ast_lowering::path path_span: no-location (#1), lower_path_segment(segment: PathSegment { ident: {{root}}#1, id: NodeId(4), args: None }) | |
│ │ ├─0ms DEBUG rustc_ast_lowering::path lower_path_segment: ident={{root}}#1 original-id=NodeId(4) new-id=HirId { owner: DefId(0:1), local_id: 1 } | |
│ │ ├─┐rustc_ast_lowering::lower_res res=Err | |
│ │ │ ├─0ms TRACE rustc_ast_lowering from remapping, res=Err | |
│ │ │ ├─0ms TRACE rustc_ast_lowering res=Ok(Err) | |
│ │ ├─┘ | |
│ │ ├─0ms DEBUG rustc_ast_lowering::path path_span: no-location (#1), lower_path_segment(segment: PathSegment { ident: std#1, id: NodeId(5), args: None }) | |
│ │ ├─0ms DEBUG rustc_ast_lowering::path lower_path_segment: ident=std#1 original-id=NodeId(5) new-id=HirId { owner: DefId(0:1), local_id: 2 } | |
│ │ ├─┐rustc_ast_lowering::lower_res res=Def(Mod, DefId(1:0)) | |
│ │ │ ├─0ms TRACE rustc_ast_lowering from remapping, res=Def(Mod, DefId(1:0)) | |
│ │ │ ├─0ms TRACE rustc_ast_lowering res=Ok(Def(Mod, DefId(1:0))) | |
│ │ ├─┘ | |
│ │ ├─0ms DEBUG rustc_ast_lowering::path path_span: no-location (#1), lower_path_segment(segment: PathSegment { ident: prelude#1, id: NodeId(6), args: None }) | |
│ │ ├─1ms DEBUG rustc_ast_lowering::path lower_path_segment: ident=prelude#1 original-id=NodeId(6) new-id=HirId { owner: DefId(0:1), local_id: 3 } | |
│ │ ├─┐rustc_ast_lowering::lower_res res=Def(Mod, DefId(1:69)) | |
│ │ │ ├─0ms TRACE rustc_ast_lowering from remapping, res=Def(Mod, DefId(1:69)) | |
│ │ │ ├─0ms TRACE rustc_ast_lowering res=Ok(Def(Mod, DefId(1:69))) | |
│ │ ├─┘ | |
│ │ ├─1ms DEBUG rustc_ast_lowering::path path_span: no-location (#1), lower_path_segment(segment: PathSegment { ident: rust_2015#1, id: NodeId(7), args: None }) | |
│ │ ├─1ms DEBUG rustc_ast_lowering::path lower_path_segment: ident=rust_2015#1 original-id=NodeId(7) new-id=HirId { owner: DefId(0:1), local_id: 4 } | |
│ │ ├─┐rustc_ast_lowering::lower_res res=Def(Mod, DefId(1:283)) | |
│ │ │ ├─0ms TRACE rustc_ast_lowering from remapping, res=Def(Mod, DefId(1:283)) | |
│ │ │ ├─0ms TRACE rustc_ast_lowering res=Ok(Def(Mod, DefId(1:283))) | |
│ │ ├─┘ | |
│ ├─┘ | |
│ ├─┐rustc_ast_lowering::index::index_hir item=Item(Item { ident: #0, def_id: DefId(0:1), kind: Use(Path { span: no-location (#1), res: Err, segments: [PathSegment { ident: {{root}}#1, hir_id: Some(HirId { owner: DefId(0:1), local_id: 1 }), res: Some(Err), args: None, infer_args: false }, PathSegment { ident: std#1, hir_id: Some(HirId { owner: DefId(0:1), local_id: 2 }), res: Some(Def(Mod, DefId(1:0))), args: None, infer_args: false }, PathSegment { ident: prelude#1, hir_id: Some(HirId { owner: DefId(0:1), local_id: 3 }), res: Some(Def(Mod, DefId(1:69))), args: None, infer_args: false }, PathSegment { ident: rust_2015#1, hir_id: Some(HirId { owner: DefId(0:1), local_id: 4 }), res: Some(Def(Mod, DefId(1:283))), args: None, infer_args: false }] }, Glob), span: no-location (#1), vis_span: no-location (#1) }) | |
│ │ ├─┐rustc_ast_lowering::index::visit_item i=Item { ident: #0, def_id: DefId(0:1), kind: Use(Path { span: no-location (#1), res: Err, segments: [PathSegment { ident: {{root}}#1, hir_id: Some(HirId { owner: DefId(0:1), local_id: 1 }), res: Some(Err), args: None, infer_args: false }, PathSegment { ident: std#1, hir_id: Some(HirId { owner: DefId(0:1), local_id: 2 }), res: Some(Def(Mod, DefId(1:0))), args: None, infer_args: false }, PathSegment { ident: prelude#1, hir_id: Some(HirId { owner: DefId(0:1), local_id: 3 }), res: Some(Def(Mod, DefId(1:69))), args: None, infer_args: false }, PathSegment { ident: rust_2015#1, hir_id: Some(HirId { owner: DefId(0:1), local_id: 4 }), res: Some(Def(Mod, DefId(1:283))), args: None, infer_args: false }] }, Glob), span: no-location (#1), vis_span: no-location (#1) } | |
│ │ │ ├─┐rustc_ast_lowering::index::insert span=no-location (#1), hir_id=HirId { owner: DefId(0:1), local_id: 1 }, node=PathSegment(PathSegment { ident: {{root}}#1, hir_id: Some(HirId { owner: DefId(0:1), local_id: 1 }), res: Some(Err), args: None, infer_args: false }) | |
│ │ │ ├─┘ | |
│ │ │ ├─┐rustc_ast_lowering::index::insert span=no-location (#1), hir_id=HirId { owner: DefId(0:1), local_id: 2 }, node=PathSegment(PathSegment { ident: std#1, hir_id: Some(HirId { owner: DefId(0:1), local_id: 2 }), res: Some(Def(Mod, DefId(1:0))), args: None, infer_args: false }) | |
│ │ │ ├─┘ | |
│ │ │ ├─┐rustc_ast_lowering::index::insert span=no-location (#1), hir_id=HirId { owner: DefId(0:1), local_id: 3 }, node=PathSegment(PathSegment { ident: prelude#1, hir_id: Some(HirId { owner: DefId(0:1), local_id: 3 }), res: Some(Def(Mod, DefId(1:69))), args: None, infer_args: false }) | |
│ │ │ ├─┘ | |
│ │ │ ├─┐rustc_ast_lowering::index::insert span=no-location (#1), hir_id=HirId { owner: DefId(0:1), local_id: 4 }, node=PathSegment(PathSegment { ident: rust_2015#1, hir_id: Some(HirId { owner: DefId(0:1), local_id: 4 }), res: Some(Def(Mod, DefId(1:283))), args: None, infer_args: false }) | |
│ │ │ ├─┘ | |
│ │ ├─┘ | |
│ ├─┘ | |
├─┘ | |
┘ | |
┐rustc_ast_lowering::item::lower_item item=Item { attrs: [Attribute { kind: Normal(AttrItem { path: Path { span: no-location (#1), segments: [PathSegment { ident: macro_use#1, id: NodeId(9), args: None }], tokens: None }, args: Empty, tokens: None }, None), id: AttrId(1), style: Outer, span: no-location (#1) }], id: NodeId(8), span: no-location (#1), vis: Visibility { kind: Inherited, span: no-location (#1), tokens: None }, ident: std#2, kind: ExternCrate(None), tokens: None } | |
├─┐rustc_ast_lowering::with_hir_id_owner owner=NodeId(8) | |
│ ├─┐rustc_ast_lowering::index::index_hir item=Item(Item { ident: std#2, def_id: DefId(0:2), kind: ExternCrate(None), span: no-location (#1), vis_span: no-location (#1) }) | |
│ │ ├─┐rustc_ast_lowering::index::visit_item i=Item { ident: std#2, def_id: DefId(0:2), kind: ExternCrate(None), span: no-location (#1), vis_span: no-location (#1) } | |
│ │ ├─┘ | |
│ ├─┘ | |
├─┘ | |
┘ | |
┐rustc_ast_lowering::item::lower_item item=Item { attrs: [], id: NodeId(10), span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:5:1: 5:20 (#0), vis: Visibility { kind: Inherited, span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:5:1: 5:1 (#0), tokens: None }, ident: MyTrait#0, kind: Trait(Trait { unsafety: No, is_auto: No, generics: Generics { params: [GenericParam { id: NodeId(11), ident: T#0, attrs: ThinVec(None), bounds: [], is_placeholder: false, kind: Type { default: None }, colon_span: None }], where_clause: WhereClause { has_where_token: false, predicates: [], span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:5:17: 5:17 (#0) }, span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:5:14: 5:17 (#0) }, bounds: [], items: [] }), tokens: None } | |
├─┐rustc_ast_lowering::with_hir_id_owner owner=NodeId(10) | |
│ ├─┐rustc_ast_lowering::lower_generic_param param=GenericParam { id: NodeId(11), ident: T#0, attrs: ThinVec(None), bounds: [], is_placeholder: false, kind: Type { default: None }, colon_span: None } | |
│ ├─┘ | |
│ ├─┐rustc_ast_lowering::index::index_hir item=Item(Item { ident: MyTrait#0, def_id: DefId(0:3), kind: Trait(No, Normal, Generics { params: [GenericParam { hir_id: HirId { owner: DefId(0:3), local_id: 1 }, name: Plain(T#0), span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:5:15: 5:16 (#0), pure_wrt_drop: false, kind: Type { default: None, synthetic: false }, colon_span: None }], predicates: [], has_where_clause: false, where_clause_span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:5:17: 5:17 (#0), span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:5:14: 5:17 (#0) }, [], []), span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:5:1: 5:20 (#0), vis_span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:5:1: 5:1 (#0) }) | |
│ │ ├─┐rustc_ast_lowering::index::visit_item i=Item { ident: MyTrait#0, def_id: DefId(0:3), kind: Trait(No, Normal, Generics { params: [GenericParam { hir_id: HirId { owner: DefId(0:3), local_id: 1 }, name: Plain(T#0), span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:5:15: 5:16 (#0), pure_wrt_drop: false, kind: Type { default: None, synthetic: false }, colon_span: None }], predicates: [], has_where_clause: false, where_clause_span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:5:17: 5:17 (#0), span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:5:14: 5:17 (#0) }, [], []), span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:5:1: 5:20 (#0), vis_span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:5:1: 5:1 (#0) } | |
│ │ │ ├─┐rustc_ast_lowering::index::insert span=src/test/ui/impl-trait/v2/generics-assoc-type.rs:5:15: 5:16 (#0), hir_id=HirId { owner: DefId(0:3), local_id: 1 }, node=GenericParam(GenericParam { hir_id: HirId { owner: DefId(0:3), local_id: 1 }, name: Plain(T#0), span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:5:15: 5:16 (#0), pure_wrt_drop: false, kind: Type { default: None, synthetic: false }, colon_span: None }) | |
│ │ │ ├─┘ | |
│ │ ├─┘ | |
│ ├─┘ | |
├─┘ | |
┘ | |
┐rustc_ast_lowering::item::lower_item item=Item { attrs: [], id: NodeId(12), span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:7:1: 7:28 (#0), vis: Visibility { kind: Inherited, span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:7:1: 7:1 (#0), tokens: None }, ident: #0, kind: Impl(Impl { defaultness: Final, unsafety: No, generics: Generics { params: [GenericParam { id: NodeId(13), ident: T#0, attrs: ThinVec(None), bounds: [], is_placeholder: false, kind: Type { default: None }, colon_span: None }], where_clause: WhereClause { has_where_token: false, predicates: [], span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:7:25: 7:25 (#0) }, span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:7:5: 7:8 (#0) }, constness: No, polarity: "positive", of_trait: Some(TraitRef { path: Path { span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:7:9: 7:19 (#0), segments: [PathSegment { ident: MyTrait#0, id: NodeId(14), args: Some(AngleBracketed(AngleBracketedArgs { span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:7:16: 7:19 (#0), args: [Arg(Type(Ty { id: NodeId(15), kind: Path(None, Path { span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:7:17: 7:18 (#0), segments: [PathSegment { ident: T#0, id: NodeId(16), args: None }], tokens: None }), span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:7:17: 7:18 (#0), tokens: None }))] })) }], tokens: None }, ref_id: NodeId(17) }), self_ty: Ty { id: NodeId(18), kind: Path(None, Path { span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:7:24: 7:25 (#0), segments: [PathSegment { ident: T#0, id: NodeId(19), args: None }], tokens: None }), span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:7:24: 7:25 (#0), tokens: None }, items: [] }), tokens: None } | |
├─┐rustc_ast_lowering::with_hir_id_owner owner=NodeId(12) | |
│ ├─┐rustc_ast_lowering::add_implicit_generics generics=Generics { params: [GenericParam { id: NodeId(13), ident: T#0, attrs: ThinVec(None), bounds: [], is_placeholder: false, kind: Type { default: None }, colon_span: None }], where_clause: WhereClause { has_where_token: false, predicates: [], span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:7:25: 7:25 (#0) }, span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:7:5: 7:8 (#0) }, parent_node_id=NodeId(12) | |
│ │ ├─┐rustc_ast_lowering::lower_generic_param param=GenericParam { id: NodeId(13), ident: T#0, attrs: ThinVec(None), bounds: [], is_placeholder: false, kind: Type { default: None }, colon_span: None } | |
│ │ ├─┘ | |
│ │ ├─┐rustc_ast_lowering::path::lower_qpath id=NodeId(17), qself=None, p=Path { span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:7:9: 7:19 (#0), segments: [PathSegment { ident: MyTrait#0, id: NodeId(14), args: Some(AngleBracketed(AngleBracketedArgs { span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:7:16: 7:19 (#0), args: [Arg(Type(Ty { id: NodeId(15), kind: Path(None, Path { span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:7:17: 7:18 (#0), segments: [PathSegment { ident: T#0, id: NodeId(16), args: None }], tokens: None }), span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:7:17: 7:18 (#0), tokens: None }))] })) }], tokens: None }, param_mode=Explicit, itctx=Disallowed(Trait) | |
│ │ │ ├─┐rustc_ast_lowering::lower_res res=Def(Trait, DefId(0:3)) | |
│ │ │ │ ├─0ms TRACE rustc_ast_lowering from remapping, res=Def(Trait, DefId(0:3)) | |
│ │ │ │ ├─0ms TRACE rustc_ast_lowering res=Ok(Def(Trait, DefId(0:3))) | |
│ │ │ ├─┘ | |
│ │ │ ├─0ms DEBUG rustc_ast_lowering::path path_span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:7:9: 7:19 (#0), lower_path_segment(segment: PathSegment { ident: MyTrait#0, id: NodeId(14), args: Some(AngleBracketed(AngleBracketedArgs { span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:7:16: 7:19 (#0), args: [Arg(Type(Ty { id: NodeId(15), kind: Path(None, Path { span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:7:17: 7:18 (#0), segments: [PathSegment { ident: T#0, id: NodeId(16), args: None }], tokens: None }), span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:7:17: 7:18 (#0), tokens: None }))] })) }) | |
│ │ │ ├─┐rustc_ast_lowering::lower_generic_arg arg=Type(Ty { id: NodeId(15), kind: Path(None, Path { span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:7:17: 7:18 (#0), segments: [PathSegment { ident: T#0, id: NodeId(16), args: None }], tokens: None }), span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:7:17: 7:18 (#0), tokens: None }), itctx=Disallowed(Trait) | |
│ │ │ │ ├─┐rustc_ast_lowering::path::lower_qpath id=NodeId(15), qself=None, p=Path { span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:7:17: 7:18 (#0), segments: [PathSegment { ident: T#0, id: NodeId(16), args: None }], tokens: None }, param_mode=Explicit, itctx=Disallowed(Trait) | |
│ │ │ │ │ ├─┐rustc_ast_lowering::lower_res res=Def(TyParam, DefId(0:6)) | |
│ │ │ │ │ │ ├─0ms TRACE rustc_ast_lowering from remapping, res=Def(TyParam, DefId(0:6)) | |
│ │ │ │ │ │ ├─0ms TRACE rustc_ast_lowering res=Ok(Def(TyParam, DefId(0:6))) | |
│ │ │ │ │ ├─┘ | |
│ │ │ │ │ ├─0ms DEBUG rustc_ast_lowering::path path_span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:7:17: 7:18 (#0), lower_path_segment(segment: PathSegment { ident: T#0, id: NodeId(16), args: None }) | |
│ │ │ │ │ ├─0ms DEBUG rustc_ast_lowering::path lower_path_segment: ident=T#0 original-id=NodeId(16) new-id=HirId { owner: DefId(0:5), local_id: 3 } | |
│ │ │ │ │ ├─┐rustc_ast_lowering::lower_res res=Def(TyParam, DefId(0:6)) | |
│ │ │ │ │ │ ├─0ms TRACE rustc_ast_lowering from remapping, res=Def(TyParam, DefId(0:6)) | |
│ │ │ │ │ │ ├─0ms TRACE rustc_ast_lowering res=Ok(Def(TyParam, DefId(0:6))) | |
│ │ │ │ │ ├─┘ | |
│ │ │ │ ├─┘ | |
│ │ │ ├─┘ | |
│ │ │ ├─1ms DEBUG rustc_ast_lowering::path lower_path_segment: ident=MyTrait#0 original-id=NodeId(14) new-id=HirId { owner: DefId(0:5), local_id: 4 } | |
│ │ │ ├─┐rustc_ast_lowering::lower_res res=Def(Trait, DefId(0:3)) | |
│ │ │ │ ├─0ms TRACE rustc_ast_lowering from remapping, res=Def(Trait, DefId(0:3)) | |
│ │ │ │ ├─0ms TRACE rustc_ast_lowering res=Ok(Def(Trait, DefId(0:3))) | |
│ │ │ ├─┘ | |
│ │ ├─┘ | |
│ │ ├─┐rustc_ast_lowering::lower_ty t=Ty { id: NodeId(18), kind: Path(None, Path { span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:7:24: 7:25 (#0), segments: [PathSegment { ident: T#0, id: NodeId(19), args: None }], tokens: None }), span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:7:24: 7:25 (#0), tokens: None }, itctx=Disallowed(Type) | |
│ │ │ ├─┐rustc_ast_lowering::path::lower_qpath id=NodeId(18), qself=None, p=Path { span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:7:24: 7:25 (#0), segments: [PathSegment { ident: T#0, id: NodeId(19), args: None }], tokens: None }, param_mode=Explicit, itctx=Disallowed(Type) | |
│ │ │ │ ├─┐rustc_ast_lowering::lower_res res=Def(TyParam, DefId(0:6)) | |
│ │ │ │ │ ├─0ms TRACE rustc_ast_lowering from remapping, res=Def(TyParam, DefId(0:6)) | |
│ │ │ │ │ ├─0ms TRACE rustc_ast_lowering res=Ok(Def(TyParam, DefId(0:6))) | |
│ │ │ │ ├─┘ | |
│ │ │ │ ├─0ms DEBUG rustc_ast_lowering::path path_span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:7:24: 7:25 (#0), lower_path_segment(segment: PathSegment { ident: T#0, id: NodeId(19), args: None }) | |
│ │ │ │ ├─0ms DEBUG rustc_ast_lowering::path lower_path_segment: ident=T#0 original-id=NodeId(19) new-id=HirId { owner: DefId(0:5), local_id: 7 } | |
│ │ │ │ ├─┐rustc_ast_lowering::lower_res res=Def(TyParam, DefId(0:6)) | |
│ │ │ │ │ ├─0ms TRACE rustc_ast_lowering from remapping, res=Def(TyParam, DefId(0:6)) | |
│ │ │ │ │ ├─0ms TRACE rustc_ast_lowering res=Ok(Def(TyParam, DefId(0:6))) | |
│ │ │ │ ├─┘ | |
│ │ │ ├─┘ | |
│ │ ├─┘ | |
│ ├─┘ | |
│ ├─┐rustc_ast_lowering::index::index_hir item=Item(Item { ident: #0, def_id: DefId(0:5), kind: Impl(Impl { unsafety: Normal, polarity: "positive", defaultness: Final, defaultness_span: None, constness: NotConst, generics: Generics { params: [GenericParam { hir_id: HirId { owner: DefId(0:5), local_id: 1 }, name: Plain(T#0), span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:7:6: 7:7 (#0), pure_wrt_drop: false, kind: Type { default: None, synthetic: false }, colon_span: None }], predicates: [], has_where_clause: false, where_clause_span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:7:25: 7:25 (#0), span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:7:5: 7:8 (#0) }, of_trait: Some(TraitRef { path: Path { span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:7:9: 7:19 (#0), res: Def(Trait, DefId(0:3)), segments: [PathSegment { ident: MyTrait#0, hir_id: Some(HirId { owner: DefId(0:5), local_id: 4 }), res: Some(Def(Trait, DefId(0:3))), args: Some(GenericArgs { args: [Type(Ty { hir_id: HirId { owner: DefId(0:5), local_id: 2 }, kind: Path(Resolved(None, Path { span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:7:17: 7:18 (#0), res: Def(TyParam, DefId(0:6)), segments: [PathSegment { ident: T#0, hir_id: Some(HirId { owner: DefId(0:5), local_id: 3 }), res: Some(Def(TyParam, DefId(0:6))), args: None, infer_args: false }] })), span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:7:17: 7:18 (#0) })], bindings: [], parenthesized: false, span_ext: src/test/ui/impl-trait/v2/generics-assoc-type.rs:7:16: 7:19 (#0) }), infer_args: false }] }, hir_ref_id: HirId { owner: DefId(0:5), local_id: 5 } }), self_ty: Ty { hir_id: HirId { owner: DefId(0:5), local_id: 6 }, kind: Path(Resolved(None, Path { span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:7:24: 7:25 (#0), res: Def(TyParam, DefId(0:6)), segments: [PathSegment { ident: T#0, hir_id: Some(HirId { owner: DefId(0:5), local_id: 7 }), res: Some(Def(TyParam, DefId(0:6))), args: None, infer_args: false }] })), span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:7:24: 7:25 (#0) }, items: [] }), span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:7:1: 7:28 (#0), vis_span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:7:1: 7:1 (#0) }) | |
│ │ ├─┐rustc_ast_lowering::index::visit_item i=Item { ident: #0, def_id: DefId(0:5), kind: Impl(Impl { unsafety: Normal, polarity: "positive", defaultness: Final, defaultness_span: None, constness: NotConst, generics: Generics { params: [GenericParam { hir_id: HirId { owner: DefId(0:5), local_id: 1 }, name: Plain(T#0), span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:7:6: 7:7 (#0), pure_wrt_drop: false, kind: Type { default: None, synthetic: false }, colon_span: None }], predicates: [], has_where_clause: false, where_clause_span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:7:25: 7:25 (#0), span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:7:5: 7:8 (#0) }, of_trait: Some(TraitRef { path: Path { span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:7:9: 7:19 (#0), res: Def(Trait, DefId(0:3)), segments: [PathSegment { ident: MyTrait#0, hir_id: Some(HirId { owner: DefId(0:5), local_id: 4 }), res: Some(Def(Trait, DefId(0:3))), args: Some(GenericArgs { args: [Type(Ty { hir_id: HirId { owner: DefId(0:5), local_id: 2 }, kind: Path(Resolved(None, Path { span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:7:17: 7:18 (#0), res: Def(TyParam, DefId(0:6)), segments: [PathSegment { ident: T#0, hir_id: Some(HirId { owner: DefId(0:5), local_id: 3 }), res: Some(Def(TyParam, DefId(0:6))), args: None, infer_args: false }] })), span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:7:17: 7:18 (#0) })], bindings: [], parenthesized: false, span_ext: src/test/ui/impl-trait/v2/generics-assoc-type.rs:7:16: 7:19 (#0) }), infer_args: false }] }, hir_ref_id: HirId { owner: DefId(0:5), local_id: 5 } }), self_ty: Ty { hir_id: HirId { owner: DefId(0:5), local_id: 6 }, kind: Path(Resolved(None, Path { span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:7:24: 7:25 (#0), res: Def(TyParam, DefId(0:6)), segments: [PathSegment { ident: T#0, hir_id: Some(HirId { owner: DefId(0:5), local_id: 7 }), res: Some(Def(TyParam, DefId(0:6))), args: None, infer_args: false }] })), span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:7:24: 7:25 (#0) }, items: [] }), span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:7:1: 7:28 (#0), vis_span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:7:1: 7:1 (#0) } | |
│ │ │ ├─┐rustc_ast_lowering::index::insert span=src/test/ui/impl-trait/v2/generics-assoc-type.rs:7:6: 7:7 (#0), hir_id=HirId { owner: DefId(0:5), local_id: 1 }, node=GenericParam(GenericParam { hir_id: HirId { owner: DefId(0:5), local_id: 1 }, name: Plain(T#0), span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:7:6: 7:7 (#0), pure_wrt_drop: false, kind: Type { default: None, synthetic: false }, colon_span: None }) | |
│ │ │ ├─┘ | |
│ │ │ ├─┐rustc_ast_lowering::index::insert span=src/test/ui/impl-trait/v2/generics-assoc-type.rs:7:9: 7:19 (#0), hir_id=HirId { owner: DefId(0:5), local_id: 5 }, node=TraitRef(TraitRef { path: Path { span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:7:9: 7:19 (#0), res: Def(Trait, DefId(0:3)), segments: [PathSegment { ident: MyTrait#0, hir_id: Some(HirId { owner: DefId(0:5), local_id: 4 }), res: Some(Def(Trait, DefId(0:3))), args: Some(GenericArgs { args: [Type(Ty { hir_id: HirId { owner: DefId(0:5), local_id: 2 }, kind: Path(Resolved(None, Path { span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:7:17: 7:18 (#0), res: Def(TyParam, DefId(0:6)), segments: [PathSegment { ident: T#0, hir_id: Some(HirId { owner: DefId(0:5), local_id: 3 }), res: Some(Def(TyParam, DefId(0:6))), args: None, infer_args: false }] })), span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:7:17: 7:18 (#0) })], bindings: [], parenthesized: false, span_ext: src/test/ui/impl-trait/v2/generics-assoc-type.rs:7:16: 7:19 (#0) }), infer_args: false }] }, hir_ref_id: HirId { owner: DefId(0:5), local_id: 5 } }) | |
│ │ │ ├─┘ | |
│ │ │ ├─┐rustc_ast_lowering::index::insert span=src/test/ui/impl-trait/v2/generics-assoc-type.rs:7:9: 7:19 (#0), hir_id=HirId { owner: DefId(0:5), local_id: 4 }, node=PathSegment(PathSegment { ident: MyTrait#0, hir_id: Some(HirId { owner: DefId(0:5), local_id: 4 }), res: Some(Def(Trait, DefId(0:3))), args: Some(GenericArgs { args: [Type(Ty { hir_id: HirId { owner: DefId(0:5), local_id: 2 }, kind: Path(Resolved(None, Path { span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:7:17: 7:18 (#0), res: Def(TyParam, DefId(0:6)), segments: [PathSegment { ident: T#0, hir_id: Some(HirId { owner: DefId(0:5), local_id: 3 }), res: Some(Def(TyParam, DefId(0:6))), args: None, infer_args: false }] })), span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:7:17: 7:18 (#0) })], bindings: [], parenthesized: false, span_ext: src/test/ui/impl-trait/v2/generics-assoc-type.rs:7:16: 7:19 (#0) }), infer_args: false }) | |
│ │ │ ├─┘ | |
│ │ │ ├─┐rustc_ast_lowering::index::insert span=src/test/ui/impl-trait/v2/generics-assoc-type.rs:7:17: 7:18 (#0), hir_id=HirId { owner: DefId(0:5), local_id: 2 }, node=Ty(Ty { hir_id: HirId { owner: DefId(0:5), local_id: 2 }, kind: Path(Resolved(None, Path { span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:7:17: 7:18 (#0), res: Def(TyParam, DefId(0:6)), segments: [PathSegment { ident: T#0, hir_id: Some(HirId { owner: DefId(0:5), local_id: 3 }), res: Some(Def(TyParam, DefId(0:6))), args: None, infer_args: false }] })), span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:7:17: 7:18 (#0) }) | |
│ │ │ ├─┘ | |
│ │ │ ├─┐rustc_ast_lowering::index::insert span=src/test/ui/impl-trait/v2/generics-assoc-type.rs:7:17: 7:18 (#0), hir_id=HirId { owner: DefId(0:5), local_id: 3 }, node=PathSegment(PathSegment { ident: T#0, hir_id: Some(HirId { owner: DefId(0:5), local_id: 3 }), res: Some(Def(TyParam, DefId(0:6))), args: None, infer_args: false }) | |
│ │ │ ├─┘ | |
│ │ │ ├─┐rustc_ast_lowering::index::insert span=src/test/ui/impl-trait/v2/generics-assoc-type.rs:7:24: 7:25 (#0), hir_id=HirId { owner: DefId(0:5), local_id: 6 }, node=Ty(Ty { hir_id: HirId { owner: DefId(0:5), local_id: 6 }, kind: Path(Resolved(None, Path { span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:7:24: 7:25 (#0), res: Def(TyParam, DefId(0:6)), segments: [PathSegment { ident: T#0, hir_id: Some(HirId { owner: DefId(0:5), local_id: 7 }), res: Some(Def(TyParam, DefId(0:6))), args: None, infer_args: false }] })), span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:7:24: 7:25 (#0) }) | |
│ │ │ ├─┘ | |
│ │ │ ├─┐rustc_ast_lowering::index::insert span=src/test/ui/impl-trait/v2/generics-assoc-type.rs:7:24: 7:25 (#0), hir_id=HirId { owner: DefId(0:5), local_id: 7 }, node=PathSegment(PathSegment { ident: T#0, hir_id: Some(HirId { owner: DefId(0:5), local_id: 7 }), res: Some(Def(TyParam, DefId(0:6))), args: None, infer_args: false }) | |
│ │ │ ├─┘ | |
│ │ ├─┘ | |
│ ├─┘ | |
├─┘ | |
┘ | |
┐rustc_ast_lowering::item::lower_item item=Item { attrs: [], id: NodeId(20), span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:9:1: 13:2 (#0), vis: Visibility { kind: Inherited, span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:9:1: 9:1 (#0), tokens: None }, ident: ident_as_my_trait#0, kind: Fn(Fn { defaultness: Final, generics: Generics { params: [GenericParam { id: NodeId(37), ident: 'a#0, attrs: ThinVec(None), bounds: [], is_placeholder: false, kind: Lifetime, colon_span: None }, GenericParam { id: NodeId(38), ident: T#0, attrs: ThinVec(None), bounds: [Outlives(lifetime(39: 'a))], is_placeholder: false, kind: Type { default: None }, colon_span: Some(src/test/ui/impl-trait/v2/generics-assoc-type.rs:9:27: 9:28 (#0)) }], where_clause: WhereClause { has_where_token: false, predicates: [], span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:9:70: 9:70 (#0) }, span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:9:21: 9:32 (#0) }, sig: FnSig { header: FnHeader { unsafety: No, asyncness: No, constness: No, ext: None }, decl: FnDecl { inputs: [Param { attrs: ThinVec(None), ty: Ty { id: NodeId(23), kind: Rptr(Some(lifetime(24: 'a)), MutTy { ty: Ty { id: NodeId(25), kind: Path(None, Path { span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:9:41: 9:44 (#0), segments: [PathSegment { ident: i32#0, id: NodeId(26), args: None }], tokens: None }), span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:9:41: 9:44 (#0), tokens: None }, mutbl: Not }), span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:9:37: 9:44 (#0), tokens: None }, pat: Pat { id: NodeId(22), kind: Ident(ByValue(Not), _u#0, None), span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:9:33: 9:35 (#0), tokens: None }, id: NodeId(21), span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:9:33: 9:44 (#0), is_placeholder: false }, Param { attrs: ThinVec(None), ty: Ty { id: NodeId(29), kind: Path(None, Path { span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:9:49: 9:50 (#0), segments: [PathSegment { ident: T#0, id: NodeId(30), args: None }], tokens: None }), span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:9:49: 9:50 (#0), tokens: None }, pat: Pat { id: NodeId(28), kind: Ident(ByValue(Not), t#0, None), span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:9:46: 9:47 (#0), tokens: None }, id: NodeId(27), span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:9:46: 9:50 (#0), is_placeholder: false }], output: Ty(Ty { id: NodeId(31), kind: ImplTrait(NodeId(32), [Trait(PolyTraitRef { bound_generic_params: [], trait_ref: TraitRef { path: Path { span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:9:60: 9:70 (#0), segments: [PathSegment { ident: MyTrait#0, id: NodeId(33), args: Some(AngleBracketed(AngleBracketedArgs { span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:9:67: 9:70 (#0), args: [Arg(Type(Ty { id: NodeId(34), kind: Path(None, Path { span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:9:68: 9:69 (#0), segments: [PathSegment { ident: T#0, id: NodeId(35), args: None }], tokens: None }), span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:9:68: 9:69 (#0), tokens: None }))] })) }], tokens: None }, ref_id: NodeId(36) }, span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:9:60: 9:70 (#0) }, None)]), span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:9:55: 9:70 (#0), tokens: None }) }, span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:9:1: 9:70 (#0) }, body: Some(Block { stmts: [Stmt { id: NodeId(41), kind: Expr(Expr { id: NodeId(42), kind: Path(None, Path { span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:12:5: 12:6 (#0), segments: [PathSegment { ident: t#0, id: NodeId(43), args: None }], tokens: None }), span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:12:5: 12:6 (#0), attrs: ThinVec(None), tokens: None }), span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:12:5: 12:6 (#0) }], id: NodeId(40), rules: Default, span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:11:1: 13:2 (#0), tokens: None, could_be_bare_literal: false }) }), tokens: None } | |
├─┐rustc_ast_lowering::with_hir_id_owner owner=NodeId(20) | |
│ ├─┐rustc_ast_lowering::path::lower_qpath id=NodeId(42), qself=None, p=Path { span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:12:5: 12:6 (#0), segments: [PathSegment { ident: t#0, id: NodeId(43), args: None }], tokens: None }, param_mode=Optional, itctx=Disallowed(Path) | |
│ │ ├─┐rustc_ast_lowering::lower_res res=Local(NodeId(28)) | |
│ │ │ ├─0ms TRACE rustc_ast_lowering from remapping, res=Local(NodeId(28)) | |
│ │ │ ├─0ms TRACE rustc_ast_lowering res=Ok(Local(HirId { owner: DefId(0:7), local_id: 4 })) | |
│ │ ├─┘ | |
│ │ ├─0ms DEBUG rustc_ast_lowering::path path_span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:12:5: 12:6 (#0), lower_path_segment(segment: PathSegment { ident: t#0, id: NodeId(43), args: None }) | |
│ │ ├─0ms DEBUG rustc_ast_lowering::path lower_path_segment: ident=t#0 original-id=NodeId(43) new-id=HirId { owner: DefId(0:7), local_id: 5 } | |
│ │ ├─┐rustc_ast_lowering::lower_res res=Local(NodeId(28)) | |
│ │ │ ├─0ms TRACE rustc_ast_lowering from remapping, res=Local(NodeId(28)) | |
│ │ │ ├─0ms TRACE rustc_ast_lowering res=Ok(Local(HirId { owner: DefId(0:7), local_id: 4 })) | |
│ │ ├─┘ | |
│ ├─┘ | |
│ ├─┐rustc_ast_lowering::add_implicit_generics generics=Generics { params: [GenericParam { id: NodeId(37), ident: 'a#0, attrs: ThinVec(None), bounds: [], is_placeholder: false, kind: Lifetime, colon_span: None }, GenericParam { id: NodeId(38), ident: T#0, attrs: ThinVec(None), bounds: [Outlives(lifetime(39: 'a))], is_placeholder: false, kind: Type { default: None }, colon_span: Some(src/test/ui/impl-trait/v2/generics-assoc-type.rs:9:27: 9:28 (#0)) }], where_clause: WhereClause { has_where_token: false, predicates: [], span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:9:70: 9:70 (#0) }, span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:9:21: 9:32 (#0) }, parent_node_id=NodeId(20) | |
│ │ ├─┐rustc_ast_lowering::lower_param_bound tpb=Outlives(lifetime(39: 'a)), itctx=Universal([], [], DefId(0:7)) | |
│ │ │ ├─┐rustc_ast_lowering::new_named_lifetime_with_res id=NodeId(39), span=src/test/ui/impl-trait/v2/generics-assoc-type.rs:9:29: 9:31 (#0), ident='a#0, res=Param { param: DefId(0:8), binder: NodeId(20) } | |
│ │ │ │ ├─0ms DEBUG rustc_ast_lowering self.captured_lifetimes=None | |
│ │ │ │ ├─0ms DEBUG rustc_ast_lowering self.captured_lifetimes=None | |
│ │ │ ├─┘ | |
│ │ ├─┘ | |
│ │ ├─┐rustc_ast_lowering::lower_generic_param param=GenericParam { id: NodeId(37), ident: 'a#0, attrs: ThinVec(None), bounds: [], is_placeholder: false, kind: Lifetime, colon_span: None } | |
│ │ ├─┘ | |
│ │ ├─┐rustc_ast_lowering::lower_generic_param param=GenericParam { id: NodeId(38), ident: T#0, attrs: ThinVec(None), bounds: [Outlives(lifetime(39: 'a))], is_placeholder: false, kind: Type { default: None }, colon_span: Some(src/test/ui/impl-trait/v2/generics-assoc-type.rs:9:27: 9:28 (#0)) } | |
│ │ ├─┘ | |
│ │ ├─0ms DEBUG rustc_ast_lowering lower_fn_decl(fn_decl: FnDecl { inputs: [Param { attrs: ThinVec(None), ty: Ty { id: NodeId(23), kind: Rptr(Some(lifetime(24: 'a)), MutTy { ty: Ty { id: NodeId(25), kind: Path(None, Path { span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:9:41: 9:44 (#0), segments: [PathSegment { ident: i32#0, id: NodeId(26), args: None }], tokens: None }), span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:9:41: 9:44 (#0), tokens: None }, mutbl: Not }), span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:9:37: 9:44 (#0), tokens: None }, pat: Pat { id: NodeId(22), kind: Ident(ByValue(Not), _u#0, None), span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:9:33: 9:35 (#0), tokens: None }, id: NodeId(21), span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:9:33: 9:44 (#0), is_placeholder: false }, Param { attrs: ThinVec(None), ty: Ty { id: NodeId(29), kind: Path(None, Path { span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:9:49: 9:50 (#0), segments: [PathSegment { ident: T#0, id: NodeId(30), args: None }], tokens: None }), span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:9:49: 9:50 (#0), tokens: None }, pat: Pat { id: NodeId(28), kind: Ident(ByValue(Not), t#0, None), span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:9:46: 9:47 (#0), tokens: None }, id: NodeId(27), span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:9:46: 9:50 (#0), is_placeholder: false }], output: Ty(Ty { id: NodeId(31), kind: ImplTrait(NodeId(32), [Trait(PolyTraitRef { bound_generic_params: [], trait_ref: TraitRef { path: Path { span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:9:60: 9:70 (#0), segments: [PathSegment { ident: MyTrait#0, id: NodeId(33), args: Some(AngleBracketed(AngleBracketedArgs { span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:9:67: 9:70 (#0), args: [Arg(Type(Ty { id: NodeId(34), kind: Path(None, Path { span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:9:68: 9:69 (#0), segments: [PathSegment { ident: T#0, id: NodeId(35), args: None }], tokens: None }), span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:9:68: 9:69 (#0), tokens: None }))] })) }], tokens: None }, ref_id: NodeId(36) }, span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:9:60: 9:70 (#0) }, None)]), span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:9:55: 9:70 (#0), tokens: None }) }, in_band_ty_params: Some((NodeId(20), [], [])), kind: Fn, make_ret_async: None) | |
│ │ ├─┐rustc_ast_lowering::new_named_lifetime_with_res id=NodeId(24), span=src/test/ui/impl-trait/v2/generics-assoc-type.rs:9:38: 9:40 (#0), ident='a#0, res=Param { param: DefId(0:8), binder: NodeId(20) } | |
│ │ │ ├─0ms DEBUG rustc_ast_lowering self.captured_lifetimes=None | |
│ │ │ ├─0ms DEBUG rustc_ast_lowering self.captured_lifetimes=None | |
│ │ ├─┘ | |
│ │ ├─┐rustc_ast_lowering::lower_ty t=Ty { id: NodeId(25), kind: Path(None, Path { span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:9:41: 9:44 (#0), segments: [PathSegment { ident: i32#0, id: NodeId(26), args: None }], tokens: None }), span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:9:41: 9:44 (#0), tokens: None }, itctx=Universal([], [], DefId(0:7)) | |
│ │ │ ├─┐rustc_ast_lowering::path::lower_qpath id=NodeId(25), qself=None, p=Path { span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:9:41: 9:44 (#0), segments: [PathSegment { ident: i32#0, id: NodeId(26), args: None }], tokens: None }, param_mode=Explicit, itctx=Universal([], [], DefId(0:7)) | |
│ │ │ │ ├─┐rustc_ast_lowering::lower_res res=PrimTy(Int(I32)) | |
│ │ │ │ │ ├─0ms TRACE rustc_ast_lowering from remapping, res=PrimTy(Int(I32)) | |
│ │ │ │ │ ├─0ms TRACE rustc_ast_lowering res=Ok(PrimTy(Int(I32))) | |
│ │ │ │ ├─┘ | |
│ │ │ │ ├─0ms DEBUG rustc_ast_lowering::path path_span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:9:41: 9:44 (#0), lower_path_segment(segment: PathSegment { ident: i32#0, id: NodeId(26), args: None }) | |
│ │ │ │ ├─0ms DEBUG rustc_ast_lowering::path lower_path_segment: ident=i32#0 original-id=NodeId(26) new-id=HirId { owner: DefId(0:7), local_id: 15 } | |
│ │ │ │ ├─┐rustc_ast_lowering::lower_res res=Err | |
│ │ │ │ │ ├─0ms TRACE rustc_ast_lowering from remapping, res=Err | |
│ │ │ │ │ ├─0ms TRACE rustc_ast_lowering res=Ok(Err) | |
│ │ │ │ ├─┘ | |
│ │ │ ├─┘ | |
│ │ ├─┘ | |
│ │ ├─┐rustc_ast_lowering::path::lower_qpath id=NodeId(29), qself=None, p=Path { span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:9:49: 9:50 (#0), segments: [PathSegment { ident: T#0, id: NodeId(30), args: None }], tokens: None }, param_mode=Explicit, itctx=Universal([], [], DefId(0:7)) | |
│ │ │ ├─┐rustc_ast_lowering::lower_res res=Def(TyParam, DefId(0:9)) | |
│ │ │ │ ├─0ms TRACE rustc_ast_lowering from remapping, res=Def(TyParam, DefId(0:9)) | |
│ │ │ │ ├─0ms TRACE rustc_ast_lowering res=Ok(Def(TyParam, DefId(0:9))) | |
│ │ │ ├─┘ | |
│ │ │ ├─0ms DEBUG rustc_ast_lowering::path path_span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:9:49: 9:50 (#0), lower_path_segment(segment: PathSegment { ident: T#0, id: NodeId(30), args: None }) | |
│ │ │ ├─0ms DEBUG rustc_ast_lowering::path lower_path_segment: ident=T#0 original-id=NodeId(30) new-id=HirId { owner: DefId(0:7), local_id: 18 } | |
│ │ │ ├─┐rustc_ast_lowering::lower_res res=Def(TyParam, DefId(0:9)) | |
│ │ │ │ ├─0ms TRACE rustc_ast_lowering from remapping, res=Def(TyParam, DefId(0:9)) | |
│ │ │ │ ├─0ms TRACE rustc_ast_lowering res=Ok(Def(TyParam, DefId(0:9))) | |
│ │ │ ├─┘ | |
│ │ ├─┘ | |
│ │ ├─┐rustc_ast_lowering::lower_ty t=Ty { id: NodeId(31), kind: ImplTrait(NodeId(32), [Trait(PolyTraitRef { bound_generic_params: [], trait_ref: TraitRef { path: Path { span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:9:60: 9:70 (#0), segments: [PathSegment { ident: MyTrait#0, id: NodeId(33), args: Some(AngleBracketed(AngleBracketedArgs { span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:9:67: 9:70 (#0), args: [Arg(Type(Ty { id: NodeId(34), kind: Path(None, Path { span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:9:68: 9:69 (#0), segments: [PathSegment { ident: T#0, id: NodeId(35), args: None }], tokens: None }), span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:9:68: 9:69 (#0), tokens: None }))] })) }], tokens: None }, ref_id: NodeId(36) }, span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:9:60: 9:70 (#0) }, None)]), span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:9:55: 9:70 (#0), tokens: None }, itctx=ReturnPositionOpaqueTy { origin: FnReturn(DefId(0:7)), generics: Generics { params: [GenericParam { id: NodeId(37), ident: 'a#0, attrs: ThinVec(None), bounds: [], is_placeholder: false, kind: Lifetime, colon_span: None }, GenericParam { id: NodeId(38), ident: T#0, attrs: ThinVec(None), bounds: [Outlives(lifetime(39: 'a))], is_placeholder: false, kind: Type { default: None }, colon_span: Some(src/test/ui/impl-trait/v2/generics-assoc-type.rs:9:27: 9:28 (#0)) }], where_clause: WhereClause { has_where_token: false, predicates: [], span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:9:70: 9:70 (#0) }, span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:9:21: 9:32 (#0) } } | |
│ │ │ ├─┐rustc_ast_lowering::lower_opaque_impl_trait_v2 span=src/test/ui/impl-trait/v2/generics-assoc-type.rs:9:55: 9:70 (#0), origin=FnReturn(DefId(0:7)), opaque_ty_node_id=NodeId(32), ast_generics=Generics { params: [GenericParam { id: NodeId(37), ident: 'a#0, attrs: ThinVec(None), bounds: [], is_placeholder: false, kind: Lifetime, colon_span: None }, GenericParam { id: NodeId(38), ident: T#0, attrs: ThinVec(None), bounds: [Outlives(lifetime(39: 'a))], is_placeholder: false, kind: Type { default: None }, colon_span: Some(src/test/ui/impl-trait/v2/generics-assoc-type.rs:9:27: 9:28 (#0)) }], where_clause: WhereClause { has_where_token: false, predicates: [], span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:9:70: 9:70 (#0) }, span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:9:21: 9:32 (#0) } | |
│ │ │ │ ├─┐rustc_ast_lowering::with_hir_id_owner owner=NodeId(32) | |
│ │ │ │ │ ├─┐rustc_ast_lowering::with_fresh_generics_def_id_map | |
│ │ │ │ │ │ ├─┐rustc_ast_lowering::lower_param_bound tpb=Trait(PolyTraitRef { bound_generic_params: [], trait_ref: TraitRef { path: Path { span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:9:60: 9:70 (#0), segments: [PathSegment { ident: MyTrait#0, id: NodeId(33), args: Some(AngleBracketed(AngleBracketedArgs { span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:9:67: 9:70 (#0), args: [Arg(Type(Ty { id: NodeId(34), kind: Path(None, Path { span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:9:68: 9:69 (#0), segments: [PathSegment { ident: T#0, id: NodeId(35), args: None }], tokens: None }), span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:9:68: 9:69 (#0), tokens: None }))] })) }], tokens: None }, ref_id: NodeId(36) }, span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:9:60: 9:70 (#0) }, None), itctx=ReturnPositionOpaqueTy { origin: FnReturn(DefId(0:7)), generics: Generics { params: [GenericParam { id: NodeId(37), ident: 'a#0, attrs: ThinVec(None), bounds: [], is_placeholder: false, kind: Lifetime, colon_span: None }, GenericParam { id: NodeId(38), ident: T#0, attrs: ThinVec(None), bounds: [Outlives(lifetime(39: 'a))], is_placeholder: false, kind: Type { default: None }, colon_span: Some(src/test/ui/impl-trait/v2/generics-assoc-type.rs:9:27: 9:28 (#0)) }], where_clause: WhereClause { has_where_token: false, predicates: [], span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:9:70: 9:70 (#0) }, span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:9:21: 9:32 (#0) } } | |
│ │ │ │ │ │ │ ├─┐rustc_ast_lowering::lower_poly_trait_ref p=PolyTraitRef { bound_generic_params: [], trait_ref: TraitRef { path: Path { span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:9:60: 9:70 (#0), segments: [PathSegment { ident: MyTrait#0, id: NodeId(33), args: Some(AngleBracketed(AngleBracketedArgs { span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:9:67: 9:70 (#0), args: [Arg(Type(Ty { id: NodeId(34), kind: Path(None, Path { span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:9:68: 9:69 (#0), segments: [PathSegment { ident: T#0, id: NodeId(35), args: None }], tokens: None }), span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:9:68: 9:69 (#0), tokens: None }))] })) }], tokens: None }, ref_id: NodeId(36) }, span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:9:60: 9:70 (#0) }, itctx=ReturnPositionOpaqueTy { origin: FnReturn(DefId(0:7)), generics: Generics { params: [GenericParam { id: NodeId(37), ident: 'a#0, attrs: ThinVec(None), bounds: [], is_placeholder: false, kind: Lifetime, colon_span: None }, GenericParam { id: NodeId(38), ident: T#0, attrs: ThinVec(None), bounds: [Outlives(lifetime(39: 'a))], is_placeholder: false, kind: Type { default: None }, colon_span: Some(src/test/ui/impl-trait/v2/generics-assoc-type.rs:9:27: 9:28 (#0)) }], where_clause: WhereClause { has_where_token: false, predicates: [], span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:9:70: 9:70 (#0) }, span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:9:21: 9:32 (#0) } } | |
│ │ │ │ │ │ │ │ ├─┐rustc_ast_lowering::with_lifetime_binder binder=NodeId(36) | |
│ │ │ │ │ │ │ │ │ ├─┐rustc_ast_lowering::path::lower_qpath id=NodeId(36), qself=None, p=Path { span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:9:60: 9:70 (#0), segments: [PathSegment { ident: MyTrait#0, id: NodeId(33), args: Some(AngleBracketed(AngleBracketedArgs { span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:9:67: 9:70 (#0), args: [Arg(Type(Ty { id: NodeId(34), kind: Path(None, Path { span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:9:68: 9:69 (#0), segments: [PathSegment { ident: T#0, id: NodeId(35), args: None }], tokens: None }), span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:9:68: 9:69 (#0), tokens: None }))] })) }], tokens: None }, param_mode=Explicit, itctx=ReturnPositionOpaqueTy { origin: FnReturn(DefId(0:7)), generics: Generics { params: [GenericParam { id: NodeId(37), ident: 'a#0, attrs: ThinVec(None), bounds: [], is_placeholder: false, kind: Lifetime, colon_span: None }, GenericParam { id: NodeId(38), ident: T#0, attrs: ThinVec(None), bounds: [Outlives(lifetime(39: 'a))], is_placeholder: false, kind: Type { default: None }, colon_span: Some(src/test/ui/impl-trait/v2/generics-assoc-type.rs:9:27: 9:28 (#0)) }], where_clause: WhereClause { has_where_token: false, predicates: [], span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:9:70: 9:70 (#0) }, span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:9:21: 9:32 (#0) } } | |
│ │ │ │ │ │ │ │ │ │ ├─┐rustc_ast_lowering::lower_res res=Def(Trait, DefId(0:3)) | |
│ │ │ │ │ │ │ │ │ │ │ ├─0ms DEBUG rustc_ast_lowering::def_id_remapper def_id_remapper: no remapping for `DefId(0:3)` found in map | |
│ │ │ │ │ │ │ │ │ │ │ ├─0ms TRACE rustc_ast_lowering from remapping, res=Def(Trait, DefId(0:3)) | |
│ │ │ │ │ │ │ │ │ │ │ ├─0ms TRACE rustc_ast_lowering res=Ok(Def(Trait, DefId(0:3))) | |
│ │ │ │ │ │ │ │ │ │ ├─┘ | |
│ │ │ │ │ │ │ │ │ │ ├─0ms DEBUG rustc_ast_lowering::path path_span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:9:60: 9:70 (#0), lower_path_segment(segment: PathSegment { ident: MyTrait#0, id: NodeId(33), args: Some(AngleBracketed(AngleBracketedArgs { span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:9:67: 9:70 (#0), args: [Arg(Type(Ty { id: NodeId(34), kind: Path(None, Path { span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:9:68: 9:69 (#0), segments: [PathSegment { ident: T#0, id: NodeId(35), args: None }], tokens: None }), span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:9:68: 9:69 (#0), tokens: None }))] })) }) | |
│ │ │ │ │ │ │ │ │ │ ├─┐rustc_ast_lowering::lower_generic_arg arg=Type(Ty { id: NodeId(34), kind: Path(None, Path { span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:9:68: 9:69 (#0), segments: [PathSegment { ident: T#0, id: NodeId(35), args: None }], tokens: None }), span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:9:68: 9:69 (#0), tokens: None }), itctx=ReturnPositionOpaqueTy { origin: FnReturn(DefId(0:7)), generics: Generics { params: [GenericParam { id: NodeId(37), ident: 'a#0, attrs: ThinVec(None), bounds: [], is_placeholder: false, kind: Lifetime, colon_span: None }, GenericParam { id: NodeId(38), ident: T#0, attrs: ThinVec(None), bounds: [Outlives(lifetime(39: 'a))], is_placeholder: false, kind: Type { default: None }, colon_span: Some(src/test/ui/impl-trait/v2/generics-assoc-type.rs:9:27: 9:28 (#0)) }], where_clause: WhereClause { has_where_token: false, predicates: [], span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:9:70: 9:70 (#0) }, span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:9:21: 9:32 (#0) } } | |
│ │ │ │ │ │ │ │ │ │ │ ├─┐rustc_ast_lowering::path::lower_qpath id=NodeId(34), qself=None, p=Path { span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:9:68: 9:69 (#0), segments: [PathSegment { ident: T#0, id: NodeId(35), args: None }], tokens: None }, param_mode=Explicit, itctx=ReturnPositionOpaqueTy { origin: FnReturn(DefId(0:7)), generics: Generics { params: [GenericParam { id: NodeId(37), ident: 'a#0, attrs: ThinVec(None), bounds: [], is_placeholder: false, kind: Lifetime, colon_span: None }, GenericParam { id: NodeId(38), ident: T#0, attrs: ThinVec(None), bounds: [Outlives(lifetime(39: 'a))], is_placeholder: false, kind: Type { default: None }, colon_span: Some(src/test/ui/impl-trait/v2/generics-assoc-type.rs:9:27: 9:28 (#0)) }], where_clause: WhereClause { has_where_token: false, predicates: [], span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:9:70: 9:70 (#0) }, span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:9:21: 9:32 (#0) } } | |
│ │ │ │ │ │ │ │ │ │ │ │ ├─┐rustc_ast_lowering::lower_res res=Def(TyParam, DefId(0:9)) | |
│ │ │ │ │ │ │ │ │ │ │ │ │ ├─0ms DEBUG rustc_ast_lowering::def_id_remapper def_id_remapper: no remapping for `DefId(0:9)` found in map | |
│ │ │ │ │ │ │ │ │ │ │ │ │ ├─0ms TRACE rustc_ast_lowering from remapping, res=Def(TyParam, DefId(0:9)) | |
│ │ │ │ │ │ │ │ │ │ │ │ │ ├─0ms TRACE rustc_ast_lowering res=Ok(Def(TyParam, DefId(0:9))) | |
│ │ │ │ │ │ │ │ │ │ │ │ ├─┘ | |
│ │ │ │ │ │ │ │ │ │ │ │ ├─0ms DEBUG rustc_ast_lowering::path path_span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:9:68: 9:69 (#0), lower_path_segment(segment: PathSegment { ident: T#0, id: NodeId(35), args: None }) | |
│ │ │ │ │ │ │ │ │ │ │ │ ├─0ms DEBUG rustc_ast_lowering::path lower_path_segment: ident=T#0 original-id=NodeId(35) new-id=HirId { owner: DefId(0:10), local_id: 2 } | |
│ │ │ │ │ │ │ │ │ │ │ │ ├─┐rustc_ast_lowering::lower_res res=Def(TyParam, DefId(0:9)) | |
│ │ │ │ │ │ │ │ │ │ │ │ │ ├─0ms DEBUG rustc_ast_lowering::def_id_remapper def_id_remapper: no remapping for `DefId(0:9)` found in map | |
│ │ │ │ │ │ │ │ │ │ │ │ │ ├─0ms TRACE rustc_ast_lowering from remapping, res=Def(TyParam, DefId(0:9)) | |
│ │ │ │ │ │ │ │ │ │ │ │ │ ├─0ms TRACE rustc_ast_lowering res=Ok(Def(TyParam, DefId(0:9))) | |
│ │ │ │ │ │ │ │ │ │ │ │ ├─┘ | |
│ │ │ │ │ │ │ │ │ │ │ ├─┘ | |
│ │ │ │ │ │ │ │ │ │ ├─┘ | |
│ │ │ │ │ │ │ │ │ │ ├─1ms DEBUG rustc_ast_lowering::path lower_path_segment: ident=MyTrait#0 original-id=NodeId(33) new-id=HirId { owner: DefId(0:10), local_id: 3 } | |
│ │ │ │ │ │ │ │ │ │ ├─┐rustc_ast_lowering::lower_res res=Def(Trait, DefId(0:3)) | |
│ │ │ │ │ │ │ │ │ │ │ ├─0ms DEBUG rustc_ast_lowering::def_id_remapper def_id_remapper: no remapping for `DefId(0:3)` found in map | |
│ │ │ │ │ │ │ │ │ │ │ ├─0ms TRACE rustc_ast_lowering from remapping, res=Def(Trait, DefId(0:3)) | |
│ │ │ │ │ │ │ │ │ │ │ ├─0ms TRACE rustc_ast_lowering res=Ok(Def(Trait, DefId(0:3))) | |
│ │ │ │ │ │ │ │ │ │ ├─┘ | |
│ │ │ │ │ │ │ │ │ ├─┘ | |
│ │ │ │ │ │ │ │ ├─┘ | |
│ │ │ │ │ │ │ ├─┘ | |
│ │ │ │ │ │ ├─┘ | |
│ │ │ │ │ │ ├─2ms DEBUG rustc_ast_lowering collected_lifetimes={} | |
│ │ │ │ │ │ ├─2ms DEBUG rustc_ast_lowering lifetime_params=[] | |
│ │ │ │ │ │ ├─┐rustc_ast_lowering::remap_type_and_const_params parent_def_id=DefId(0:10), params=[GenericParam { id: NodeId(37), ident: 'a#0, attrs: ThinVec(None), bounds: [], is_placeholder: false, kind: Lifetime, colon_span: None }, GenericParam { id: NodeId(38), ident: T#0, attrs: ThinVec(None), bounds: [Outlives(lifetime(39: 'a))], is_placeholder: false, kind: Type { default: None }, colon_span: Some(src/test/ui/impl-trait/v2/generics-assoc-type.rs:9:27: 9:28 (#0)) }] | |
│ │ │ │ │ │ │ ├─0ms DEBUG rustc_ast_lowering::def_id_remapper def_id_remapper: no remapping for `DefId(0:9)` found in map | |
│ │ │ │ │ │ │ ├─┐rustc_ast_lowering::def_id_remapper::add_remapping from=DefId(0:9), to=DefId(0:12) | |
│ │ │ │ │ │ │ ├─┘ | |
│ │ │ │ │ │ │ ├─0ms TRACE rustc_ast_lowering recording remapping, orig_def_id=DefId(0:9), new_def_id=DefId(0:12) | |
│ │ │ │ │ │ │ ├─0ms DEBUG rustc_ast_lowering::def_id_remapper def_id_remapper: remapping from `DefId(0:9)` to `DefId(0:12)` | |
│ │ │ │ │ │ ├─┘ | |
│ │ │ │ │ │ ├─2ms DEBUG rustc_ast_lowering type_const_params=[GenericParam { hir_id: HirId { owner: DefId(0:10), local_id: 5 }, name: Plain(MY-T#0), span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:9:26: 9:27 (#0), pure_wrt_drop: false, kind: Type { default: None, synthetic: false }, colon_span: Some(src/test/ui/impl-trait/v2/generics-assoc-type.rs:9:27: 9:28 (#0)) }] | |
│ │ │ │ │ │ ├─┐rustc_ast_lowering::with_in_scope_lifetime_bounds | |
│ │ │ │ │ │ │ ├─0ms DEBUG rustc_ast_lowering lctx.in_scope_lifetime_bounds=Some([]) | |
│ │ │ │ │ │ │ ├─┐rustc_ast_lowering::lower_param_bound tpb=Outlives(lifetime(39: 'a)), itctx=ReturnPositionOpaqueTy { origin: FnReturn(DefId(0:7)), generics: Generics { params: [GenericParam { id: NodeId(37), ident: 'a#0, attrs: ThinVec(None), bounds: [], is_placeholder: false, kind: Lifetime, colon_span: None }, GenericParam { id: NodeId(38), ident: T#0, attrs: ThinVec(None), bounds: [Outlives(lifetime(39: 'a))], is_placeholder: false, kind: Type { default: None }, colon_span: Some(src/test/ui/impl-trait/v2/generics-assoc-type.rs:9:27: 9:28 (#0)) }], where_clause: WhereClause { has_where_token: false, predicates: [], span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:9:70: 9:70 (#0) }, span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:9:21: 9:32 (#0) } } | |
│ │ │ │ │ │ │ │ ├─┐rustc_ast_lowering::new_named_lifetime_with_res id=NodeId(39), span=src/test/ui/impl-trait/v2/generics-assoc-type.rs:9:29: 9:31 (#0), ident='a#0, res=Param { param: DefId(0:8), binder: NodeId(20) } | |
│ │ │ │ │ │ │ │ │ ├─0ms DEBUG rustc_ast_lowering self.captured_lifetimes=None | |
│ │ │ │ │ │ │ │ │ ├─0ms DEBUG rustc_ast_lowering self.captured_lifetimes=None | |
│ │ │ │ │ │ │ │ ├─┘ | |
│ │ │ │ │ │ │ ├─┘ | |
│ │ │ │ │ │ │ ├─0ms DEBUG rustc_ast_lowering::def_id_remapper def_id_remapper: remapping from `DefId(0:9)` to `DefId(0:12)` | |
│ │ │ │ │ │ │ ├─0ms DEBUG rustc_ast_lowering predicates=[BoundPredicate(WhereBoundPredicate { span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:9:27: 9:31 (#0), origin: GenericParam, bound_generic_params: [], bounded_ty: Ty { hir_id: HirId { owner: DefId(0:10), local_id: 7 }, kind: Path(Resolved(None, Path { span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:9:26: 9:27 (#0), res: Def(TyParam, DefId(0:12)), segments: [PathSegment { ident: T#0, hir_id: None, res: None, args: None, infer_args: true }] })), span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:9:26: 9:27 (#0) }, bounds: [Outlives(lifetime(HirId { owner: DefId(0:10), local_id: 6 }: 'static))] })] | |
│ │ │ │ │ │ │ ├─0ms DEBUG rustc_ast_lowering predicates=[BoundPredicate(WhereBoundPredicate { span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:9:27: 9:31 (#0), origin: GenericParam, bound_generic_params: [], bounded_ty: Ty { hir_id: HirId { owner: DefId(0:10), local_id: 7 }, kind: Path(Resolved(None, Path { span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:9:26: 9:27 (#0), res: Def(TyParam, DefId(0:12)), segments: [PathSegment { ident: T#0, hir_id: None, res: None, args: None, infer_args: true }] })), span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:9:26: 9:27 (#0) }, bounds: [Outlives(lifetime(HirId { owner: DefId(0:10), local_id: 6 }: 'static))] })] | |
│ │ │ │ │ │ ├─┘ | |
│ │ │ │ │ │ ├─3ms TRACE rustc_ast_lowering opaque_ty_def_id=DefId(0:10) | |
│ │ │ │ │ │ ├─3ms TRACE rustc_ast_lowering registering opaque type with id DefId(0:10) | |
│ │ │ │ │ ├─┘ | |
│ │ │ │ │ ├─┐rustc_ast_lowering::index::index_hir item=Item(Item { ident: #0, def_id: DefId(0:10), kind: OpaqueTy(OpaqueTy { generics: Generics { params: [GenericParam { hir_id: HirId { owner: DefId(0:10), local_id: 5 }, name: Plain(MY-T#0), span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:9:26: 9:27 (#0), pure_wrt_drop: false, kind: Type { default: None, synthetic: false }, colon_span: Some(src/test/ui/impl-trait/v2/generics-assoc-type.rs:9:27: 9:28 (#0)) }], predicates: [BoundPredicate(WhereBoundPredicate { span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:9:27: 9:31 (#0), origin: GenericParam, bound_generic_params: [], bounded_ty: Ty { hir_id: HirId { owner: DefId(0:10), local_id: 7 }, kind: Path(Resolved(None, Path { span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:9:26: 9:27 (#0), res: Def(TyParam, DefId(0:12)), segments: [PathSegment { ident: T#0, hir_id: None, res: None, args: None, infer_args: true }] })), span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:9:26: 9:27 (#0) }, bounds: [Outlives(lifetime(HirId { owner: DefId(0:10), local_id: 6 }: 'static))] })], has_where_clause: true, where_clause_span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:9:55: 9:70 (#0), span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:9:55: 9:70 (#0) }, bounds: [Trait(PolyTraitRef { bound_generic_params: [], trait_ref: TraitRef { path: Path { span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:9:60: 9:70 (#0), res: Def(Trait, DefId(0:3)), segments: [PathSegment { ident: MyTrait#0, hir_id: Some(HirId { owner: DefId(0:10), local_id: 3 }), res: Some(Def(Trait, DefId(0:3))), args: Some(GenericArgs { args: [Type(Ty { hir_id: HirId { owner: DefId(0:10), local_id: 1 }, kind: Path(Resolved(None, Path { span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:9:68: 9:69 (#0), res: Def(TyParam, DefId(0:9)), segments: [PathSegment { ident: T#0, hir_id: Some(HirId { owner: DefId(0:10), local_id: 2 }), res: Some(Def(TyParam, DefId(0:9))), args: None, infer_args: false }] })), span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:9:68: 9:69 (#0) })], bindings: [], parenthesized: false, span_ext: src/test/ui/impl-trait/v2/generics-assoc-type.rs:9:67: 9:70 (#0) }), infer_args: false }] }, hir_ref_id: HirId { owner: DefId(0:10), local_id: 4 } }, span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:9:60: 9:70 (#0) }, None)], origin: FnReturn(DefId(0:7)) }), span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:9:55: 9:70 (#4), vis_span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:9:55: 9:55 (#0) }) | |
│ │ │ │ │ │ ├─┐rustc_ast_lowering::index::visit_item i=Item { ident: #0, def_id: DefId(0:10), kind: OpaqueTy(OpaqueTy { generics: Generics { params: [GenericParam { hir_id: HirId { owner: DefId(0:10), local_id: 5 }, name: Plain(MY-T#0), span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:9:26: 9:27 (#0), pure_wrt_drop: false, kind: Type { default: None, synthetic: false }, colon_span: Some(src/test/ui/impl-trait/v2/generics-assoc-type.rs:9:27: 9:28 (#0)) }], predicates: [BoundPredicate(WhereBoundPredicate { span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:9:27: 9:31 (#0), origin: GenericParam, bound_generic_params: [], bounded_ty: Ty { hir_id: HirId { owner: DefId(0:10), local_id: 7 }, kind: Path(Resolved(None, Path { span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:9:26: 9:27 (#0), res: Def(TyParam, DefId(0:12)), segments: [PathSegment { ident: T#0, hir_id: None, res: None, args: None, infer_args: true }] })), span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:9:26: 9:27 (#0) }, bounds: [Outlives(lifetime(HirId { owner: DefId(0:10), local_id: 6 }: 'static))] })], has_where_clause: true, where_clause_span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:9:55: 9:70 (#0), span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:9:55: 9:70 (#0) }, bounds: [Trait(PolyTraitRef { bound_generic_params: [], trait_ref: TraitRef { path: Path { span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:9:60: 9:70 (#0), res: Def(Trait, DefId(0:3)), segments: [PathSegment { ident: MyTrait#0, hir_id: Some(HirId { owner: DefId(0:10), local_id: 3 }), res: Some(Def(Trait, DefId(0:3))), args: Some(GenericArgs { args: [Type(Ty { hir_id: HirId { owner: DefId(0:10), local_id: 1 }, kind: Path(Resolved(None, Path { span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:9:68: 9:69 (#0), res: Def(TyParam, DefId(0:9)), segments: [PathSegment { ident: T#0, hir_id: Some(HirId { owner: DefId(0:10), local_id: 2 }), res: Some(Def(TyParam, DefId(0:9))), args: None, infer_args: false }] })), span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:9:68: 9:69 (#0) })], bindings: [], parenthesized: false, span_ext: src/test/ui/impl-trait/v2/generics-assoc-type.rs:9:67: 9:70 (#0) }), infer_args: false }] }, hir_ref_id: HirId { owner: DefId(0:10), local_id: 4 } }, span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:9:60: 9:70 (#0) }, None)], origin: FnReturn(DefId(0:7)) }), span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:9:55: 9:70 (#4), vis_span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:9:55: 9:55 (#0) } | |
│ │ │ │ │ │ │ ├─┐rustc_ast_lowering::index::insert span=src/test/ui/impl-trait/v2/generics-assoc-type.rs:9:26: 9:27 (#0), hir_id=HirId { owner: DefId(0:10), local_id: 5 }, node=GenericParam(GenericParam { hir_id: HirId { owner: DefId(0:10), local_id: 5 }, name: Plain(MY-T#0), span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:9:26: 9:27 (#0), pure_wrt_drop: false, kind: Type { default: None, synthetic: false }, colon_span: Some(src/test/ui/impl-trait/v2/generics-assoc-type.rs:9:27: 9:28 (#0)) }) | |
│ │ │ │ │ │ │ ├─┘ | |
│ │ │ │ │ │ │ ├─┐rustc_ast_lowering::index::insert span=src/test/ui/impl-trait/v2/generics-assoc-type.rs:9:26: 9:27 (#0), hir_id=HirId { owner: DefId(0:10), local_id: 7 }, node=Ty(Ty { hir_id: HirId { owner: DefId(0:10), local_id: 7 }, kind: Path(Resolved(None, Path { span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:9:26: 9:27 (#0), res: Def(TyParam, DefId(0:12)), segments: [PathSegment { ident: T#0, hir_id: None, res: None, args: None, infer_args: true }] })), span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:9:26: 9:27 (#0) }) | |
│ │ │ │ │ │ │ ├─┘ | |
│ │ │ │ │ │ │ ├─┐rustc_ast_lowering::index::insert span=src/test/ui/impl-trait/v2/generics-assoc-type.rs:9:29: 9:31 (#0), hir_id=HirId { owner: DefId(0:10), local_id: 6 }, node=Lifetime(lifetime(HirId { owner: DefId(0:10), local_id: 6 }: 'static)) | |
│ │ │ │ │ │ │ ├─┘ | |
│ │ │ │ │ │ │ ├─┐rustc_ast_lowering::index::insert span=src/test/ui/impl-trait/v2/generics-assoc-type.rs:9:60: 9:70 (#0), hir_id=HirId { owner: DefId(0:10), local_id: 4 }, node=TraitRef(TraitRef { path: Path { span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:9:60: 9:70 (#0), res: Def(Trait, DefId(0:3)), segments: [PathSegment { ident: MyTrait#0, hir_id: Some(HirId { owner: DefId(0:10), local_id: 3 }), res: Some(Def(Trait, DefId(0:3))), args: Some(GenericArgs { args: [Type(Ty { hir_id: HirId { owner: DefId(0:10), local_id: 1 }, kind: Path(Resolved(None, Path { span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:9:68: 9:69 (#0), res: Def(TyParam, DefId(0:9)), segments: [PathSegment { ident: T#0, hir_id: Some(HirId { owner: DefId(0:10), local_id: 2 }), res: Some(Def(TyParam, DefId(0:9))), args: None, infer_args: false }] })), span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:9:68: 9:69 (#0) })], bindings: [], parenthesized: false, span_ext: src/test/ui/impl-trait/v2/generics-assoc-type.rs:9:67: 9:70 (#0) }), infer_args: false }] }, hir_ref_id: HirId { owner: DefId(0:10), local_id: 4 } }) | |
│ │ │ │ │ │ │ ├─┘ | |
│ │ │ │ │ │ │ ├─┐rustc_ast_lowering::index::insert span=src/test/ui/impl-trait/v2/generics-assoc-type.rs:9:60: 9:70 (#0), hir_id=HirId { owner: DefId(0:10), local_id: 3 }, node=PathSegment(PathSegment { ident: MyTrait#0, hir_id: Some(HirId { owner: DefId(0:10), local_id: 3 }), res: Some(Def(Trait, DefId(0:3))), args: Some(GenericArgs { args: [Type(Ty { hir_id: HirId { owner: DefId(0:10), local_id: 1 }, kind: Path(Resolved(None, Path { span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:9:68: 9:69 (#0), res: Def(TyParam, DefId(0:9)), segments: [PathSegment { ident: T#0, hir_id: Some(HirId { owner: DefId(0:10), local_id: 2 }), res: Some(Def(TyParam, DefId(0:9))), args: None, infer_args: false }] })), span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:9:68: 9:69 (#0) })], bindings: [], parenthesized: false, span_ext: src/test/ui/impl-trait/v2/generics-assoc-type.rs:9:67: 9:70 (#0) }), infer_args: false }) | |
│ │ │ │ │ │ │ ├─┘ | |
│ │ │ │ │ │ │ ├─┐rustc_ast_lowering::index::insert span=src/test/ui/impl-trait/v2/generics-assoc-type.rs:9:68: 9:69 (#0), hir_id=HirId { owner: DefId(0:10), local_id: 1 }, node=Ty(Ty { hir_id: HirId { owner: DefId(0:10), local_id: 1 }, kind: Path(Resolved(None, Path { span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:9:68: 9:69 (#0), res: Def(TyParam, DefId(0:9)), segments: [PathSegment { ident: T#0, hir_id: Some(HirId { owner: DefId(0:10), local_id: 2 }), res: Some(Def(TyParam, DefId(0:9))), args: None, infer_args: false }] })), span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:9:68: 9:69 (#0) }) | |
│ │ │ │ │ │ │ ├─┘ | |
│ │ │ │ │ │ │ ├─┐rustc_ast_lowering::index::insert span=src/test/ui/impl-trait/v2/generics-assoc-type.rs:9:68: 9:69 (#0), hir_id=HirId { owner: DefId(0:10), local_id: 2 }, node=PathSegment(PathSegment { ident: T#0, hir_id: Some(HirId { owner: DefId(0:10), local_id: 2 }), res: Some(Def(TyParam, DefId(0:9))), args: None, infer_args: false }) | |
│ │ │ │ │ │ │ ├─┘ | |
│ │ │ │ │ │ ├─┘ | |
│ │ │ │ │ ├─┘ | |
│ │ │ │ ├─┘ | |
│ │ │ │ ├─┐rustc_ast_lowering::collect_type_and_const_args params=[GenericParam { id: NodeId(37), ident: 'a#0, attrs: ThinVec(None), bounds: [], is_placeholder: false, kind: Lifetime, colon_span: None }, GenericParam { id: NodeId(38), ident: T#0, attrs: ThinVec(None), bounds: [Outlives(lifetime(39: 'a))], is_placeholder: false, kind: Type { default: None }, colon_span: Some(src/test/ui/impl-trait/v2/generics-assoc-type.rs:9:27: 9:28 (#0)) }] | |
│ │ │ │ ├─┘ | |
│ │ │ ├─┘ | |
│ │ ├─┘ | |
│ ├─┘ | |
│ ├─┐rustc_ast_lowering::index::index_hir item=Item(Item { ident: ident_as_my_trait#0, def_id: DefId(0:7), kind: Fn(FnSig { header: FnHeader { unsafety: Normal, constness: NotConst, asyncness: NotAsync, abi: Rust }, decl: FnDecl { inputs: [Ty { hir_id: HirId { owner: DefId(0:7), local_id: 16 }, kind: Rptr(lifetime(HirId { owner: DefId(0:7), local_id: 13 }: 'a), MutTy { ty: Ty { hir_id: HirId { owner: DefId(0:7), local_id: 14 }, kind: Path(Resolved(None, Path { span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:9:41: 9:44 (#0), res: PrimTy(Int(I32)), segments: [PathSegment { ident: i32#0, hir_id: Some(HirId { owner: DefId(0:7), local_id: 15 }), res: Some(Err), args: None, infer_args: false }] })), span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:9:41: 9:44 (#0) }, mutbl: Not }), span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:9:37: 9:44 (#0) }, Ty { hir_id: HirId { owner: DefId(0:7), local_id: 17 }, kind: Path(Resolved(None, Path { span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:9:49: 9:50 (#0), res: Def(TyParam, DefId(0:9)), segments: [PathSegment { ident: T#0, hir_id: Some(HirId { owner: DefId(0:7), local_id: 18 }), res: Some(Def(TyParam, DefId(0:9))), args: None, infer_args: false }] })), span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:9:49: 9:50 (#0) }], output: Return(Ty { hir_id: HirId { owner: DefId(0:7), local_id: 20 }, kind: OpaqueDef(ItemId { def_id: DefId(0:10) }, [Type(Ty { hir_id: HirId { owner: DefId(0:7), local_id: 19 }, kind: Path(Resolved(None, Path { span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:9:26: 9:27 (#0), res: Def(TyParam, DefId(0:9)), segments: [PathSegment { ident: T#0, hir_id: None, res: None, args: None, infer_args: true }] })), span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:9:26: 9:27 (#0) })]), span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:9:55: 9:70 (#0) }), c_variadic: false, implicit_self: None }, span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:9:1: 9:70 (#0) }, Generics { params: [GenericParam { hir_id: HirId { owner: DefId(0:7), local_id: 11 }, name: Plain('a#0), span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:9:22: 9:24 (#0), pure_wrt_drop: false, kind: Lifetime { kind: Explicit }, colon_span: None }, GenericParam { hir_id: HirId { owner: DefId(0:7), local_id: 12 }, name: Plain(T#0), span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:9:26: 9:27 (#0), pure_wrt_drop: false, kind: Type { default: None, synthetic: false }, colon_span: Some(src/test/ui/impl-trait/v2/generics-assoc-type.rs:9:27: 9:28 (#0)) }], predicates: [BoundPredicate(WhereBoundPredicate { span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:9:27: 9:31 (#0), origin: GenericParam, bound_generic_params: [], bounded_ty: Ty { hir_id: HirId { owner: DefId(0:7), local_id: 10 }, kind: Path(Resolved(None, Path { span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:9:26: 9:27 (#0), res: Def(TyParam, DefId(0:9)), segments: [PathSegment { ident: T#0, hir_id: None, res: None, args: None, infer_args: true }] })), span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:9:26: 9:27 (#0) }, bounds: [Outlives(lifetime(HirId { owner: DefId(0:7), local_id: 9 }: 'a))] })], has_where_clause: false, where_clause_span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:9:70: 9:70 (#0), span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:9:21: 9:32 (#0) }, BodyId { hir_id: HirId { owner: DefId(0:7), local_id: 8 } }), span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:9:1: 13:2 (#0), vis_span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:9:1: 9:1 (#0) }) | |
│ │ ├─┐rustc_ast_lowering::index::visit_item i=Item { ident: ident_as_my_trait#0, def_id: DefId(0:7), kind: Fn(FnSig { header: FnHeader { unsafety: Normal, constness: NotConst, asyncness: NotAsync, abi: Rust }, decl: FnDecl { inputs: [Ty { hir_id: HirId { owner: DefId(0:7), local_id: 16 }, kind: Rptr(lifetime(HirId { owner: DefId(0:7), local_id: 13 }: 'a), MutTy { ty: Ty { hir_id: HirId { owner: DefId(0:7), local_id: 14 }, kind: Path(Resolved(None, Path { span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:9:41: 9:44 (#0), res: PrimTy(Int(I32)), segments: [PathSegment { ident: i32#0, hir_id: Some(HirId { owner: DefId(0:7), local_id: 15 }), res: Some(Err), args: None, infer_args: false }] })), span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:9:41: 9:44 (#0) }, mutbl: Not }), span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:9:37: 9:44 (#0) }, Ty { hir_id: HirId { owner: DefId(0:7), local_id: 17 }, kind: Path(Resolved(None, Path { span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:9:49: 9:50 (#0), res: Def(TyParam, DefId(0:9)), segments: [PathSegment { ident: T#0, hir_id: Some(HirId { owner: DefId(0:7), local_id: 18 }), res: Some(Def(TyParam, DefId(0:9))), args: None, infer_args: false }] })), span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:9:49: 9:50 (#0) }], output: Return(Ty { hir_id: HirId { owner: DefId(0:7), local_id: 20 }, kind: OpaqueDef(ItemId { def_id: DefId(0:10) }, [Type(Ty { hir_id: HirId { owner: DefId(0:7), local_id: 19 }, kind: Path(Resolved(None, Path { span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:9:26: 9:27 (#0), res: Def(TyParam, DefId(0:9)), segments: [PathSegment { ident: T#0, hir_id: None, res: None, args: None, infer_args: true }] })), span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:9:26: 9:27 (#0) })]), span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:9:55: 9:70 (#0) }), c_variadic: false, implicit_self: None }, span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:9:1: 9:70 (#0) }, Generics { params: [GenericParam { hir_id: HirId { owner: DefId(0:7), local_id: 11 }, name: Plain('a#0), span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:9:22: 9:24 (#0), pure_wrt_drop: false, kind: Lifetime { kind: Explicit }, colon_span: None }, GenericParam { hir_id: HirId { owner: DefId(0:7), local_id: 12 }, name: Plain(T#0), span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:9:26: 9:27 (#0), pure_wrt_drop: false, kind: Type { default: None, synthetic: false }, colon_span: Some(src/test/ui/impl-trait/v2/generics-assoc-type.rs:9:27: 9:28 (#0)) }], predicates: [BoundPredicate(WhereBoundPredicate { span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:9:27: 9:31 (#0), origin: GenericParam, bound_generic_params: [], bounded_ty: Ty { hir_id: HirId { owner: DefId(0:7), local_id: 10 }, kind: Path(Resolved(None, Path { span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:9:26: 9:27 (#0), res: Def(TyParam, DefId(0:9)), segments: [PathSegment { ident: T#0, hir_id: None, res: None, args: None, infer_args: true }] })), span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:9:26: 9:27 (#0) }, bounds: [Outlives(lifetime(HirId { owner: DefId(0:7), local_id: 9 }: 'a))] })], has_where_clause: false, where_clause_span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:9:70: 9:70 (#0), span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:9:21: 9:32 (#0) }, BodyId { hir_id: HirId { owner: DefId(0:7), local_id: 8 } }), span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:9:1: 13:2 (#0), vis_span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:9:1: 9:1 (#0) } | |
│ │ │ ├─┐rustc_ast_lowering::index::insert span=src/test/ui/impl-trait/v2/generics-assoc-type.rs:9:37: 9:44 (#0), hir_id=HirId { owner: DefId(0:7), local_id: 16 }, node=Ty(Ty { hir_id: HirId { owner: DefId(0:7), local_id: 16 }, kind: Rptr(lifetime(HirId { owner: DefId(0:7), local_id: 13 }: 'a), MutTy { ty: Ty { hir_id: HirId { owner: DefId(0:7), local_id: 14 }, kind: Path(Resolved(None, Path { span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:9:41: 9:44 (#0), res: PrimTy(Int(I32)), segments: [PathSegment { ident: i32#0, hir_id: Some(HirId { owner: DefId(0:7), local_id: 15 }), res: Some(Err), args: None, infer_args: false }] })), span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:9:41: 9:44 (#0) }, mutbl: Not }), span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:9:37: 9:44 (#0) }) | |
│ │ │ ├─┘ | |
│ │ │ ├─┐rustc_ast_lowering::index::insert span=src/test/ui/impl-trait/v2/generics-assoc-type.rs:9:38: 9:40 (#0), hir_id=HirId { owner: DefId(0:7), local_id: 13 }, node=Lifetime(lifetime(HirId { owner: DefId(0:7), local_id: 13 }: 'a)) | |
│ │ │ ├─┘ | |
│ │ │ ├─┐rustc_ast_lowering::index::insert span=src/test/ui/impl-trait/v2/generics-assoc-type.rs:9:41: 9:44 (#0), hir_id=HirId { owner: DefId(0:7), local_id: 14 }, node=Ty(Ty { hir_id: HirId { owner: DefId(0:7), local_id: 14 }, kind: Path(Resolved(None, Path { span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:9:41: 9:44 (#0), res: PrimTy(Int(I32)), segments: [PathSegment { ident: i32#0, hir_id: Some(HirId { owner: DefId(0:7), local_id: 15 }), res: Some(Err), args: None, infer_args: false }] })), span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:9:41: 9:44 (#0) }) | |
│ │ │ ├─┘ | |
│ │ │ ├─┐rustc_ast_lowering::index::insert span=src/test/ui/impl-trait/v2/generics-assoc-type.rs:9:41: 9:44 (#0), hir_id=HirId { owner: DefId(0:7), local_id: 15 }, node=PathSegment(PathSegment { ident: i32#0, hir_id: Some(HirId { owner: DefId(0:7), local_id: 15 }), res: Some(Err), args: None, infer_args: false }) | |
│ │ │ ├─┘ | |
│ │ │ ├─┐rustc_ast_lowering::index::insert span=src/test/ui/impl-trait/v2/generics-assoc-type.rs:9:49: 9:50 (#0), hir_id=HirId { owner: DefId(0:7), local_id: 17 }, node=Ty(Ty { hir_id: HirId { owner: DefId(0:7), local_id: 17 }, kind: Path(Resolved(None, Path { span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:9:49: 9:50 (#0), res: Def(TyParam, DefId(0:9)), segments: [PathSegment { ident: T#0, hir_id: Some(HirId { owner: DefId(0:7), local_id: 18 }), res: Some(Def(TyParam, DefId(0:9))), args: None, infer_args: false }] })), span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:9:49: 9:50 (#0) }) | |
│ │ │ ├─┘ | |
│ │ │ ├─┐rustc_ast_lowering::index::insert span=src/test/ui/impl-trait/v2/generics-assoc-type.rs:9:49: 9:50 (#0), hir_id=HirId { owner: DefId(0:7), local_id: 18 }, node=PathSegment(PathSegment { ident: T#0, hir_id: Some(HirId { owner: DefId(0:7), local_id: 18 }), res: Some(Def(TyParam, DefId(0:9))), args: None, infer_args: false }) | |
│ │ │ ├─┘ | |
│ │ │ ├─┐rustc_ast_lowering::index::insert span=src/test/ui/impl-trait/v2/generics-assoc-type.rs:9:55: 9:70 (#0), hir_id=HirId { owner: DefId(0:7), local_id: 20 }, node=Ty(Ty { hir_id: HirId { owner: DefId(0:7), local_id: 20 }, kind: OpaqueDef(ItemId { def_id: DefId(0:10) }, [Type(Ty { hir_id: HirId { owner: DefId(0:7), local_id: 19 }, kind: Path(Resolved(None, Path { span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:9:26: 9:27 (#0), res: Def(TyParam, DefId(0:9)), segments: [PathSegment { ident: T#0, hir_id: None, res: None, args: None, infer_args: true }] })), span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:9:26: 9:27 (#0) })]), span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:9:55: 9:70 (#0) }) | |
│ │ │ ├─┘ | |
│ │ │ ├─0ms DEBUG rustc_ast_lowering::index visit_nested_item: ItemId { def_id: DefId(0:10) } | |
│ │ │ ├─┐rustc_ast_lowering::index::insert span=src/test/ui/impl-trait/v2/generics-assoc-type.rs:9:26: 9:27 (#0), hir_id=HirId { owner: DefId(0:7), local_id: 19 }, node=Ty(Ty { hir_id: HirId { owner: DefId(0:7), local_id: 19 }, kind: Path(Resolved(None, Path { span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:9:26: 9:27 (#0), res: Def(TyParam, DefId(0:9)), segments: [PathSegment { ident: T#0, hir_id: None, res: None, args: None, infer_args: true }] })), span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:9:26: 9:27 (#0) }) | |
│ │ │ ├─┘ | |
│ │ │ ├─┐rustc_ast_lowering::index::insert span=src/test/ui/impl-trait/v2/generics-assoc-type.rs:9:22: 9:24 (#0), hir_id=HirId { owner: DefId(0:7), local_id: 11 }, node=GenericParam(GenericParam { hir_id: HirId { owner: DefId(0:7), local_id: 11 }, name: Plain('a#0), span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:9:22: 9:24 (#0), pure_wrt_drop: false, kind: Lifetime { kind: Explicit }, colon_span: None }) | |
│ │ │ ├─┘ | |
│ │ │ ├─┐rustc_ast_lowering::index::insert span=src/test/ui/impl-trait/v2/generics-assoc-type.rs:9:26: 9:27 (#0), hir_id=HirId { owner: DefId(0:7), local_id: 12 }, node=GenericParam(GenericParam { hir_id: HirId { owner: DefId(0:7), local_id: 12 }, name: Plain(T#0), span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:9:26: 9:27 (#0), pure_wrt_drop: false, kind: Type { default: None, synthetic: false }, colon_span: Some(src/test/ui/impl-trait/v2/generics-assoc-type.rs:9:27: 9:28 (#0)) }) | |
│ │ │ ├─┘ | |
│ │ │ ├─┐rustc_ast_lowering::index::insert span=src/test/ui/impl-trait/v2/generics-assoc-type.rs:9:26: 9:27 (#0), hir_id=HirId { owner: DefId(0:7), local_id: 10 }, node=Ty(Ty { hir_id: HirId { owner: DefId(0:7), local_id: 10 }, kind: Path(Resolved(None, Path { span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:9:26: 9:27 (#0), res: Def(TyParam, DefId(0:9)), segments: [PathSegment { ident: T#0, hir_id: None, res: None, args: None, infer_args: true }] })), span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:9:26: 9:27 (#0) }) | |
│ │ │ ├─┘ | |
│ │ │ ├─┐rustc_ast_lowering::index::insert span=src/test/ui/impl-trait/v2/generics-assoc-type.rs:9:29: 9:31 (#0), hir_id=HirId { owner: DefId(0:7), local_id: 9 }, node=Lifetime(lifetime(HirId { owner: DefId(0:7), local_id: 9 }: 'a)) | |
│ │ │ ├─┘ | |
│ │ │ ├─┐rustc_ast_lowering::index::insert span=src/test/ui/impl-trait/v2/generics-assoc-type.rs:9:33: 9:35 (#0), hir_id=HirId { owner: DefId(0:7), local_id: 1 }, node=Param(Param { hir_id: HirId { owner: DefId(0:7), local_id: 1 }, pat: Pat { hir_id: HirId { owner: DefId(0:7), local_id: 2 }, kind: Binding(Unannotated, HirId { owner: DefId(0:7), local_id: 2 }, _u#0, None), span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:9:33: 9:35 (#0), default_binding_modes: true }, ty_span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:9:37: 9:44 (#0), span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:9:33: 9:44 (#0) }) | |
│ │ │ ├─┘ | |
│ │ │ ├─┐rustc_ast_lowering::index::insert span=src/test/ui/impl-trait/v2/generics-assoc-type.rs:9:33: 9:35 (#0), hir_id=HirId { owner: DefId(0:7), local_id: 2 }, node=Binding(Pat { hir_id: HirId { owner: DefId(0:7), local_id: 2 }, kind: Binding(Unannotated, HirId { owner: DefId(0:7), local_id: 2 }, _u#0, None), span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:9:33: 9:35 (#0), default_binding_modes: true }) | |
│ │ │ ├─┘ | |
│ │ │ ├─┐rustc_ast_lowering::index::insert span=src/test/ui/impl-trait/v2/generics-assoc-type.rs:9:46: 9:47 (#0), hir_id=HirId { owner: DefId(0:7), local_id: 3 }, node=Param(Param { hir_id: HirId { owner: DefId(0:7), local_id: 3 }, pat: Pat { hir_id: HirId { owner: DefId(0:7), local_id: 4 }, kind: Binding(Unannotated, HirId { owner: DefId(0:7), local_id: 4 }, t#0, None), span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:9:46: 9:47 (#0), default_binding_modes: true }, ty_span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:9:49: 9:50 (#0), span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:9:46: 9:50 (#0) }) | |
│ │ │ ├─┘ | |
│ │ │ ├─┐rustc_ast_lowering::index::insert span=src/test/ui/impl-trait/v2/generics-assoc-type.rs:9:46: 9:47 (#0), hir_id=HirId { owner: DefId(0:7), local_id: 4 }, node=Binding(Pat { hir_id: HirId { owner: DefId(0:7), local_id: 4 }, kind: Binding(Unannotated, HirId { owner: DefId(0:7), local_id: 4 }, t#0, None), span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:9:46: 9:47 (#0), default_binding_modes: true }) | |
│ │ │ ├─┘ | |
│ │ │ ├─┐rustc_ast_lowering::index::insert span=src/test/ui/impl-trait/v2/generics-assoc-type.rs:11:1: 13:2 (#0), hir_id=HirId { owner: DefId(0:7), local_id: 8 }, node=Expr(Expr { hir_id: HirId { owner: DefId(0:7), local_id: 8 }, kind: Block(Block { stmts: [], expr: Some(Expr { hir_id: HirId { owner: DefId(0:7), local_id: 6 }, kind: Path(Resolved(None, Path { span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:12:5: 12:6 (#0), res: Local(HirId { owner: DefId(0:7), local_id: 4 }), segments: [PathSegment { ident: t#0, hir_id: Some(HirId { owner: DefId(0:7), local_id: 5 }), res: Some(Local(HirId { owner: DefId(0:7), local_id: 4 })), args: None, infer_args: true }] })), span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:12:5: 12:6 (#0) }), hir_id: HirId { owner: DefId(0:7), local_id: 7 }, rules: DefaultBlock, span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:11:1: 13:2 (#0), targeted_by_break: false }, None), span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:11:1: 13:2 (#0) }) | |
│ │ │ ├─┘ | |
│ │ │ ├─┐rustc_ast_lowering::index::insert span=src/test/ui/impl-trait/v2/generics-assoc-type.rs:11:1: 13:2 (#0), hir_id=HirId { owner: DefId(0:7), local_id: 7 }, node=Block(Block { stmts: [], expr: Some(Expr { hir_id: HirId { owner: DefId(0:7), local_id: 6 }, kind: Path(Resolved(None, Path { span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:12:5: 12:6 (#0), res: Local(HirId { owner: DefId(0:7), local_id: 4 }), segments: [PathSegment { ident: t#0, hir_id: Some(HirId { owner: DefId(0:7), local_id: 5 }), res: Some(Local(HirId { owner: DefId(0:7), local_id: 4 })), args: None, infer_args: true }] })), span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:12:5: 12:6 (#0) }), hir_id: HirId { owner: DefId(0:7), local_id: 7 }, rules: DefaultBlock, span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:11:1: 13:2 (#0), targeted_by_break: false }) | |
│ │ │ ├─┘ | |
│ │ │ ├─┐rustc_ast_lowering::index::insert span=src/test/ui/impl-trait/v2/generics-assoc-type.rs:12:5: 12:6 (#0), hir_id=HirId { owner: DefId(0:7), local_id: 6 }, node=Expr(Expr { hir_id: HirId { owner: DefId(0:7), local_id: 6 }, kind: Path(Resolved(None, Path { span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:12:5: 12:6 (#0), res: Local(HirId { owner: DefId(0:7), local_id: 4 }), segments: [PathSegment { ident: t#0, hir_id: Some(HirId { owner: DefId(0:7), local_id: 5 }), res: Some(Local(HirId { owner: DefId(0:7), local_id: 4 })), args: None, infer_args: true }] })), span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:12:5: 12:6 (#0) }) | |
│ │ │ ├─┘ | |
│ │ │ ├─┐rustc_ast_lowering::index::insert span=src/test/ui/impl-trait/v2/generics-assoc-type.rs:12:5: 12:6 (#0), hir_id=HirId { owner: DefId(0:7), local_id: 5 }, node=PathSegment(PathSegment { ident: t#0, hir_id: Some(HirId { owner: DefId(0:7), local_id: 5 }), res: Some(Local(HirId { owner: DefId(0:7), local_id: 4 })), args: None, infer_args: true }) | |
│ │ │ ├─┘ | |
│ │ ├─┘ | |
│ ├─┘ | |
├─┘ | |
┘ | |
┐rustc_ast_lowering::item::lower_item item=Item { attrs: [], id: NodeId(44), span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:15:1: 15:13 (#0), vis: Visibility { kind: Inherited, span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:15:1: 15:1 (#0), tokens: None }, ident: main#0, kind: Fn(Fn { defaultness: Final, generics: Generics { params: [], where_clause: WhereClause { has_where_token: false, predicates: [], span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:15:10: 15:10 (#0) }, span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:15:8: 15:8 (#0) }, sig: FnSig { header: FnHeader { unsafety: No, asyncness: No, constness: No, ext: None }, decl: FnDecl { inputs: [], output: Default(src/test/ui/impl-trait/v2/generics-assoc-type.rs:15:11: 15:11 (#0)) }, span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:15:1: 15:10 (#0) }, body: Some(Block { stmts: [], id: NodeId(45), rules: Default, span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:15:11: 15:13 (#0), tokens: None, could_be_bare_literal: false }) }), tokens: None } | |
├─┐rustc_ast_lowering::with_hir_id_owner owner=NodeId(44) | |
│ ├─┐rustc_ast_lowering::add_implicit_generics generics=Generics { params: [], where_clause: WhereClause { has_where_token: false, predicates: [], span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:15:10: 15:10 (#0) }, span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:15:8: 15:8 (#0) }, parent_node_id=NodeId(44) | |
│ │ ├─0ms DEBUG rustc_ast_lowering lower_fn_decl(fn_decl: FnDecl { inputs: [], output: Default(src/test/ui/impl-trait/v2/generics-assoc-type.rs:15:11: 15:11 (#0)) }, in_band_ty_params: Some((NodeId(44), [], [])), kind: Fn, make_ret_async: None) | |
│ ├─┘ | |
│ ├─┐rustc_ast_lowering::index::index_hir item=Item(Item { ident: main#0, def_id: DefId(0:11), kind: Fn(FnSig { header: FnHeader { unsafety: Normal, constness: NotConst, asyncness: NotAsync, abi: Rust }, decl: FnDecl { inputs: [], output: DefaultReturn(src/test/ui/impl-trait/v2/generics-assoc-type.rs:15:11: 15:11 (#0)), c_variadic: false, implicit_self: None }, span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:15:1: 15:10 (#0) }, Generics { params: [], predicates: [], has_where_clause: false, where_clause_span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:15:10: 15:10 (#0), span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:15:8: 15:8 (#0) }, BodyId { hir_id: HirId { owner: DefId(0:11), local_id: 2 } }), span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:15:1: 15:13 (#0), vis_span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:15:1: 15:1 (#0) }) | |
│ │ ├─┐rustc_ast_lowering::index::visit_item i=Item { ident: main#0, def_id: DefId(0:11), kind: Fn(FnSig { header: FnHeader { unsafety: Normal, constness: NotConst, asyncness: NotAsync, abi: Rust }, decl: FnDecl { inputs: [], output: DefaultReturn(src/test/ui/impl-trait/v2/generics-assoc-type.rs:15:11: 15:11 (#0)), c_variadic: false, implicit_self: None }, span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:15:1: 15:10 (#0) }, Generics { params: [], predicates: [], has_where_clause: false, where_clause_span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:15:10: 15:10 (#0), span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:15:8: 15:8 (#0) }, BodyId { hir_id: HirId { owner: DefId(0:11), local_id: 2 } }), span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:15:1: 15:13 (#0), vis_span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:15:1: 15:1 (#0) } | |
│ │ │ ├─┐rustc_ast_lowering::index::insert span=src/test/ui/impl-trait/v2/generics-assoc-type.rs:15:11: 15:13 (#0), hir_id=HirId { owner: DefId(0:11), local_id: 2 }, node=Expr(Expr { hir_id: HirId { owner: DefId(0:11), local_id: 2 }, kind: Block(Block { stmts: [], expr: None, hir_id: HirId { owner: DefId(0:11), local_id: 1 }, rules: DefaultBlock, span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:15:11: 15:13 (#0), targeted_by_break: false }, None), span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:15:11: 15:13 (#0) }) | |
│ │ │ ├─┘ | |
│ │ │ ├─┐rustc_ast_lowering::index::insert span=src/test/ui/impl-trait/v2/generics-assoc-type.rs:15:11: 15:13 (#0), hir_id=HirId { owner: DefId(0:11), local_id: 1 }, node=Block(Block { stmts: [], expr: None, hir_id: HirId { owner: DefId(0:11), local_id: 1 }, rules: DefaultBlock, span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:15:11: 15:13 (#0), targeted_by_break: false }) | |
│ │ │ ├─┘ | |
│ │ ├─┘ | |
│ ├─┘ | |
├─┘ | |
┘ | |
Crate { | |
owners: [ | |
Owner( | |
OwnerInfo { | |
nodes: OwnerNodes { | |
hash_including_bodies: Fingerprint( | |
11509814989097591284, | |
8029534358430629645, | |
), | |
hash_without_bodies: Fingerprint( | |
11509814989097591284, | |
8029534358430629645, | |
), | |
nodes: [ | |
Some( | |
ParentedNode { | |
parent: 4294967040, | |
node: Crate( | |
Mod { | |
spans: ModSpans { | |
inner_span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:3:1: 15:13 (#0), | |
inject_use_span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:5:1: 5:1 (#0), | |
}, | |
item_ids: [ | |
ItemId { | |
def_id: DefId(0:1 ~ generics_assoc_type[6ffc]::{misc#0}), | |
}, | |
ItemId { | |
def_id: DefId(0:2 ~ generics_assoc_type[6ffc]::std), | |
}, | |
ItemId { | |
def_id: DefId(0:3 ~ generics_assoc_type[6ffc]::MyTrait), | |
}, | |
ItemId { | |
def_id: DefId(0:5 ~ generics_assoc_type[6ffc]::{impl#0}), | |
}, | |
ItemId { | |
def_id: DefId(0:7 ~ generics_assoc_type[6ffc]::ident_as_my_trait), | |
}, | |
ItemId { | |
def_id: DefId(0:11 ~ generics_assoc_type[6ffc]::main), | |
}, | |
], | |
}, | |
), | |
}, | |
), | |
], | |
bodies: SortedMap { | |
data: [], | |
}, | |
local_id_to_def_id: SortedMap { | |
data: [], | |
}, | |
}, | |
parenting: { | |
DefId(0:11 ~ generics_assoc_type[6ffc]::main): 0, | |
DefId(0:5 ~ generics_assoc_type[6ffc]::{impl#0}): 0, | |
DefId(0:2 ~ generics_assoc_type[6ffc]::std): 0, | |
DefId(0:7 ~ generics_assoc_type[6ffc]::ident_as_my_trait): 0, | |
DefId(0:1 ~ generics_assoc_type[6ffc]::{misc#0}): 0, | |
DefId(0:3 ~ generics_assoc_type[6ffc]::MyTrait): 0, | |
}, | |
attrs: AttributeMap { | |
map: SortedMap { | |
data: [ | |
( | |
0, | |
[ | |
Attribute { | |
kind: Normal( | |
AttrItem { | |
path: Path { | |
span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:3:4: 3:11 (#0), | |
segments: [ | |
PathSegment { | |
ident: feature#0, | |
id: NodeId(1), | |
args: None, | |
}, | |
], | |
tokens: None, | |
}, | |
args: Delimited( | |
DelimSpan { | |
open: src/test/ui/impl-trait/v2/generics-assoc-type.rs:3:11: 3:12 (#0), | |
close: src/test/ui/impl-trait/v2/generics-assoc-type.rs:3:41: 3:42 (#0), | |
}, | |
Parenthesis, | |
TokenStream( | |
[ | |
( | |
Token( | |
Token { | |
kind: Ident( | |
"return_position_impl_trait_v2", | |
false, | |
), | |
span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:3:12: 3:41 (#0), | |
}, | |
), | |
Alone, | |
), | |
], | |
), | |
), | |
tokens: None, | |
}, | |
None, | |
), | |
id: AttrId(0), | |
style: Inner, | |
span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:3:1: 3:43 (#0), | |
}, | |
], | |
), | |
], | |
}, | |
hash: Fingerprint( | |
7719033881302105355, | |
9219944547221944664, | |
), | |
}, | |
trait_map: {}, | |
}, | |
), | |
Owner( | |
OwnerInfo { | |
nodes: OwnerNodes { | |
hash_including_bodies: Fingerprint( | |
10093578091983709309, | |
8859068496181260717, | |
), | |
hash_without_bodies: Fingerprint( | |
10093578091983709309, | |
8859068496181260717, | |
), | |
nodes: [ | |
Some( | |
ParentedNode { | |
parent: 4294967040, | |
node: Item( | |
Item { | |
ident: #0, | |
def_id: DefId(0:1 ~ generics_assoc_type[6ffc]::{misc#0}), | |
kind: Use( | |
Path { | |
span: no-location (#1), | |
res: Err, | |
segments: [ | |
PathSegment { | |
ident: {{root}}#1, | |
hir_id: Some( | |
HirId { | |
owner: DefId(0:1 ~ generics_assoc_type[6ffc]::{misc#0}), | |
local_id: 1, | |
}, | |
), | |
res: Some( | |
Err, | |
), | |
args: None, | |
infer_args: false, | |
}, | |
PathSegment { | |
ident: std#1, | |
hir_id: Some( | |
HirId { | |
owner: DefId(0:1 ~ generics_assoc_type[6ffc]::{misc#0}), | |
local_id: 2, | |
}, | |
), | |
res: Some( | |
Def( | |
Mod, | |
DefId(1:0 ~ std[c265]), | |
), | |
), | |
args: None, | |
infer_args: false, | |
}, | |
PathSegment { | |
ident: prelude#1, | |
hir_id: Some( | |
HirId { | |
owner: DefId(0:1 ~ generics_assoc_type[6ffc]::{misc#0}), | |
local_id: 3, | |
}, | |
), | |
res: Some( | |
Def( | |
Mod, | |
DefId(1:69 ~ std[c265]::prelude), | |
), | |
), | |
args: None, | |
infer_args: false, | |
}, | |
PathSegment { | |
ident: rust_2015#1, | |
hir_id: Some( | |
HirId { | |
owner: DefId(0:1 ~ generics_assoc_type[6ffc]::{misc#0}), | |
local_id: 4, | |
}, | |
), | |
res: Some( | |
Def( | |
Mod, | |
DefId(1:283 ~ std[c265]::prelude::rust_2015), | |
), | |
), | |
args: None, | |
infer_args: false, | |
}, | |
], | |
}, | |
Glob, | |
), | |
span: no-location (#1), | |
vis_span: no-location (#1), | |
}, | |
), | |
}, | |
), | |
Some( | |
ParentedNode { | |
parent: 0, | |
node: PathSegment( | |
PathSegment { | |
ident: {{root}}#1, | |
hir_id: Some( | |
HirId { | |
owner: DefId(0:1 ~ generics_assoc_type[6ffc]::{misc#0}), | |
local_id: 1, | |
}, | |
), | |
res: Some( | |
Err, | |
), | |
args: None, | |
infer_args: false, | |
}, | |
), | |
}, | |
), | |
Some( | |
ParentedNode { | |
parent: 0, | |
node: PathSegment( | |
PathSegment { | |
ident: std#1, | |
hir_id: Some( | |
HirId { | |
owner: DefId(0:1 ~ generics_assoc_type[6ffc]::{misc#0}), | |
local_id: 2, | |
}, | |
), | |
res: Some( | |
Def( | |
Mod, | |
DefId(1:0 ~ std[c265]), | |
), | |
), | |
args: None, | |
infer_args: false, | |
}, | |
), | |
}, | |
), | |
Some( | |
ParentedNode { | |
parent: 0, | |
node: PathSegment( | |
PathSegment { | |
ident: prelude#1, | |
hir_id: Some( | |
HirId { | |
owner: DefId(0:1 ~ generics_assoc_type[6ffc]::{misc#0}), | |
local_id: 3, | |
}, | |
), | |
res: Some( | |
Def( | |
Mod, | |
DefId(1:69 ~ std[c265]::prelude), | |
), | |
), | |
args: None, | |
infer_args: false, | |
}, | |
), | |
}, | |
), | |
Some( | |
ParentedNode { | |
parent: 0, | |
node: PathSegment( | |
PathSegment { | |
ident: rust_2015#1, | |
hir_id: Some( | |
HirId { | |
owner: DefId(0:1 ~ generics_assoc_type[6ffc]::{misc#0}), | |
local_id: 4, | |
}, | |
), | |
res: Some( | |
Def( | |
Mod, | |
DefId(1:283 ~ std[c265]::prelude::rust_2015), | |
), | |
), | |
args: None, | |
infer_args: false, | |
}, | |
), | |
}, | |
), | |
], | |
bodies: SortedMap { | |
data: [], | |
}, | |
local_id_to_def_id: SortedMap { | |
data: [], | |
}, | |
}, | |
parenting: {}, | |
attrs: AttributeMap { | |
map: SortedMap { | |
data: [ | |
( | |
0, | |
[ | |
Attribute { | |
kind: Normal( | |
AttrItem { | |
path: Path { | |
span: no-location (#1), | |
segments: [ | |
PathSegment { | |
ident: prelude_import#1, | |
id: NodeId(3), | |
args: None, | |
}, | |
], | |
tokens: None, | |
}, | |
args: Empty, | |
tokens: None, | |
}, | |
None, | |
), | |
id: AttrId(2), | |
style: Outer, | |
span: no-location (#1), | |
}, | |
], | |
), | |
], | |
}, | |
hash: Fingerprint( | |
6766127533976812346, | |
3617886129415836209, | |
), | |
}, | |
trait_map: {}, | |
}, | |
), | |
Owner( | |
OwnerInfo { | |
nodes: OwnerNodes { | |
hash_including_bodies: Fingerprint( | |
12970227027959296880, | |
5270156093024576859, | |
), | |
hash_without_bodies: Fingerprint( | |
12970227027959296880, | |
5270156093024576859, | |
), | |
nodes: [ | |
Some( | |
ParentedNode { | |
parent: 4294967040, | |
node: Item( | |
Item { | |
ident: std#2, | |
def_id: DefId(0:2 ~ generics_assoc_type[6ffc]::std), | |
kind: ExternCrate( | |
None, | |
), | |
span: no-location (#1), | |
vis_span: no-location (#1), | |
}, | |
), | |
}, | |
), | |
], | |
bodies: SortedMap { | |
data: [], | |
}, | |
local_id_to_def_id: SortedMap { | |
data: [], | |
}, | |
}, | |
parenting: {}, | |
attrs: AttributeMap { | |
map: SortedMap { | |
data: [ | |
( | |
0, | |
[ | |
Attribute { | |
kind: Normal( | |
AttrItem { | |
path: Path { | |
span: no-location (#1), | |
segments: [ | |
PathSegment { | |
ident: macro_use#1, | |
id: NodeId(9), | |
args: None, | |
}, | |
], | |
tokens: None, | |
}, | |
args: Empty, | |
tokens: None, | |
}, | |
None, | |
), | |
id: AttrId(1), | |
style: Outer, | |
span: no-location (#1), | |
}, | |
], | |
), | |
], | |
}, | |
hash: Fingerprint( | |
5917890410983135069, | |
12251883737059935891, | |
), | |
}, | |
trait_map: {}, | |
}, | |
), | |
Owner( | |
OwnerInfo { | |
nodes: OwnerNodes { | |
hash_including_bodies: Fingerprint( | |
13169063129813159497, | |
11745920833026938639, | |
), | |
hash_without_bodies: Fingerprint( | |
13169063129813159497, | |
11745920833026938639, | |
), | |
nodes: [ | |
Some( | |
ParentedNode { | |
parent: 4294967040, | |
node: Item( | |
Item { | |
ident: MyTrait#0, | |
def_id: DefId(0:3 ~ generics_assoc_type[6ffc]::MyTrait), | |
kind: Trait( | |
No, | |
Normal, | |
Generics { | |
params: [ | |
GenericParam { | |
hir_id: HirId { | |
owner: DefId(0:3 ~ generics_assoc_type[6ffc]::MyTrait), | |
local_id: 1, | |
}, | |
name: Plain( | |
T#0, | |
), | |
span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:5:15: 5:16 (#0), | |
pure_wrt_drop: false, | |
kind: Type { | |
default: None, | |
synthetic: false, | |
}, | |
colon_span: None, | |
}, | |
], | |
predicates: [], | |
has_where_clause: false, | |
where_clause_span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:5:17: 5:17 (#0), | |
span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:5:14: 5:17 (#0), | |
}, | |
[], | |
[], | |
), | |
span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:5:1: 5:20 (#0), | |
vis_span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:5:1: 5:1 (#0), | |
}, | |
), | |
}, | |
), | |
Some( | |
ParentedNode { | |
parent: 0, | |
node: GenericParam( | |
GenericParam { | |
hir_id: HirId { | |
owner: DefId(0:3 ~ generics_assoc_type[6ffc]::MyTrait), | |
local_id: 1, | |
}, | |
name: Plain( | |
T#0, | |
), | |
span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:5:15: 5:16 (#0), | |
pure_wrt_drop: false, | |
kind: Type { | |
default: None, | |
synthetic: false, | |
}, | |
colon_span: None, | |
}, | |
), | |
}, | |
), | |
], | |
bodies: SortedMap { | |
data: [], | |
}, | |
local_id_to_def_id: SortedMap { | |
data: [ | |
( | |
1, | |
DefId(0:4 ~ generics_assoc_type[6ffc]::MyTrait::T), | |
), | |
], | |
}, | |
}, | |
parenting: {}, | |
attrs: AttributeMap { | |
map: SortedMap { | |
data: [], | |
}, | |
hash: Fingerprint( | |
9785122672296426403, | |
8173264106939382879, | |
), | |
}, | |
trait_map: {}, | |
}, | |
), | |
NonOwner( | |
HirId { | |
owner: DefId(0:3 ~ generics_assoc_type[6ffc]::MyTrait), | |
local_id: 1, | |
}, | |
), | |
Owner( | |
OwnerInfo { | |
nodes: OwnerNodes { | |
hash_including_bodies: Fingerprint( | |
10998562874237111129, | |
4017088859852571851, | |
), | |
hash_without_bodies: Fingerprint( | |
10998562874237111129, | |
4017088859852571851, | |
), | |
nodes: [ | |
Some( | |
ParentedNode { | |
parent: 4294967040, | |
node: Item( | |
Item { | |
ident: #0, | |
def_id: DefId(0:5 ~ generics_assoc_type[6ffc]::{impl#0}), | |
kind: Impl( | |
Impl { | |
unsafety: Normal, | |
polarity: "positive", | |
defaultness: Final, | |
defaultness_span: None, | |
constness: NotConst, | |
generics: Generics { | |
params: [ | |
GenericParam { | |
hir_id: HirId { | |
owner: DefId(0:5 ~ generics_assoc_type[6ffc]::{impl#0}), | |
local_id: 1, | |
}, | |
name: Plain( | |
T#0, | |
), | |
span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:7:6: 7:7 (#0), | |
pure_wrt_drop: false, | |
kind: Type { | |
default: None, | |
synthetic: false, | |
}, | |
colon_span: None, | |
}, | |
], | |
predicates: [], | |
has_where_clause: false, | |
where_clause_span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:7:25: 7:25 (#0), | |
span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:7:5: 7:8 (#0), | |
}, | |
of_trait: Some( | |
TraitRef { | |
path: Path { | |
span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:7:9: 7:19 (#0), | |
res: Def( | |
Trait, | |
DefId(0:3 ~ generics_assoc_type[6ffc]::MyTrait), | |
), | |
segments: [ | |
PathSegment { | |
ident: MyTrait#0, | |
hir_id: Some( | |
HirId { | |
owner: DefId(0:5 ~ generics_assoc_type[6ffc]::{impl#0}), | |
local_id: 4, | |
}, | |
), | |
res: Some( | |
Def( | |
Trait, | |
DefId(0:3 ~ generics_assoc_type[6ffc]::MyTrait), | |
), | |
), | |
args: Some( | |
GenericArgs { | |
args: [ | |
Type( | |
Ty { | |
hir_id: HirId { | |
owner: DefId(0:5 ~ generics_assoc_type[6ffc]::{impl#0}), | |
local_id: 2, | |
}, | |
kind: Path( | |
Resolved( | |
None, | |
Path { | |
span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:7:17: 7:18 (#0), | |
res: Def( | |
TyParam, | |
DefId(0:6 ~ generics_assoc_type[6ffc]::{impl#0}::T), | |
), | |
segments: [ | |
PathSegment { | |
ident: T#0, | |
hir_id: Some( | |
HirId { | |
owner: DefId(0:5 ~ generics_assoc_type[6ffc]::{impl#0}), | |
local_id: 3, | |
}, | |
), | |
res: Some( | |
Def( | |
TyParam, | |
DefId(0:6 ~ generics_assoc_type[6ffc]::{impl#0}::T), | |
), | |
), | |
args: None, | |
infer_args: false, | |
}, | |
], | |
}, | |
), | |
), | |
span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:7:17: 7:18 (#0), | |
}, | |
), | |
], | |
bindings: [], | |
parenthesized: false, | |
span_ext: src/test/ui/impl-trait/v2/generics-assoc-type.rs:7:16: 7:19 (#0), | |
}, | |
), | |
infer_args: false, | |
}, | |
], | |
}, | |
hir_ref_id: HirId { | |
owner: DefId(0:5 ~ generics_assoc_type[6ffc]::{impl#0}), | |
local_id: 5, | |
}, | |
}, | |
), | |
self_ty: Ty { | |
hir_id: HirId { | |
owner: DefId(0:5 ~ generics_assoc_type[6ffc]::{impl#0}), | |
local_id: 6, | |
}, | |
kind: Path( | |
Resolved( | |
None, | |
Path { | |
span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:7:24: 7:25 (#0), | |
res: Def( | |
TyParam, | |
DefId(0:6 ~ generics_assoc_type[6ffc]::{impl#0}::T), | |
), | |
segments: [ | |
PathSegment { | |
ident: T#0, | |
hir_id: Some( | |
HirId { | |
owner: DefId(0:5 ~ generics_assoc_type[6ffc]::{impl#0}), | |
local_id: 7, | |
}, | |
), | |
res: Some( | |
Def( | |
TyParam, | |
DefId(0:6 ~ generics_assoc_type[6ffc]::{impl#0}::T), | |
), | |
), | |
args: None, | |
infer_args: false, | |
}, | |
], | |
}, | |
), | |
), | |
span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:7:24: 7:25 (#0), | |
}, | |
items: [], | |
}, | |
), | |
span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:7:1: 7:28 (#0), | |
vis_span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:7:1: 7:1 (#0), | |
}, | |
), | |
}, | |
), | |
Some( | |
ParentedNode { | |
parent: 0, | |
node: GenericParam( | |
GenericParam { | |
hir_id: HirId { | |
owner: DefId(0:5 ~ generics_assoc_type[6ffc]::{impl#0}), | |
local_id: 1, | |
}, | |
name: Plain( | |
T#0, | |
), | |
span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:7:6: 7:7 (#0), | |
pure_wrt_drop: false, | |
kind: Type { | |
default: None, | |
synthetic: false, | |
}, | |
colon_span: None, | |
}, | |
), | |
}, | |
), | |
Some( | |
ParentedNode { | |
parent: 5, | |
node: Ty( | |
Ty { | |
hir_id: HirId { | |
owner: DefId(0:5 ~ generics_assoc_type[6ffc]::{impl#0}), | |
local_id: 2, | |
}, | |
kind: Path( | |
Resolved( | |
None, | |
Path { | |
span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:7:17: 7:18 (#0), | |
res: Def( | |
TyParam, | |
DefId(0:6 ~ generics_assoc_type[6ffc]::{impl#0}::T), | |
), | |
segments: [ | |
PathSegment { | |
ident: T#0, | |
hir_id: Some( | |
HirId { | |
owner: DefId(0:5 ~ generics_assoc_type[6ffc]::{impl#0}), | |
local_id: 3, | |
}, | |
), | |
res: Some( | |
Def( | |
TyParam, | |
DefId(0:6 ~ generics_assoc_type[6ffc]::{impl#0}::T), | |
), | |
), | |
args: None, | |
infer_args: false, | |
}, | |
], | |
}, | |
), | |
), | |
span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:7:17: 7:18 (#0), | |
}, | |
), | |
}, | |
), | |
Some( | |
ParentedNode { | |
parent: 2, | |
node: PathSegment( | |
PathSegment { | |
ident: T#0, | |
hir_id: Some( | |
HirId { | |
owner: DefId(0:5 ~ generics_assoc_type[6ffc]::{impl#0}), | |
local_id: 3, | |
}, | |
), | |
res: Some( | |
Def( | |
TyParam, | |
DefId(0:6 ~ generics_assoc_type[6ffc]::{impl#0}::T), | |
), | |
), | |
args: None, | |
infer_args: false, | |
}, | |
), | |
}, | |
), | |
Some( | |
ParentedNode { | |
parent: 5, | |
node: PathSegment( | |
PathSegment { | |
ident: MyTrait#0, | |
hir_id: Some( | |
HirId { | |
owner: DefId(0:5 ~ generics_assoc_type[6ffc]::{impl#0}), | |
local_id: 4, | |
}, | |
), | |
res: Some( | |
Def( | |
Trait, | |
DefId(0:3 ~ generics_assoc_type[6ffc]::MyTrait), | |
), | |
), | |
args: Some( | |
GenericArgs { | |
args: [ | |
Type( | |
Ty { | |
hir_id: HirId { | |
owner: DefId(0:5 ~ generics_assoc_type[6ffc]::{impl#0}), | |
local_id: 2, | |
}, | |
kind: Path( | |
Resolved( | |
None, | |
Path { | |
span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:7:17: 7:18 (#0), | |
res: Def( | |
TyParam, | |
DefId(0:6 ~ generics_assoc_type[6ffc]::{impl#0}::T), | |
), | |
segments: [ | |
PathSegment { | |
ident: T#0, | |
hir_id: Some( | |
HirId { | |
owner: DefId(0:5 ~ generics_assoc_type[6ffc]::{impl#0}), | |
local_id: 3, | |
}, | |
), | |
res: Some( | |
Def( | |
TyParam, | |
DefId(0:6 ~ generics_assoc_type[6ffc]::{impl#0}::T), | |
), | |
), | |
args: None, | |
infer_args: false, | |
}, | |
], | |
}, | |
), | |
), | |
span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:7:17: 7:18 (#0), | |
}, | |
), | |
], | |
bindings: [], | |
parenthesized: false, | |
span_ext: src/test/ui/impl-trait/v2/generics-assoc-type.rs:7:16: 7:19 (#0), | |
}, | |
), | |
infer_args: false, | |
}, | |
), | |
}, | |
), | |
Some( | |
ParentedNode { | |
parent: 0, | |
node: TraitRef( | |
TraitRef { | |
path: Path { | |
span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:7:9: 7:19 (#0), | |
res: Def( | |
Trait, | |
DefId(0:3 ~ generics_assoc_type[6ffc]::MyTrait), | |
), | |
segments: [ | |
PathSegment { | |
ident: MyTrait#0, | |
hir_id: Some( | |
HirId { | |
owner: DefId(0:5 ~ generics_assoc_type[6ffc]::{impl#0}), | |
local_id: 4, | |
}, | |
), | |
res: Some( | |
Def( | |
Trait, | |
DefId(0:3 ~ generics_assoc_type[6ffc]::MyTrait), | |
), | |
), | |
args: Some( | |
GenericArgs { | |
args: [ | |
Type( | |
Ty { | |
hir_id: HirId { | |
owner: DefId(0:5 ~ generics_assoc_type[6ffc]::{impl#0}), | |
local_id: 2, | |
}, | |
kind: Path( | |
Resolved( | |
None, | |
Path { | |
span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:7:17: 7:18 (#0), | |
res: Def( | |
TyParam, | |
DefId(0:6 ~ generics_assoc_type[6ffc]::{impl#0}::T), | |
), | |
segments: [ | |
PathSegment { | |
ident: T#0, | |
hir_id: Some( | |
HirId { | |
owner: DefId(0:5 ~ generics_assoc_type[6ffc]::{impl#0}), | |
local_id: 3, | |
}, | |
), | |
res: Some( | |
Def( | |
TyParam, | |
DefId(0:6 ~ generics_assoc_type[6ffc]::{impl#0}::T), | |
), | |
), | |
args: None, | |
infer_args: false, | |
}, | |
], | |
}, | |
), | |
), | |
span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:7:17: 7:18 (#0), | |
}, | |
), | |
], | |
bindings: [], | |
parenthesized: false, | |
span_ext: src/test/ui/impl-trait/v2/generics-assoc-type.rs:7:16: 7:19 (#0), | |
}, | |
), | |
infer_args: false, | |
}, | |
], | |
}, | |
hir_ref_id: HirId { | |
owner: DefId(0:5 ~ generics_assoc_type[6ffc]::{impl#0}), | |
local_id: 5, | |
}, | |
}, | |
), | |
}, | |
), | |
Some( | |
ParentedNode { | |
parent: 0, | |
node: Ty( | |
Ty { | |
hir_id: HirId { | |
owner: DefId(0:5 ~ generics_assoc_type[6ffc]::{impl#0}), | |
local_id: 6, | |
}, | |
kind: Path( | |
Resolved( | |
None, | |
Path { | |
span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:7:24: 7:25 (#0), | |
res: Def( | |
TyParam, | |
DefId(0:6 ~ generics_assoc_type[6ffc]::{impl#0}::T), | |
), | |
segments: [ | |
PathSegment { | |
ident: T#0, | |
hir_id: Some( | |
HirId { | |
owner: DefId(0:5 ~ generics_assoc_type[6ffc]::{impl#0}), | |
local_id: 7, | |
}, | |
), | |
res: Some( | |
Def( | |
TyParam, | |
DefId(0:6 ~ generics_assoc_type[6ffc]::{impl#0}::T), | |
), | |
), | |
args: None, | |
infer_args: false, | |
}, | |
], | |
}, | |
), | |
), | |
span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:7:24: 7:25 (#0), | |
}, | |
), | |
}, | |
), | |
Some( | |
ParentedNode { | |
parent: 6, | |
node: PathSegment( | |
PathSegment { | |
ident: T#0, | |
hir_id: Some( | |
HirId { | |
owner: DefId(0:5 ~ generics_assoc_type[6ffc]::{impl#0}), | |
local_id: 7, | |
}, | |
), | |
res: Some( | |
Def( | |
TyParam, | |
DefId(0:6 ~ generics_assoc_type[6ffc]::{impl#0}::T), | |
), | |
), | |
args: None, | |
infer_args: false, | |
}, | |
), | |
}, | |
), | |
], | |
bodies: SortedMap { | |
data: [], | |
}, | |
local_id_to_def_id: SortedMap { | |
data: [ | |
( | |
1, | |
DefId(0:6 ~ generics_assoc_type[6ffc]::{impl#0}::T), | |
), | |
], | |
}, | |
}, | |
parenting: {}, | |
attrs: AttributeMap { | |
map: SortedMap { | |
data: [], | |
}, | |
hash: Fingerprint( | |
9785122672296426403, | |
8173264106939382879, | |
), | |
}, | |
trait_map: {}, | |
}, | |
), | |
NonOwner( | |
HirId { | |
owner: DefId(0:5 ~ generics_assoc_type[6ffc]::{impl#0}), | |
local_id: 1, | |
}, | |
), | |
Owner( | |
OwnerInfo { | |
nodes: OwnerNodes { | |
hash_including_bodies: Fingerprint( | |
13492238440088531015, | |
8207355885255493941, | |
), | |
hash_without_bodies: Fingerprint( | |
16574084362546078889, | |
1960572351838366407, | |
), | |
nodes: [ | |
Some( | |
ParentedNode { | |
parent: 4294967040, | |
node: Item( | |
Item { | |
ident: ident_as_my_trait#0, | |
def_id: DefId(0:7 ~ generics_assoc_type[6ffc]::ident_as_my_trait), | |
kind: Fn( | |
FnSig { | |
header: FnHeader { | |
unsafety: Normal, | |
constness: NotConst, | |
asyncness: NotAsync, | |
abi: Rust, | |
}, | |
decl: FnDecl { | |
inputs: [ | |
Ty { | |
hir_id: HirId { | |
owner: DefId(0:7 ~ generics_assoc_type[6ffc]::ident_as_my_trait), | |
local_id: 16, | |
}, | |
kind: Rptr( | |
lifetime(HirId { owner: DefId(0:7 ~ generics_assoc_type[6ffc]::ident_as_my_trait), local_id: 13 }: 'a), | |
MutTy { | |
ty: Ty { | |
hir_id: HirId { | |
owner: DefId(0:7 ~ generics_assoc_type[6ffc]::ident_as_my_trait), | |
local_id: 14, | |
}, | |
kind: Path( | |
Resolved( | |
None, | |
Path { | |
span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:9:41: 9:44 (#0), | |
res: PrimTy( | |
Int( | |
I32, | |
), | |
), | |
segments: [ | |
PathSegment { | |
ident: i32#0, | |
hir_id: Some( | |
HirId { | |
owner: DefId(0:7 ~ generics_assoc_type[6ffc]::ident_as_my_trait), | |
local_id: 15, | |
}, | |
), | |
res: Some( | |
Err, | |
), | |
args: None, | |
infer_args: false, | |
}, | |
], | |
}, | |
), | |
), | |
span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:9:41: 9:44 (#0), | |
}, | |
mutbl: Not, | |
}, | |
), | |
span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:9:37: 9:44 (#0), | |
}, | |
Ty { | |
hir_id: HirId { | |
owner: DefId(0:7 ~ generics_assoc_type[6ffc]::ident_as_my_trait), | |
local_id: 17, | |
}, | |
kind: Path( | |
Resolved( | |
None, | |
Path { | |
span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:9:49: 9:50 (#0), | |
res: Def( | |
TyParam, | |
DefId(0:9 ~ generics_assoc_type[6ffc]::ident_as_my_trait::T), | |
), | |
segments: [ | |
PathSegment { | |
ident: T#0, | |
hir_id: Some( | |
HirId { | |
owner: DefId(0:7 ~ generics_assoc_type[6ffc]::ident_as_my_trait), | |
local_id: 18, | |
}, | |
), | |
res: Some( | |
Def( | |
TyParam, | |
DefId(0:9 ~ generics_assoc_type[6ffc]::ident_as_my_trait::T), | |
), | |
), | |
args: None, | |
infer_args: false, | |
}, | |
], | |
}, | |
), | |
), | |
span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:9:49: 9:50 (#0), | |
}, | |
], | |
output: Return( | |
Ty { | |
hir_id: HirId { | |
owner: DefId(0:7 ~ generics_assoc_type[6ffc]::ident_as_my_trait), | |
local_id: 20, | |
}, | |
kind: OpaqueDef( | |
ItemId { | |
def_id: DefId(0:10 ~ generics_assoc_type[6ffc]::ident_as_my_trait::{opaque#0}), | |
}, | |
[ | |
Type( | |
Ty { | |
hir_id: HirId { | |
owner: DefId(0:7 ~ generics_assoc_type[6ffc]::ident_as_my_trait), | |
local_id: 19, | |
}, | |
kind: Path( | |
Resolved( | |
None, | |
Path { | |
span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:9:26: 9:27 (#0), | |
res: Def( | |
TyParam, | |
DefId(0:9 ~ generics_assoc_type[6ffc]::ident_as_my_trait::T), | |
), | |
segments: [ | |
PathSegment { | |
ident: T#0, | |
hir_id: None, | |
res: None, | |
args: None, | |
infer_args: true, | |
}, | |
], | |
}, | |
), | |
), | |
span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:9:26: 9:27 (#0), | |
}, | |
), | |
], | |
), | |
span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:9:55: 9:70 (#0), | |
}, | |
), | |
c_variadic: false, | |
implicit_self: None, | |
}, | |
span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:9:1: 9:70 (#0), | |
}, | |
Generics { | |
params: [ | |
GenericParam { | |
hir_id: HirId { | |
owner: DefId(0:7 ~ generics_assoc_type[6ffc]::ident_as_my_trait), | |
local_id: 11, | |
}, | |
name: Plain( | |
'a#0, | |
), | |
span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:9:22: 9:24 (#0), | |
pure_wrt_drop: false, | |
kind: Lifetime { | |
kind: Explicit, | |
}, | |
colon_span: None, | |
}, | |
GenericParam { | |
hir_id: HirId { | |
owner: DefId(0:7 ~ generics_assoc_type[6ffc]::ident_as_my_trait), | |
local_id: 12, | |
}, | |
name: Plain( | |
T#0, | |
), | |
span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:9:26: 9:27 (#0), | |
pure_wrt_drop: false, | |
kind: Type { | |
default: None, | |
synthetic: false, | |
}, | |
colon_span: Some( | |
src/test/ui/impl-trait/v2/generics-assoc-type.rs:9:27: 9:28 (#0), | |
), | |
}, | |
], | |
predicates: [ | |
BoundPredicate( | |
WhereBoundPredicate { | |
span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:9:27: 9:31 (#0), | |
origin: GenericParam, | |
bound_generic_params: [], | |
bounded_ty: Ty { | |
hir_id: HirId { | |
owner: DefId(0:7 ~ generics_assoc_type[6ffc]::ident_as_my_trait), | |
local_id: 10, | |
}, | |
kind: Path( | |
Resolved( | |
None, | |
Path { | |
span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:9:26: 9:27 (#0), | |
res: Def( | |
TyParam, | |
DefId(0:9 ~ generics_assoc_type[6ffc]::ident_as_my_trait::T), | |
), | |
segments: [ | |
PathSegment { | |
ident: T#0, | |
hir_id: None, | |
res: None, | |
args: None, | |
infer_args: true, | |
}, | |
], | |
}, | |
), | |
), | |
span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:9:26: 9:27 (#0), | |
}, | |
bounds: [ | |
Outlives( | |
lifetime(HirId { owner: DefId(0:7 ~ generics_assoc_type[6ffc]::ident_as_my_trait), local_id: 9 }: 'a), | |
), | |
], | |
}, | |
), | |
], | |
has_where_clause: false, | |
where_clause_span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:9:70: 9:70 (#0), | |
span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:9:21: 9:32 (#0), | |
}, | |
BodyId { | |
hir_id: HirId { | |
owner: DefId(0:7 ~ generics_assoc_type[6ffc]::ident_as_my_trait), | |
local_id: 8, | |
}, | |
}, | |
), | |
span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:9:1: 13:2 (#0), | |
vis_span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:9:1: 9:1 (#0), | |
}, | |
), | |
}, | |
), | |
Some( | |
ParentedNode { | |
parent: 0, | |
node: Param( | |
Param { | |
hir_id: HirId { | |
owner: DefId(0:7 ~ generics_assoc_type[6ffc]::ident_as_my_trait), | |
local_id: 1, | |
}, | |
pat: Pat { | |
hir_id: HirId { | |
owner: DefId(0:7 ~ generics_assoc_type[6ffc]::ident_as_my_trait), | |
local_id: 2, | |
}, | |
kind: Binding( | |
Unannotated, | |
HirId { | |
owner: DefId(0:7 ~ generics_assoc_type[6ffc]::ident_as_my_trait), | |
local_id: 2, | |
}, | |
_u#0, | |
None, | |
), | |
span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:9:33: 9:35 (#0), | |
default_binding_modes: true, | |
}, | |
ty_span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:9:37: 9:44 (#0), | |
span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:9:33: 9:44 (#0), | |
}, | |
), | |
}, | |
), | |
Some( | |
ParentedNode { | |
parent: 1, | |
node: Binding( | |
Pat { | |
hir_id: HirId { | |
owner: DefId(0:7 ~ generics_assoc_type[6ffc]::ident_as_my_trait), | |
local_id: 2, | |
}, | |
kind: Binding( | |
Unannotated, | |
HirId { | |
owner: DefId(0:7 ~ generics_assoc_type[6ffc]::ident_as_my_trait), | |
local_id: 2, | |
}, | |
_u#0, | |
None, | |
), | |
span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:9:33: 9:35 (#0), | |
default_binding_modes: true, | |
}, | |
), | |
}, | |
), | |
Some( | |
ParentedNode { | |
parent: 0, | |
node: Param( | |
Param { | |
hir_id: HirId { | |
owner: DefId(0:7 ~ generics_assoc_type[6ffc]::ident_as_my_trait), | |
local_id: 3, | |
}, | |
pat: Pat { | |
hir_id: HirId { | |
owner: DefId(0:7 ~ generics_assoc_type[6ffc]::ident_as_my_trait), | |
local_id: 4, | |
}, | |
kind: Binding( | |
Unannotated, | |
HirId { | |
owner: DefId(0:7 ~ generics_assoc_type[6ffc]::ident_as_my_trait), | |
local_id: 4, | |
}, | |
t#0, | |
None, | |
), | |
span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:9:46: 9:47 (#0), | |
default_binding_modes: true, | |
}, | |
ty_span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:9:49: 9:50 (#0), | |
span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:9:46: 9:50 (#0), | |
}, | |
), | |
}, | |
), | |
Some( | |
ParentedNode { | |
parent: 3, | |
node: Binding( | |
Pat { | |
hir_id: HirId { | |
owner: DefId(0:7 ~ generics_assoc_type[6ffc]::ident_as_my_trait), | |
local_id: 4, | |
}, | |
kind: Binding( | |
Unannotated, | |
HirId { | |
owner: DefId(0:7 ~ generics_assoc_type[6ffc]::ident_as_my_trait), | |
local_id: 4, | |
}, | |
t#0, | |
None, | |
), | |
span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:9:46: 9:47 (#0), | |
default_binding_modes: true, | |
}, | |
), | |
}, | |
), | |
Some( | |
ParentedNode { | |
parent: 6, | |
node: PathSegment( | |
PathSegment { | |
ident: t#0, | |
hir_id: Some( | |
HirId { | |
owner: DefId(0:7 ~ generics_assoc_type[6ffc]::ident_as_my_trait), | |
local_id: 5, | |
}, | |
), | |
res: Some( | |
Local( | |
HirId { | |
owner: DefId(0:7 ~ generics_assoc_type[6ffc]::ident_as_my_trait), | |
local_id: 4, | |
}, | |
), | |
), | |
args: None, | |
infer_args: true, | |
}, | |
), | |
}, | |
), | |
Some( | |
ParentedNode { | |
parent: 7, | |
node: Expr( | |
Expr { | |
hir_id: HirId { | |
owner: DefId(0:7 ~ generics_assoc_type[6ffc]::ident_as_my_trait), | |
local_id: 6, | |
}, | |
kind: Path( | |
Resolved( | |
None, | |
Path { | |
span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:12:5: 12:6 (#0), | |
res: Local( | |
HirId { | |
owner: DefId(0:7 ~ generics_assoc_type[6ffc]::ident_as_my_trait), | |
local_id: 4, | |
}, | |
), | |
segments: [ | |
PathSegment { | |
ident: t#0, | |
hir_id: Some( | |
HirId { | |
owner: DefId(0:7 ~ generics_assoc_type[6ffc]::ident_as_my_trait), | |
local_id: 5, | |
}, | |
), | |
res: Some( | |
Local( | |
HirId { | |
owner: DefId(0:7 ~ generics_assoc_type[6ffc]::ident_as_my_trait), | |
local_id: 4, | |
}, | |
), | |
), | |
args: None, | |
infer_args: true, | |
}, | |
], | |
}, | |
), | |
), | |
span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:12:5: 12:6 (#0), | |
}, | |
), | |
}, | |
), | |
Some( | |
ParentedNode { | |
parent: 8, | |
node: Block( | |
Block { | |
stmts: [], | |
expr: Some( | |
Expr { | |
hir_id: HirId { | |
owner: DefId(0:7 ~ generics_assoc_type[6ffc]::ident_as_my_trait), | |
local_id: 6, | |
}, | |
kind: Path( | |
Resolved( | |
None, | |
Path { | |
span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:12:5: 12:6 (#0), | |
res: Local( | |
HirId { | |
owner: DefId(0:7 ~ generics_assoc_type[6ffc]::ident_as_my_trait), | |
local_id: 4, | |
}, | |
), | |
segments: [ | |
PathSegment { | |
ident: t#0, | |
hir_id: Some( | |
HirId { | |
owner: DefId(0:7 ~ generics_assoc_type[6ffc]::ident_as_my_trait), | |
local_id: 5, | |
}, | |
), | |
res: Some( | |
Local( | |
HirId { | |
owner: DefId(0:7 ~ generics_assoc_type[6ffc]::ident_as_my_trait), | |
local_id: 4, | |
}, | |
), | |
), | |
args: None, | |
infer_args: true, | |
}, | |
], | |
}, | |
), | |
), | |
span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:12:5: 12:6 (#0), | |
}, | |
), | |
hir_id: HirId { | |
owner: DefId(0:7 ~ generics_assoc_type[6ffc]::ident_as_my_trait), | |
local_id: 7, | |
}, | |
rules: DefaultBlock, | |
span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:11:1: 13:2 (#0), | |
targeted_by_break: false, | |
}, | |
), | |
}, | |
), | |
Some( | |
ParentedNode { | |
parent: 0, | |
node: Expr( | |
Expr { | |
hir_id: HirId { | |
owner: DefId(0:7 ~ generics_assoc_type[6ffc]::ident_as_my_trait), | |
local_id: 8, | |
}, | |
kind: Block( | |
Block { | |
stmts: [], | |
expr: Some( | |
Expr { | |
hir_id: HirId { | |
owner: DefId(0:7 ~ generics_assoc_type[6ffc]::ident_as_my_trait), | |
local_id: 6, | |
}, | |
kind: Path( | |
Resolved( | |
None, | |
Path { | |
span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:12:5: 12:6 (#0), | |
res: Local( | |
HirId { | |
owner: DefId(0:7 ~ generics_assoc_type[6ffc]::ident_as_my_trait), | |
local_id: 4, | |
}, | |
), | |
segments: [ | |
PathSegment { | |
ident: t#0, | |
hir_id: Some( | |
HirId { | |
owner: DefId(0:7 ~ generics_assoc_type[6ffc]::ident_as_my_trait), | |
local_id: 5, | |
}, | |
), | |
res: Some( | |
Local( | |
HirId { | |
owner: DefId(0:7 ~ generics_assoc_type[6ffc]::ident_as_my_trait), | |
local_id: 4, | |
}, | |
), | |
), | |
args: None, | |
infer_args: true, | |
}, | |
], | |
}, | |
), | |
), | |
span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:12:5: 12:6 (#0), | |
}, | |
), | |
hir_id: HirId { | |
owner: DefId(0:7 ~ generics_assoc_type[6ffc]::ident_as_my_trait), | |
local_id: 7, | |
}, | |
rules: DefaultBlock, | |
span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:11:1: 13:2 (#0), | |
targeted_by_break: false, | |
}, | |
None, | |
), | |
span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:11:1: 13:2 (#0), | |
}, | |
), | |
}, | |
), | |
Some( | |
ParentedNode { | |
parent: 0, | |
node: Lifetime( | |
lifetime(HirId { owner: DefId(0:7 ~ generics_assoc_type[6ffc]::ident_as_my_trait), local_id: 9 }: 'a), | |
), | |
}, | |
), | |
Some( | |
ParentedNode { | |
parent: 0, | |
node: Ty( | |
Ty { | |
hir_id: HirId { | |
owner: DefId(0:7 ~ generics_assoc_type[6ffc]::ident_as_my_trait), | |
local_id: 10, | |
}, | |
kind: Path( | |
Resolved( | |
None, | |
Path { | |
span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:9:26: 9:27 (#0), | |
res: Def( | |
TyParam, | |
DefId(0:9 ~ generics_assoc_type[6ffc]::ident_as_my_trait::T), | |
), | |
segments: [ | |
PathSegment { | |
ident: T#0, | |
hir_id: None, | |
res: None, | |
args: None, | |
infer_args: true, | |
}, | |
], | |
}, | |
), | |
), | |
span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:9:26: 9:27 (#0), | |
}, | |
), | |
}, | |
), | |
Some( | |
ParentedNode { | |
parent: 0, | |
node: GenericParam( | |
GenericParam { | |
hir_id: HirId { | |
owner: DefId(0:7 ~ generics_assoc_type[6ffc]::ident_as_my_trait), | |
local_id: 11, | |
}, | |
name: Plain( | |
'a#0, | |
), | |
span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:9:22: 9:24 (#0), | |
pure_wrt_drop: false, | |
kind: Lifetime { | |
kind: Explicit, | |
}, | |
colon_span: None, | |
}, | |
), | |
}, | |
), | |
Some( | |
ParentedNode { | |
parent: 0, | |
node: GenericParam( | |
GenericParam { | |
hir_id: HirId { | |
owner: DefId(0:7 ~ generics_assoc_type[6ffc]::ident_as_my_trait), | |
local_id: 12, | |
}, | |
name: Plain( | |
T#0, | |
), | |
span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:9:26: 9:27 (#0), | |
pure_wrt_drop: false, | |
kind: Type { | |
default: None, | |
synthetic: false, | |
}, | |
colon_span: Some( | |
src/test/ui/impl-trait/v2/generics-assoc-type.rs:9:27: 9:28 (#0), | |
), | |
}, | |
), | |
}, | |
), | |
Some( | |
ParentedNode { | |
parent: 16, | |
node: Lifetime( | |
lifetime(HirId { owner: DefId(0:7 ~ generics_assoc_type[6ffc]::ident_as_my_trait), local_id: 13 }: 'a), | |
), | |
}, | |
), | |
Some( | |
ParentedNode { | |
parent: 16, | |
node: Ty( | |
Ty { | |
hir_id: HirId { | |
owner: DefId(0:7 ~ generics_assoc_type[6ffc]::ident_as_my_trait), | |
local_id: 14, | |
}, | |
kind: Path( | |
Resolved( | |
None, | |
Path { | |
span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:9:41: 9:44 (#0), | |
res: PrimTy( | |
Int( | |
I32, | |
), | |
), | |
segments: [ | |
PathSegment { | |
ident: i32#0, | |
hir_id: Some( | |
HirId { | |
owner: DefId(0:7 ~ generics_assoc_type[6ffc]::ident_as_my_trait), | |
local_id: 15, | |
}, | |
), | |
res: Some( | |
Err, | |
), | |
args: None, | |
infer_args: false, | |
}, | |
], | |
}, | |
), | |
), | |
span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:9:41: 9:44 (#0), | |
}, | |
), | |
}, | |
), | |
Some( | |
ParentedNode { | |
parent: 14, | |
node: PathSegment( | |
PathSegment { | |
ident: i32#0, | |
hir_id: Some( | |
HirId { | |
owner: DefId(0:7 ~ generics_assoc_type[6ffc]::ident_as_my_trait), | |
local_id: 15, | |
}, | |
), | |
res: Some( | |
Err, | |
), | |
args: None, | |
infer_args: false, | |
}, | |
), | |
}, | |
), | |
Some( | |
ParentedNode { | |
parent: 0, | |
node: Ty( | |
Ty { | |
hir_id: HirId { | |
owner: DefId(0:7 ~ generics_assoc_type[6ffc]::ident_as_my_trait), | |
local_id: 16, | |
}, | |
kind: Rptr( | |
lifetime(HirId { owner: DefId(0:7 ~ generics_assoc_type[6ffc]::ident_as_my_trait), local_id: 13 }: 'a), | |
MutTy { | |
ty: Ty { | |
hir_id: HirId { | |
owner: DefId(0:7 ~ generics_assoc_type[6ffc]::ident_as_my_trait), | |
local_id: 14, | |
}, | |
kind: Path( | |
Resolved( | |
None, | |
Path { | |
span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:9:41: 9:44 (#0), | |
res: PrimTy( | |
Int( | |
I32, | |
), | |
), | |
segments: [ | |
PathSegment { | |
ident: i32#0, | |
hir_id: Some( | |
HirId { | |
owner: DefId(0:7 ~ generics_assoc_type[6ffc]::ident_as_my_trait), | |
local_id: 15, | |
}, | |
), | |
res: Some( | |
Err, | |
), | |
args: None, | |
infer_args: false, | |
}, | |
], | |
}, | |
), | |
), | |
span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:9:41: 9:44 (#0), | |
}, | |
mutbl: Not, | |
}, | |
), | |
span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:9:37: 9:44 (#0), | |
}, | |
), | |
}, | |
), | |
Some( | |
ParentedNode { | |
parent: 0, | |
node: Ty( | |
Ty { | |
hir_id: HirId { | |
owner: DefId(0:7 ~ generics_assoc_type[6ffc]::ident_as_my_trait), | |
local_id: 17, | |
}, | |
kind: Path( | |
Resolved( | |
None, | |
Path { | |
span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:9:49: 9:50 (#0), | |
res: Def( | |
TyParam, | |
DefId(0:9 ~ generics_assoc_type[6ffc]::ident_as_my_trait::T), | |
), | |
segments: [ | |
PathSegment { | |
ident: T#0, | |
hir_id: Some( | |
HirId { | |
owner: DefId(0:7 ~ generics_assoc_type[6ffc]::ident_as_my_trait), | |
local_id: 18, | |
}, | |
), | |
res: Some( | |
Def( | |
TyParam, | |
DefId(0:9 ~ generics_assoc_type[6ffc]::ident_as_my_trait::T), | |
), | |
), | |
args: None, | |
infer_args: false, | |
}, | |
], | |
}, | |
), | |
), | |
span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:9:49: 9:50 (#0), | |
}, | |
), | |
}, | |
), | |
Some( | |
ParentedNode { | |
parent: 17, | |
node: PathSegment( | |
PathSegment { | |
ident: T#0, | |
hir_id: Some( | |
HirId { | |
owner: DefId(0:7 ~ generics_assoc_type[6ffc]::ident_as_my_trait), | |
local_id: 18, | |
}, | |
), | |
res: Some( | |
Def( | |
TyParam, | |
DefId(0:9 ~ generics_assoc_type[6ffc]::ident_as_my_trait::T), | |
), | |
), | |
args: None, | |
infer_args: false, | |
}, | |
), | |
}, | |
), | |
Some( | |
ParentedNode { | |
parent: 20, | |
node: Ty( | |
Ty { | |
hir_id: HirId { | |
owner: DefId(0:7 ~ generics_assoc_type[6ffc]::ident_as_my_trait), | |
local_id: 19, | |
}, | |
kind: Path( | |
Resolved( | |
None, | |
Path { | |
span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:9:26: 9:27 (#0), | |
res: Def( | |
TyParam, | |
DefId(0:9 ~ generics_assoc_type[6ffc]::ident_as_my_trait::T), | |
), | |
segments: [ | |
PathSegment { | |
ident: T#0, | |
hir_id: None, | |
res: None, | |
args: None, | |
infer_args: true, | |
}, | |
], | |
}, | |
), | |
), | |
span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:9:26: 9:27 (#0), | |
}, | |
), | |
}, | |
), | |
Some( | |
ParentedNode { | |
parent: 0, | |
node: Ty( | |
Ty { | |
hir_id: HirId { | |
owner: DefId(0:7 ~ generics_assoc_type[6ffc]::ident_as_my_trait), | |
local_id: 20, | |
}, | |
kind: OpaqueDef( | |
ItemId { | |
def_id: DefId(0:10 ~ generics_assoc_type[6ffc]::ident_as_my_trait::{opaque#0}), | |
}, | |
[ | |
Type( | |
Ty { | |
hir_id: HirId { | |
owner: DefId(0:7 ~ generics_assoc_type[6ffc]::ident_as_my_trait), | |
local_id: 19, | |
}, | |
kind: Path( | |
Resolved( | |
None, | |
Path { | |
span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:9:26: 9:27 (#0), | |
res: Def( | |
TyParam, | |
DefId(0:9 ~ generics_assoc_type[6ffc]::ident_as_my_trait::T), | |
), | |
segments: [ | |
PathSegment { | |
ident: T#0, | |
hir_id: None, | |
res: None, | |
args: None, | |
infer_args: true, | |
}, | |
], | |
}, | |
), | |
), | |
span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:9:26: 9:27 (#0), | |
}, | |
), | |
], | |
), | |
span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:9:55: 9:70 (#0), | |
}, | |
), | |
}, | |
), | |
], | |
bodies: SortedMap { | |
data: [ | |
( | |
8, | |
Body { | |
params: [ | |
Param { | |
hir_id: HirId { | |
owner: DefId(0:7 ~ generics_assoc_type[6ffc]::ident_as_my_trait), | |
local_id: 1, | |
}, | |
pat: Pat { | |
hir_id: HirId { | |
owner: DefId(0:7 ~ generics_assoc_type[6ffc]::ident_as_my_trait), | |
local_id: 2, | |
}, | |
kind: Binding( | |
Unannotated, | |
HirId { | |
owner: DefId(0:7 ~ generics_assoc_type[6ffc]::ident_as_my_trait), | |
local_id: 2, | |
}, | |
_u#0, | |
None, | |
), | |
span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:9:33: 9:35 (#0), | |
default_binding_modes: true, | |
}, | |
ty_span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:9:37: 9:44 (#0), | |
span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:9:33: 9:44 (#0), | |
}, | |
Param { | |
hir_id: HirId { | |
owner: DefId(0:7 ~ generics_assoc_type[6ffc]::ident_as_my_trait), | |
local_id: 3, | |
}, | |
pat: Pat { | |
hir_id: HirId { | |
owner: DefId(0:7 ~ generics_assoc_type[6ffc]::ident_as_my_trait), | |
local_id: 4, | |
}, | |
kind: Binding( | |
Unannotated, | |
HirId { | |
owner: DefId(0:7 ~ generics_assoc_type[6ffc]::ident_as_my_trait), | |
local_id: 4, | |
}, | |
t#0, | |
None, | |
), | |
span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:9:46: 9:47 (#0), | |
default_binding_modes: true, | |
}, | |
ty_span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:9:49: 9:50 (#0), | |
span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:9:46: 9:50 (#0), | |
}, | |
], | |
value: Expr { | |
hir_id: HirId { | |
owner: DefId(0:7 ~ generics_assoc_type[6ffc]::ident_as_my_trait), | |
local_id: 8, | |
}, | |
kind: Block( | |
Block { | |
stmts: [], | |
expr: Some( | |
Expr { | |
hir_id: HirId { | |
owner: DefId(0:7 ~ generics_assoc_type[6ffc]::ident_as_my_trait), | |
local_id: 6, | |
}, | |
kind: Path( | |
Resolved( | |
None, | |
Path { | |
span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:12:5: 12:6 (#0), | |
res: Local( | |
HirId { | |
owner: DefId(0:7 ~ generics_assoc_type[6ffc]::ident_as_my_trait), | |
local_id: 4, | |
}, | |
), | |
segments: [ | |
PathSegment { | |
ident: t#0, | |
hir_id: Some( | |
HirId { | |
owner: DefId(0:7 ~ generics_assoc_type[6ffc]::ident_as_my_trait), | |
local_id: 5, | |
}, | |
), | |
res: Some( | |
Local( | |
HirId { | |
owner: DefId(0:7 ~ generics_assoc_type[6ffc]::ident_as_my_trait), | |
local_id: 4, | |
}, | |
), | |
), | |
args: None, | |
infer_args: true, | |
}, | |
], | |
}, | |
), | |
), | |
span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:12:5: 12:6 (#0), | |
}, | |
), | |
hir_id: HirId { | |
owner: DefId(0:7 ~ generics_assoc_type[6ffc]::ident_as_my_trait), | |
local_id: 7, | |
}, | |
rules: DefaultBlock, | |
span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:11:1: 13:2 (#0), | |
targeted_by_break: false, | |
}, | |
None, | |
), | |
span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:11:1: 13:2 (#0), | |
}, | |
generator_kind: None, | |
}, | |
), | |
], | |
}, | |
local_id_to_def_id: SortedMap { | |
data: [ | |
( | |
11, | |
DefId(0:8 ~ generics_assoc_type[6ffc]::ident_as_my_trait::'a), | |
), | |
( | |
12, | |
DefId(0:9 ~ generics_assoc_type[6ffc]::ident_as_my_trait::T), | |
), | |
], | |
}, | |
}, | |
parenting: { | |
DefId(0:10 ~ generics_assoc_type[6ffc]::ident_as_my_trait::{opaque#0}): 20, | |
}, | |
attrs: AttributeMap { | |
map: SortedMap { | |
data: [], | |
}, | |
hash: Fingerprint( | |
9785122672296426403, | |
8173264106939382879, | |
), | |
}, | |
trait_map: {}, | |
}, | |
), | |
NonOwner( | |
HirId { | |
owner: DefId(0:7 ~ generics_assoc_type[6ffc]::ident_as_my_trait), | |
local_id: 11, | |
}, | |
), | |
NonOwner( | |
HirId { | |
owner: DefId(0:7 ~ generics_assoc_type[6ffc]::ident_as_my_trait), | |
local_id: 12, | |
}, | |
), | |
Owner( | |
OwnerInfo { | |
nodes: OwnerNodes { | |
hash_including_bodies: Fingerprint( | |
9150891897564583736, | |
15114382044165551975, | |
), | |
hash_without_bodies: Fingerprint( | |
9150891897564583736, | |
15114382044165551975, | |
), | |
nodes: [ | |
Some( | |
ParentedNode { | |
parent: 4294967040, | |
node: Item( | |
Item { | |
ident: #0, | |
def_id: DefId(0:10 ~ generics_assoc_type[6ffc]::ident_as_my_trait::{opaque#0}), | |
kind: OpaqueTy( | |
OpaqueTy { | |
generics: Generics { | |
params: [ | |
GenericParam { | |
hir_id: HirId { | |
owner: DefId(0:10 ~ generics_assoc_type[6ffc]::ident_as_my_trait::{opaque#0}), | |
local_id: 5, | |
}, | |
name: Plain( | |
MY-T#0, | |
), | |
span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:9:26: 9:27 (#0), | |
pure_wrt_drop: false, | |
kind: Type { | |
default: None, | |
synthetic: false, | |
}, | |
colon_span: Some( | |
src/test/ui/impl-trait/v2/generics-assoc-type.rs:9:27: 9:28 (#0), | |
), | |
}, | |
], | |
predicates: [ | |
BoundPredicate( | |
WhereBoundPredicate { | |
span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:9:27: 9:31 (#0), | |
origin: GenericParam, | |
bound_generic_params: [], | |
bounded_ty: Ty { | |
hir_id: HirId { | |
owner: DefId(0:10 ~ generics_assoc_type[6ffc]::ident_as_my_trait::{opaque#0}), | |
local_id: 7, | |
}, | |
kind: Path( | |
Resolved( | |
None, | |
Path { | |
span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:9:26: 9:27 (#0), | |
res: Def( | |
TyParam, | |
DefId(0:12 ~ generics_assoc_type[6ffc]::ident_as_my_trait::{opaque#0}::{opaque#0}), | |
), | |
segments: [ | |
PathSegment { | |
ident: T#0, | |
hir_id: None, | |
res: None, | |
args: None, | |
infer_args: true, | |
}, | |
], | |
}, | |
), | |
), | |
span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:9:26: 9:27 (#0), | |
}, | |
bounds: [ | |
Outlives( | |
lifetime(HirId { owner: DefId(0:10 ~ generics_assoc_type[6ffc]::ident_as_my_trait::{opaque#0}), local_id: 6 }: 'static), | |
), | |
], | |
}, | |
), | |
], | |
has_where_clause: true, | |
where_clause_span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:9:55: 9:70 (#0), | |
span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:9:55: 9:70 (#0), | |
}, | |
bounds: [ | |
Trait( | |
PolyTraitRef { | |
bound_generic_params: [], | |
trait_ref: TraitRef { | |
path: Path { | |
span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:9:60: 9:70 (#0), | |
res: Def( | |
Trait, | |
DefId(0:3 ~ generics_assoc_type[6ffc]::MyTrait), | |
), | |
segments: [ | |
PathSegment { | |
ident: MyTrait#0, | |
hir_id: Some( | |
HirId { | |
owner: DefId(0:10 ~ generics_assoc_type[6ffc]::ident_as_my_trait::{opaque#0}), | |
local_id: 3, | |
}, | |
), | |
res: Some( | |
Def( | |
Trait, | |
DefId(0:3 ~ generics_assoc_type[6ffc]::MyTrait), | |
), | |
), | |
args: Some( | |
GenericArgs { | |
args: [ | |
Type( | |
Ty { | |
hir_id: HirId { | |
owner: DefId(0:10 ~ generics_assoc_type[6ffc]::ident_as_my_trait::{opaque#0}), | |
local_id: 1, | |
}, | |
kind: Path( | |
Resolved( | |
None, | |
Path { | |
span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:9:68: 9:69 (#0), | |
res: Def( | |
TyParam, | |
DefId(0:9 ~ generics_assoc_type[6ffc]::ident_as_my_trait::T), | |
), | |
segments: [ | |
PathSegment { | |
ident: T#0, | |
hir_id: Some( | |
HirId { | |
owner: DefId(0:10 ~ generics_assoc_type[6ffc]::ident_as_my_trait::{opaque#0}), | |
local_id: 2, | |
}, | |
), | |
res: Some( | |
Def( | |
TyParam, | |
DefId(0:9 ~ generics_assoc_type[6ffc]::ident_as_my_trait::T), | |
), | |
), | |
args: None, | |
infer_args: false, | |
}, | |
], | |
}, | |
), | |
), | |
span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:9:68: 9:69 (#0), | |
}, | |
), | |
], | |
bindings: [], | |
parenthesized: false, | |
span_ext: src/test/ui/impl-trait/v2/generics-assoc-type.rs:9:67: 9:70 (#0), | |
}, | |
), | |
infer_args: false, | |
}, | |
], | |
}, | |
hir_ref_id: HirId { | |
owner: DefId(0:10 ~ generics_assoc_type[6ffc]::ident_as_my_trait::{opaque#0}), | |
local_id: 4, | |
}, | |
}, | |
span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:9:60: 9:70 (#0), | |
}, | |
None, | |
), | |
], | |
origin: FnReturn( | |
DefId(0:7 ~ generics_assoc_type[6ffc]::ident_as_my_trait), | |
), | |
}, | |
), | |
span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:9:55: 9:70 (#4), | |
vis_span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:9:55: 9:55 (#0), | |
}, | |
), | |
}, | |
), | |
Some( | |
ParentedNode { | |
parent: 4, | |
node: Ty( | |
Ty { | |
hir_id: HirId { | |
owner: DefId(0:10 ~ generics_assoc_type[6ffc]::ident_as_my_trait::{opaque#0}), | |
local_id: 1, | |
}, | |
kind: Path( | |
Resolved( | |
None, | |
Path { | |
span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:9:68: 9:69 (#0), | |
res: Def( | |
TyParam, | |
DefId(0:9 ~ generics_assoc_type[6ffc]::ident_as_my_trait::T), | |
), | |
segments: [ | |
PathSegment { | |
ident: T#0, | |
hir_id: Some( | |
HirId { | |
owner: DefId(0:10 ~ generics_assoc_type[6ffc]::ident_as_my_trait::{opaque#0}), | |
local_id: 2, | |
}, | |
), | |
res: Some( | |
Def( | |
TyParam, | |
DefId(0:9 ~ generics_assoc_type[6ffc]::ident_as_my_trait::T), | |
), | |
), | |
args: None, | |
infer_args: false, | |
}, | |
], | |
}, | |
), | |
), | |
span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:9:68: 9:69 (#0), | |
}, | |
), | |
}, | |
), | |
Some( | |
ParentedNode { | |
parent: 1, | |
node: PathSegment( | |
PathSegment { | |
ident: T#0, | |
hir_id: Some( | |
HirId { | |
owner: DefId(0:10 ~ generics_assoc_type[6ffc]::ident_as_my_trait::{opaque#0}), | |
local_id: 2, | |
}, | |
), | |
res: Some( | |
Def( | |
TyParam, | |
DefId(0:9 ~ generics_assoc_type[6ffc]::ident_as_my_trait::T), | |
), | |
), | |
args: None, | |
infer_args: false, | |
}, | |
), | |
}, | |
), | |
Some( | |
ParentedNode { | |
parent: 4, | |
node: PathSegment( | |
PathSegment { | |
ident: MyTrait#0, | |
hir_id: Some( | |
HirId { | |
owner: DefId(0:10 ~ generics_assoc_type[6ffc]::ident_as_my_trait::{opaque#0}), | |
local_id: 3, | |
}, | |
), | |
res: Some( | |
Def( | |
Trait, | |
DefId(0:3 ~ generics_assoc_type[6ffc]::MyTrait), | |
), | |
), | |
args: Some( | |
GenericArgs { | |
args: [ | |
Type( | |
Ty { | |
hir_id: HirId { | |
owner: DefId(0:10 ~ generics_assoc_type[6ffc]::ident_as_my_trait::{opaque#0}), | |
local_id: 1, | |
}, | |
kind: Path( | |
Resolved( | |
None, | |
Path { | |
span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:9:68: 9:69 (#0), | |
res: Def( | |
TyParam, | |
DefId(0:9 ~ generics_assoc_type[6ffc]::ident_as_my_trait::T), | |
), | |
segments: [ | |
PathSegment { | |
ident: T#0, | |
hir_id: Some( | |
HirId { | |
owner: DefId(0:10 ~ generics_assoc_type[6ffc]::ident_as_my_trait::{opaque#0}), | |
local_id: 2, | |
}, | |
), | |
res: Some( | |
Def( | |
TyParam, | |
DefId(0:9 ~ generics_assoc_type[6ffc]::ident_as_my_trait::T), | |
), | |
), | |
args: None, | |
infer_args: false, | |
}, | |
], | |
}, | |
), | |
), | |
span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:9:68: 9:69 (#0), | |
}, | |
), | |
], | |
bindings: [], | |
parenthesized: false, | |
span_ext: src/test/ui/impl-trait/v2/generics-assoc-type.rs:9:67: 9:70 (#0), | |
}, | |
), | |
infer_args: false, | |
}, | |
), | |
}, | |
), | |
Some( | |
ParentedNode { | |
parent: 0, | |
node: TraitRef( | |
TraitRef { | |
path: Path { | |
span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:9:60: 9:70 (#0), | |
res: Def( | |
Trait, | |
DefId(0:3 ~ generics_assoc_type[6ffc]::MyTrait), | |
), | |
segments: [ | |
PathSegment { | |
ident: MyTrait#0, | |
hir_id: Some( | |
HirId { | |
owner: DefId(0:10 ~ generics_assoc_type[6ffc]::ident_as_my_trait::{opaque#0}), | |
local_id: 3, | |
}, | |
), | |
res: Some( | |
Def( | |
Trait, | |
DefId(0:3 ~ generics_assoc_type[6ffc]::MyTrait), | |
), | |
), | |
args: Some( | |
GenericArgs { | |
args: [ | |
Type( | |
Ty { | |
hir_id: HirId { | |
owner: DefId(0:10 ~ generics_assoc_type[6ffc]::ident_as_my_trait::{opaque#0}), | |
local_id: 1, | |
}, | |
kind: Path( | |
Resolved( | |
None, | |
Path { | |
span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:9:68: 9:69 (#0), | |
res: Def( | |
TyParam, | |
DefId(0:9 ~ generics_assoc_type[6ffc]::ident_as_my_trait::T), | |
), | |
segments: [ | |
PathSegment { | |
ident: T#0, | |
hir_id: Some( | |
HirId { | |
owner: DefId(0:10 ~ generics_assoc_type[6ffc]::ident_as_my_trait::{opaque#0}), | |
local_id: 2, | |
}, | |
), | |
res: Some( | |
Def( | |
TyParam, | |
DefId(0:9 ~ generics_assoc_type[6ffc]::ident_as_my_trait::T), | |
), | |
), | |
args: None, | |
infer_args: false, | |
}, | |
], | |
}, | |
), | |
), | |
span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:9:68: 9:69 (#0), | |
}, | |
), | |
], | |
bindings: [], | |
parenthesized: false, | |
span_ext: src/test/ui/impl-trait/v2/generics-assoc-type.rs:9:67: 9:70 (#0), | |
}, | |
), | |
infer_args: false, | |
}, | |
], | |
}, | |
hir_ref_id: HirId { | |
owner: DefId(0:10 ~ generics_assoc_type[6ffc]::ident_as_my_trait::{opaque#0}), | |
local_id: 4, | |
}, | |
}, | |
), | |
}, | |
), | |
Some( | |
ParentedNode { | |
parent: 0, | |
node: GenericParam( | |
GenericParam { | |
hir_id: HirId { | |
owner: DefId(0:10 ~ generics_assoc_type[6ffc]::ident_as_my_trait::{opaque#0}), | |
local_id: 5, | |
}, | |
name: Plain( | |
MY-T#0, | |
), | |
span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:9:26: 9:27 (#0), | |
pure_wrt_drop: false, | |
kind: Type { | |
default: None, | |
synthetic: false, | |
}, | |
colon_span: Some( | |
src/test/ui/impl-trait/v2/generics-assoc-type.rs:9:27: 9:28 (#0), | |
), | |
}, | |
), | |
}, | |
), | |
Some( | |
ParentedNode { | |
parent: 0, | |
node: Lifetime( | |
lifetime(HirId { owner: DefId(0:10 ~ generics_assoc_type[6ffc]::ident_as_my_trait::{opaque#0}), local_id: 6 }: 'static), | |
), | |
}, | |
), | |
Some( | |
ParentedNode { | |
parent: 0, | |
node: Ty( | |
Ty { | |
hir_id: HirId { | |
owner: DefId(0:10 ~ generics_assoc_type[6ffc]::ident_as_my_trait::{opaque#0}), | |
local_id: 7, | |
}, | |
kind: Path( | |
Resolved( | |
None, | |
Path { | |
span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:9:26: 9:27 (#0), | |
res: Def( | |
TyParam, | |
DefId(0:12 ~ generics_assoc_type[6ffc]::ident_as_my_trait::{opaque#0}::{opaque#0}), | |
), | |
segments: [ | |
PathSegment { | |
ident: T#0, | |
hir_id: None, | |
res: None, | |
args: None, | |
infer_args: true, | |
}, | |
], | |
}, | |
), | |
), | |
span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:9:26: 9:27 (#0), | |
}, | |
), | |
}, | |
), | |
], | |
bodies: SortedMap { | |
data: [], | |
}, | |
local_id_to_def_id: SortedMap { | |
data: [ | |
( | |
5, | |
DefId(0:12 ~ generics_assoc_type[6ffc]::ident_as_my_trait::{opaque#0}::{opaque#0}), | |
), | |
], | |
}, | |
}, | |
parenting: {}, | |
attrs: AttributeMap { | |
map: SortedMap { | |
data: [], | |
}, | |
hash: Fingerprint( | |
9785122672296426403, | |
8173264106939382879, | |
), | |
}, | |
trait_map: {}, | |
}, | |
), | |
Owner( | |
OwnerInfo { | |
nodes: OwnerNodes { | |
hash_including_bodies: Fingerprint( | |
10917372661717951675, | |
13174488397025809559, | |
), | |
hash_without_bodies: Fingerprint( | |
4102467661430514911, | |
15908994690320940187, | |
), | |
nodes: [ | |
Some( | |
ParentedNode { | |
parent: 4294967040, | |
node: Item( | |
Item { | |
ident: main#0, | |
def_id: DefId(0:11 ~ generics_assoc_type[6ffc]::main), | |
kind: Fn( | |
FnSig { | |
header: FnHeader { | |
unsafety: Normal, | |
constness: NotConst, | |
asyncness: NotAsync, | |
abi: Rust, | |
}, | |
decl: FnDecl { | |
inputs: [], | |
output: DefaultReturn( | |
src/test/ui/impl-trait/v2/generics-assoc-type.rs:15:11: 15:11 (#0), | |
), | |
c_variadic: false, | |
implicit_self: None, | |
}, | |
span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:15:1: 15:10 (#0), | |
}, | |
Generics { | |
params: [], | |
predicates: [], | |
has_where_clause: false, | |
where_clause_span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:15:10: 15:10 (#0), | |
span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:15:8: 15:8 (#0), | |
}, | |
BodyId { | |
hir_id: HirId { | |
owner: DefId(0:11 ~ generics_assoc_type[6ffc]::main), | |
local_id: 2, | |
}, | |
}, | |
), | |
span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:15:1: 15:13 (#0), | |
vis_span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:15:1: 15:1 (#0), | |
}, | |
), | |
}, | |
), | |
Some( | |
ParentedNode { | |
parent: 2, | |
node: Block( | |
Block { | |
stmts: [], | |
expr: None, | |
hir_id: HirId { | |
owner: DefId(0:11 ~ generics_assoc_type[6ffc]::main), | |
local_id: 1, | |
}, | |
rules: DefaultBlock, | |
span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:15:11: 15:13 (#0), | |
targeted_by_break: false, | |
}, | |
), | |
}, | |
), | |
Some( | |
ParentedNode { | |
parent: 0, | |
node: Expr( | |
Expr { | |
hir_id: HirId { | |
owner: DefId(0:11 ~ generics_assoc_type[6ffc]::main), | |
local_id: 2, | |
}, | |
kind: Block( | |
Block { | |
stmts: [], | |
expr: None, | |
hir_id: HirId { | |
owner: DefId(0:11 ~ generics_assoc_type[6ffc]::main), | |
local_id: 1, | |
}, | |
rules: DefaultBlock, | |
span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:15:11: 15:13 (#0), | |
targeted_by_break: false, | |
}, | |
None, | |
), | |
span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:15:11: 15:13 (#0), | |
}, | |
), | |
}, | |
), | |
], | |
bodies: SortedMap { | |
data: [ | |
( | |
2, | |
Body { | |
params: [], | |
value: Expr { | |
hir_id: HirId { | |
owner: DefId(0:11 ~ generics_assoc_type[6ffc]::main), | |
local_id: 2, | |
}, | |
kind: Block( | |
Block { | |
stmts: [], | |
expr: None, | |
hir_id: HirId { | |
owner: DefId(0:11 ~ generics_assoc_type[6ffc]::main), | |
local_id: 1, | |
}, | |
rules: DefaultBlock, | |
span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:15:11: 15:13 (#0), | |
targeted_by_break: false, | |
}, | |
None, | |
), | |
span: src/test/ui/impl-trait/v2/generics-assoc-type.rs:15:11: 15:13 (#0), | |
}, | |
generator_kind: None, | |
}, | |
), | |
], | |
}, | |
local_id_to_def_id: SortedMap { | |
data: [], | |
}, | |
}, | |
parenting: {}, | |
attrs: AttributeMap { | |
map: SortedMap { | |
data: [], | |
}, | |
hash: Fingerprint( | |
9785122672296426403, | |
8173264106939382879, | |
), | |
}, | |
trait_map: {}, | |
}, | |
), | |
NonOwner( | |
HirId { | |
owner: DefId(0:10 ~ generics_assoc_type[6ffc]::ident_as_my_trait::{opaque#0}), | |
local_id: 5, | |
}, | |
), | |
], | |
hir_hash: Fingerprint( | |
1710843298986704284, | |
5916981205317546554, | |
), | |
} |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment