internal static int Register <T, TSerializer>() where TSerializer : ITypeSerializer { var i = 0; if (JsonWriter <T> .WriteFn() != null) { i++; } if (JsonWriter.Instance.GetWriteFn <T>() != null) { i++; } if (JsonReader.Instance.GetParseFn <T>() != null) { i++; } if (JsonReader <T> .Parse(default(ReadOnlySpan <char>)) != null) { i++; } if (JsonReader <T> .GetParseFn() != null) { i++; } //if (JsWriter.GetTypeSerializer<JsonTypeSerializer>().GetWriteFn<T>() != null) i++; if (new List <T>() != null) { i++; } if (new T[0] != null) { i++; } JsConfig <T> .ExcludeTypeInfo = false; if (JsConfig <T> .OnDeserializedFn != null) { i++; } if (JsConfig <T> .HasDeserializeFn) { i++; } if (JsConfig <T> .SerializeFn != null) { i++; } if (JsConfig <T> .DeSerializeFn != null) { i++; } //JsConfig<T>.SerializeFn = arg => ""; //JsConfig<T>.DeSerializeFn = arg => default(T); if (TypeConfig <T> .Properties != null) { i++; } WriteListsOfElements <T, TSerializer> .WriteList(null, null); WriteListsOfElements <T, TSerializer> .WriteIList(null, null); WriteListsOfElements <T, TSerializer> .WriteEnumerable(null, null); WriteListsOfElements <T, TSerializer> .WriteListValueType(null, null); WriteListsOfElements <T, TSerializer> .WriteIListValueType(null, null); WriteListsOfElements <T, TSerializer> .WriteGenericArrayValueType(null, null); WriteListsOfElements <T, TSerializer> .WriteArray(null, null); TranslateListWithElements <T> .LateBoundTranslateToGenericICollection(null, null); TranslateListWithConvertibleElements <T, T> .LateBoundTranslateToGenericICollection(null, null); QueryStringWriter <T> .WriteObject(null, null); return(i); }
public static void InitAot <T>() { QueryStringWriter <T> .WriteFn(); }