<PackageReference Include="System.Text.Json" Version="6.0.10" />

ReadStackFrame

using System.Collections.Generic; using System.Diagnostics; using System.Text.Json.Serialization; using System.Text.Json.Serialization.Converters; using System.Text.Json.Serialization.Metadata; namespace System.Text.Json { [DebuggerDisplay("ConverterStrategy.{JsonTypeInfo.PropertyInfoForTypeInfo.ConverterStrategy}, {JsonTypeInfo.Type.Name}")] internal struct ReadStackFrame { public JsonPropertyInfo JsonPropertyInfo; public StackFramePropertyState PropertyState; public bool UseExtensionProperty; public byte[] JsonPropertyName; public string JsonPropertyNameAsString; public object DictionaryKey; public int OriginalDepth; public JsonTokenType OriginalTokenType; public object ReturnValue; public JsonTypeInfo JsonTypeInfo; public StackFrameObjectState ObjectState; public LargeJsonObjectExtensionDataSerializationState LargeJsonObjectExtensionDataSerializationState; public bool ValidateEndTokenOnArray; public int PropertyIndex; public List<PropertyRef> PropertyRefCache; public int CtorArgumentStateIndex; public ArgumentState CtorArgumentState; public JsonNumberHandling? NumberHandling; public void EndConstructorParameter() { CtorArgumentState.JsonParameterInfo = null; JsonPropertyName = null; PropertyState = StackFramePropertyState.None; } public void EndProperty() { JsonPropertyInfo = null; JsonPropertyName = null; JsonPropertyNameAsString = null; PropertyState = StackFramePropertyState.None; ValidateEndTokenOnArray = false; } public void EndElement() { JsonPropertyNameAsString = null; PropertyState = StackFramePropertyState.None; } public bool IsProcessingDictionary() { return (JsonTypeInfo.PropertyInfoForTypeInfo.ConverterStrategy & ConverterStrategy.Dictionary) != ConverterStrategy.None; } public bool IsProcessingEnumerable() { return (JsonTypeInfo.PropertyInfoForTypeInfo.ConverterStrategy & ConverterStrategy.Enumerable) != ConverterStrategy.None; } } }