As part of researching approaches to #1568 it was found that avoiding Type.MakeGenericType for our object converter (non-collections and non-valuetypes) will help "reach" scenarios (AOT platforms that may not support it) as well as improve CPU performance and reduce memory consumption.
This means that the T in JsonConverter<T> will be of type System.Object; some changes are necessary in the object factory and JsonConverter base classes for this to work.
As part of researching approaches to #1568 it was found that avoiding
Type.MakeGenericTypefor our object converter (non-collections and non-valuetypes) will help "reach" scenarios (AOT platforms that may not support it) as well as improve CPU performance and reduce memory consumption.This means that the
TinJsonConverter<T>will be of typeSystem.Object; some changes are necessary in the object factory and JsonConverter base classes for this to work.