System\Text\Json\Serialization\Metadata\JsonTypeInfo.cs (19)
627ThrowHelper.ThrowInvalidOperationException_NoMetadataForTypeProperties(Options.TypeInfoResolver, Type);
765internal JsonNumberHandling EffectiveNumberHandling => _numberHandling ?? Options.NumberHandling;
950Options.MakeReadOnly();
955lock (Options.CacheContext)
986Debug.Assert(Monitor.IsEntered(Options.CacheContext), "Configure called directly, use EnsureConfigured which synchronizes access to this method");
987Debug.Assert(Options.IsReadOnly);
996PolymorphicTypeResolver = new PolymorphicTypeResolver(Options, PolymorphismOptions, Type, Converter.CanHaveMetadata);
1012_elementTypeInfo ??= Options.GetTypeInfoInternal(ElementType);
1018_keyTypeInfo ??= Options.GetTypeInfoInternal(KeyType);
1036BuildUnionValueTypeMap(UnionCases, Options, this);
1139factory = Options.GetTypeClassifierFromList(ctx);
1144JsonTypeClassifier classifier = factory.CreateJsonClassifier(ctx, Options);
1319if (Options.CanUseFastPathSerializationLogic)
1325return OriginatingResolver.IsCompatibleWithOptions(Options);
1460if (Options.TryGetTypeInfoCached(propertyType, out JsonTypeInfo? jsonTypeInfo))
1465jsonPropertyInfo = jsonTypeInfo.CreateJsonPropertyInfo(declaringTypeInfo: this, declaringType, Options);
1474parameters: new object[] { declaringType ?? Type, this, Options })!;
1525StringComparer comparer = Options.PropertyNameCaseInsensitive ? StringComparer.OrdinalIgnoreCase : StringComparer.Ordinal;
1593? Options.UnmappedMemberHandling
System\Text\Json\Serialization\Metadata\JsonTypeInfoOfT.cs (1)
254Options)
System\Text\Json\Serialization\Metadata\JsonTypeInfoOfT.WriteHelpers.cs (12)
45Options.TryGetPolymorphicTypeInfoForRootType(rootValue, out JsonTypeInfo? derivedTypeInfo))
56bool success = EffectiveConverter.WriteCore(writer, rootValue, Options, ref state);
67PooledByteBufferWriter writer = new PooledByteBufferWriter(Options.DefaultBufferSize, utf8Json);
104Utf8JsonWriter writer = jsonLineWriter ?? Utf8JsonWriterCache.RentWriter(Options, pipeWriter);
151Options.TryGetPolymorphicTypeInfoForRootType(rootValue, out JsonTypeInfo? derivedTypeInfo))
173Utf8JsonWriter writer = jsonLineWriter ?? new Utf8JsonWriter(pipeWriter, Options.GetWriterOptions());
183isFinalBlock = EffectiveConverter.WriteCore(writer, rootValue, Options, ref state);
297Utf8JsonWriter writer = Utf8JsonWriterCache.RentWriterAndBuffer(Options, out PooledByteBufferWriter bufferWriter);
319Options.TryGetPolymorphicTypeInfoForRootType(rootValue, out JsonTypeInfo? polymorphicTypeInfo))
333Utf8JsonWriter writer = Utf8JsonWriterCache.RentWriterAndBuffer(Options, out PooledByteBufferWriter bufferWriter);
343isFinalBlock = EffectiveConverter.WriteCore(writer, rootValue, Options, ref state);
403if ((ulong)serializationSize > (ulong)(Options.DefaultBufferSize / 2))