See this twitter thread for reference: https://twitter.com/neuecc/status/1589902671540256771?s=20&t=AcVRk8mwSdMyQJT2c5jyDg
Note: we could also consider avoiding reference tracking for types by default. There are some complexities involved, like what do you do with built-in types, eg string, byte[], List<object>. You could potentially have ref-tracking variants of the codecs or pass a reference tracking preference to the codec and have an attribute per-property to indicate a reference tracking preference.
See this twitter thread for reference: https://twitter.com/neuecc/status/1589902671540256771?s=20&t=AcVRk8mwSdMyQJT2c5jyDg
Note: we could also consider avoiding reference tracking for types by default. There are some complexities involved, like what do you do with built-in types, eg
string,byte[],List<object>. You could potentially have ref-tracking variants of the codecs or pass a reference tracking preference to the codec and have an attribute per-property to indicate a reference tracking preference.