File tree Expand file tree Collapse file tree 1 file changed +16
-0
lines changed Expand file tree Collapse file tree 1 file changed +16
-0
lines changed Original file line number Diff line number Diff line change @@ -1554,6 +1554,22 @@ where
1554
1554
_ => panic ! ( ) ,
1555
1555
} ,
1556
1556
Object :: FieldUnit ( field) => self . do_field_write ( field, object) ?,
1557
+ Object :: Reference { kind, inner } => {
1558
+ match kind {
1559
+ ReferenceKind :: RefOf => todo ! ( ) ,
1560
+ ReferenceKind :: LocalOrArg => {
1561
+ if let Object :: Reference { kind : inner_kind, inner : inner_inner } = & * * inner {
1562
+ // TODO: this should store into the reference, potentially doing an
1563
+ // implicit cast
1564
+ todo ! ( )
1565
+ } else {
1566
+ // Overwrite the value
1567
+ * inner. gain_mut ( ) = object. gain_mut ( ) . clone ( ) ;
1568
+ }
1569
+ }
1570
+ ReferenceKind :: Unresolved => todo ! ( ) ,
1571
+ }
1572
+ }
1557
1573
Object :: Debug => {
1558
1574
self . handler . handle_debug ( & * object) ;
1559
1575
}
You can’t perform that action at this time.
0 commit comments