1 #![warn(clippy::temporary_assignment)]
3 use std::ops::{Deref, DerefMut};
5 struct TupleStruct(i32);
16 inner: &'a mut Struct,
19 impl<'a> Deref for Wrapper<'a> {
21 fn deref(&self) -> &Struct {
26 impl<'a> DerefMut for Wrapper<'a> {
27 fn deref_mut(&mut self) -> &mut Struct {
36 const A: TupleStruct = TupleStruct(1);
37 const B: Struct = Struct { field: 1 };
38 const C: MultiStruct = MultiStruct {
39 structure: Struct { field: 1 },
41 const D: ArrayStruct = ArrayStruct { array: [1] };
44 let mut s = Struct { field: 0 };
47 Struct { field: 0 }.field = 1;
49 structure: Struct { field: 0 },
53 ArrayStruct { array: [0] }.array[0] = 1;
59 Wrapper { inner: &mut s }.field = 1;
60 let mut a_mut = TupleStruct(1);
62 let mut b_mut = Struct { field: 1 };
64 let mut c_mut = MultiStruct {
65 structure: Struct { field: 1 },
67 c_mut.structure.field = 2;
68 let mut d_mut = ArrayStruct { array: [1] };