),
},
}
+For closure=DefId(0:4 ~ arrays_completely_captured[317d]::main::{closure#0}): min_captures={
+ HirId {
+ owner: DefId(0:3 ~ arrays_completely_captured[317d]::main),
+ local_id: 1,
+ }: [
+ CapturedPlace {
+ place: Place {
+ base_ty: [i32; 5],
+ base: Upvar(
+ UpvarId(HirId { owner: DefId(0:3 ~ arrays_completely_captured[317d]::main), local_id: 1 };`m`;DefId(0:4 ~ arrays_completely_captured[317d]::main::{closure#0})),
+ ),
+ projections: [],
+ },
+ info: CaptureInfo {
+ expr_id: Some(
+ HirId {
+ owner: DefId(0:3 ~ arrays_completely_captured[317d]::main),
+ local_id: 12,
+ },
+ ),
+ capture_kind: ByRef(
+ UpvarBorrow(MutBorrow, '_#6r),
+ ),
+ },
+ },
+ ],
+}
),
},
}
+For closure=DefId(0:7 ~ capture_disjoint_field_struct[317d]::main::{closure#0}): min_captures={
+ HirId {
+ owner: DefId(0:6 ~ capture_disjoint_field_struct[317d]::main),
+ local_id: 1,
+ }: [
+ CapturedPlace {
+ place: Place {
+ base_ty: Point,
+ base: Upvar(
+ UpvarId(HirId { owner: DefId(0:6 ~ capture_disjoint_field_struct[317d]::main), local_id: 1 };`p`;DefId(0:7 ~ capture_disjoint_field_struct[317d]::main::{closure#0})),
+ ),
+ projections: [
+ Projection {
+ ty: i32,
+ kind: Field(
+ 0,
+ 0,
+ ),
+ },
+ ],
+ },
+ info: CaptureInfo {
+ expr_id: Some(
+ HirId {
+ owner: DefId(0:6 ~ capture_disjoint_field_struct[317d]::main),
+ local_id: 31,
+ },
+ ),
+ capture_kind: ByRef(
+ UpvarBorrow(ImmBorrow, '_#35r),
+ ),
+ },
+ },
+ ],
+}
),
},
}
+For closure=DefId(0:4 ~ capture_disjoint_field_tuple[317d]::main::{closure#0}): min_captures={
+ HirId {
+ owner: DefId(0:3 ~ capture_disjoint_field_tuple[317d]::main),
+ local_id: 1,
+ }: [
+ CapturedPlace {
+ place: Place {
+ base_ty: (i32, i32),
+ base: Upvar(
+ UpvarId(HirId { owner: DefId(0:3 ~ capture_disjoint_field_tuple[317d]::main), local_id: 1 };`t`;DefId(0:4 ~ capture_disjoint_field_tuple[317d]::main::{closure#0})),
+ ),
+ projections: [
+ Projection {
+ ty: i32,
+ kind: Field(
+ 0,
+ 0,
+ ),
+ },
+ ],
+ },
+ info: CaptureInfo {
+ expr_id: Some(
+ HirId {
+ owner: DefId(0:3 ~ capture_disjoint_field_tuple[317d]::main),
+ local_id: 28,
+ },
+ ),
+ capture_kind: ByRef(
+ UpvarBorrow(ImmBorrow, '_#35r),
+ ),
+ },
+ },
+ ],
+}
),
},
}
+For closure=DefId(0:4 ~ feature_gate_capture_disjoint_fields[317d]::main::{closure#0}): min_captures={
+ HirId {
+ owner: DefId(0:3 ~ feature_gate_capture_disjoint_fields[317d]::main),
+ local_id: 1,
+ }: [
+ CapturedPlace {
+ place: Place {
+ base_ty: std::string::String,
+ base: Upvar(
+ UpvarId(HirId { owner: DefId(0:3 ~ feature_gate_capture_disjoint_fields[317d]::main), local_id: 1 };`s`;DefId(0:4 ~ feature_gate_capture_disjoint_fields[317d]::main::{closure#0})),
+ ),
+ projections: [],
+ },
+ info: CaptureInfo {
+ expr_id: Some(
+ HirId {
+ owner: DefId(0:3 ~ feature_gate_capture_disjoint_fields[317d]::main),
+ local_id: 52,
+ },
+ ),
+ capture_kind: ByRef(
+ UpvarBorrow(ImmBorrow, '_#50r),
+ ),
+ },
+ },
+ ],
+}
),
},
}
+For closure=DefId(0:12 ~ filter_on_struct_member[317d]::{impl#1}::update::{closure#0}): min_captures={
+ HirId {
+ owner: DefId(0:11 ~ filter_on_struct_member[317d]::{impl#1}::update),
+ local_id: 1,
+ }: [
+ CapturedPlace {
+ place: Place {
+ base_ty: &mut Data,
+ base: Upvar(
+ UpvarId(HirId { owner: DefId(0:11 ~ filter_on_struct_member[317d]::{impl#1}::update), local_id: 1 };`self`;DefId(0:12 ~ filter_on_struct_member[317d]::{impl#1}::update::{closure#0})),
+ ),
+ projections: [
+ Projection {
+ ty: Data,
+ kind: Deref,
+ },
+ Projection {
+ ty: Filter,
+ kind: Field(
+ 0,
+ 0,
+ ),
+ },
+ ],
+ },
+ info: CaptureInfo {
+ expr_id: Some(
+ HirId {
+ owner: DefId(0:11 ~ filter_on_struct_member[317d]::{impl#1}::update),
+ local_id: 13,
+ },
+ ),
+ capture_kind: ByRef(
+ UpvarBorrow(ImmBorrow, '_#7r),
+ ),
+ },
+ },
+ ],
+}
),
},
}
+For closure=DefId(0:9 ~ multilevel_path_1[317d]::main::{closure#0}): min_captures={
+ HirId {
+ owner: DefId(0:8 ~ multilevel_path_1[317d]::main),
+ local_id: 1,
+ }: [
+ CapturedPlace {
+ place: Place {
+ base_ty: Wrapper,
+ base: Upvar(
+ UpvarId(HirId { owner: DefId(0:8 ~ multilevel_path_1[317d]::main), local_id: 1 };`w`;DefId(0:9 ~ multilevel_path_1[317d]::main::{closure#0})),
+ ),
+ projections: [
+ Projection {
+ ty: Point,
+ kind: Field(
+ 0,
+ 0,
+ ),
+ },
+ ],
+ },
+ info: CaptureInfo {
+ expr_id: Some(
+ HirId {
+ owner: DefId(0:8 ~ multilevel_path_1[317d]::main),
+ local_id: 20,
+ },
+ ),
+ capture_kind: ByRef(
+ UpvarBorrow(ImmBorrow, '_#37r),
+ ),
+ },
+ },
+ ],
+}
),
},
}
+For closure=DefId(0:9 ~ multilevel_path_2[317d]::main::{closure#0}): min_captures={
+ HirId {
+ owner: DefId(0:8 ~ multilevel_path_2[317d]::main),
+ local_id: 1,
+ }: [
+ CapturedPlace {
+ place: Place {
+ base_ty: Wrapper,
+ base: Upvar(
+ UpvarId(HirId { owner: DefId(0:8 ~ multilevel_path_2[317d]::main), local_id: 1 };`w`;DefId(0:9 ~ multilevel_path_2[317d]::main::{closure#0})),
+ ),
+ projections: [
+ Projection {
+ ty: Point,
+ kind: Field(
+ 0,
+ 0,
+ ),
+ },
+ Projection {
+ ty: i32,
+ kind: Field(
+ 0,
+ 0,
+ ),
+ },
+ ],
+ },
+ info: CaptureInfo {
+ expr_id: Some(
+ HirId {
+ owner: DefId(0:8 ~ multilevel_path_2[317d]::main),
+ local_id: 35,
+ },
+ ),
+ capture_kind: ByRef(
+ UpvarBorrow(ImmBorrow, '_#35r),
+ ),
+ },
+ },
+ ],
+}
),
},
}
+For closure=DefId(0:8 ~ nested_closure[317d]::main::{closure#0}::{closure#0}): min_captures={
+ HirId {
+ owner: DefId(0:6 ~ nested_closure[317d]::main),
+ local_id: 1,
+ }: [
+ CapturedPlace {
+ place: Place {
+ base_ty: Point,
+ base: Upvar(
+ UpvarId(HirId { owner: DefId(0:6 ~ nested_closure[317d]::main), local_id: 1 };`p`;DefId(0:8 ~ nested_closure[317d]::main::{closure#0}::{closure#0})),
+ ),
+ projections: [
+ Projection {
+ ty: i32,
+ kind: Field(
+ 1,
+ 0,
+ ),
+ },
+ ],
+ },
+ info: CaptureInfo {
+ expr_id: Some(
+ HirId {
+ owner: DefId(0:6 ~ nested_closure[317d]::main),
+ local_id: 70,
+ },
+ ),
+ capture_kind: ByRef(
+ UpvarBorrow(MutBorrow, '_#109r),
+ ),
+ },
+ },
+ ],
+ HirId {
+ owner: DefId(0:6 ~ nested_closure[317d]::main),
+ local_id: 5,
+ }: [
+ CapturedPlace {
+ place: Place {
+ base_ty: i32,
+ base: Upvar(
+ UpvarId(HirId { owner: DefId(0:6 ~ nested_closure[317d]::main), local_id: 5 };`incr`;DefId(0:8 ~ nested_closure[317d]::main::{closure#0}::{closure#0})),
+ ),
+ projections: [],
+ },
+ info: CaptureInfo {
+ expr_id: Some(
+ HirId {
+ owner: DefId(0:6 ~ nested_closure[317d]::main),
+ local_id: 72,
+ },
+ ),
+ capture_kind: ByRef(
+ UpvarBorrow(ImmBorrow, '_#110r),
+ ),
+ },
+ },
+ ],
+}
For closure=DefId(0:7 ~ nested_closure[317d]::main::{closure#0}): Using new-style capture analysis
For closure=DefId(0:7 ~ nested_closure[317d]::main::{closure#0}): capture information: {
Place {
),
},
}
+For closure=DefId(0:7 ~ nested_closure[317d]::main::{closure#0}): min_captures={
+ HirId {
+ owner: DefId(0:6 ~ nested_closure[317d]::main),
+ local_id: 1,
+ }: [
+ CapturedPlace {
+ place: Place {
+ base_ty: Point,
+ base: Upvar(
+ UpvarId(HirId { owner: DefId(0:6 ~ nested_closure[317d]::main), local_id: 1 };`p`;DefId(0:7 ~ nested_closure[317d]::main::{closure#0})),
+ ),
+ projections: [
+ Projection {
+ ty: i32,
+ kind: Field(
+ 0,
+ 0,
+ ),
+ },
+ ],
+ },
+ info: CaptureInfo {
+ expr_id: Some(
+ HirId {
+ owner: DefId(0:6 ~ nested_closure[317d]::main),
+ local_id: 37,
+ },
+ ),
+ capture_kind: ByRef(
+ UpvarBorrow(ImmBorrow, '_#114r),
+ ),
+ },
+ },
+ CapturedPlace {
+ place: Place {
+ base_ty: Point,
+ base: Upvar(
+ UpvarId(HirId { owner: DefId(0:6 ~ nested_closure[317d]::main), local_id: 1 };`p`;DefId(0:7 ~ nested_closure[317d]::main::{closure#0})),
+ ),
+ projections: [
+ Projection {
+ ty: i32,
+ kind: Field(
+ 1,
+ 0,
+ ),
+ },
+ ],
+ },
+ info: CaptureInfo {
+ expr_id: Some(
+ HirId {
+ owner: DefId(0:6 ~ nested_closure[317d]::main),
+ local_id: 70,
+ },
+ ),
+ capture_kind: ByRef(
+ UpvarBorrow(MutBorrow, '_#115r),
+ ),
+ },
+ },
+ ],
+}
),
},
}
+For closure=DefId(0:10 ~ path_with_array_access[317d]::main::{closure#0}): min_captures={
+ HirId {
+ owner: DefId(0:9 ~ path_with_array_access[317d]::main),
+ local_id: 6,
+ }: [
+ CapturedPlace {
+ place: Place {
+ base_ty: Pentagon,
+ base: Upvar(
+ UpvarId(HirId { owner: DefId(0:9 ~ path_with_array_access[317d]::main), local_id: 6 };`pent`;DefId(0:10 ~ path_with_array_access[317d]::main::{closure#0})),
+ ),
+ projections: [
+ Projection {
+ ty: [Point; 5],
+ kind: Field(
+ 0,
+ 0,
+ ),
+ },
+ ],
+ },
+ info: CaptureInfo {
+ expr_id: Some(
+ HirId {
+ owner: DefId(0:9 ~ path_with_array_access[317d]::main),
+ local_id: 83,
+ },
+ ),
+ capture_kind: ByRef(
+ UpvarBorrow(ImmBorrow, '_#34r),
+ ),
+ },
+ },
+ ],
+}
),
},
}
+For closure=DefId(0:4 ~ simple_struct_min_capture[317d]::main::{closure#0}): min_captures={
+ HirId {
+ owner: DefId(0:3 ~ simple_struct_min_capture[317d]::main),
+ local_id: 1,
+ }: [
+ CapturedPlace {
+ place: Place {
+ base_ty: Point,
+ base: Upvar(
+ UpvarId(HirId { owner: DefId(0:3 ~ simple_struct_min_capture[317d]::main), local_id: 1 };`p`;DefId(0:4 ~ simple_struct_min_capture[317d]::main::{closure#0})),
+ ),
+ projections: [],
+ },
+ info: CaptureInfo {
+ expr_id: Some(
+ HirId {
+ owner: DefId(0:3 ~ simple_struct_min_capture[317d]::main),
+ local_id: 15,
+ },
+ ),
+ capture_kind: ByRef(
+ UpvarBorrow(MutBorrow, '_#34r),
+ ),
+ },
+ },
+ ],
+}
),
},
}
+For closure=DefId(0:5 ~ slice_pat[317d]::main::{closure#0}): min_captures={
+ HirId {
+ owner: DefId(0:3 ~ slice_pat[317d]::main),
+ local_id: 1,
+ }: [
+ CapturedPlace {
+ place: Place {
+ base_ty: [std::string::String; 5],
+ base: Upvar(
+ UpvarId(HirId { owner: DefId(0:3 ~ slice_pat[317d]::main), local_id: 1 };`arr`;DefId(0:5 ~ slice_pat[317d]::main::{closure#0})),
+ ),
+ projections: [],
+ },
+ info: CaptureInfo {
+ expr_id: Some(
+ HirId {
+ owner: DefId(0:3 ~ slice_pat[317d]::main),
+ local_id: 179,
+ },
+ ),
+ capture_kind: ByValue(
+ Some(
+ $DIR/slice-pat.rs:21:33: 21:36 (#0),
+ ),
+ ),
+ },
+ },
+ ],
+}