File: Generated\Basic.CompilerLog.Util\Basic.CompilerLog.Util.Impl.BasicGeneratedFilesAnalyzerReference\JsonContext.GetJsonTypeInfo.g.cs
Project: ..\..\..\src\Libraries\Microsoft.Extensions.AI.Evaluation.Reporting.Azure\Microsoft.Extensions.AI.Evaluation.Reporting.Azure.csproj (Microsoft.Extensions.AI.Evaluation.Reporting.Azure)
// <auto-generated/>
 
#nullable enable annotations
#nullable disable warnings
 
// Suppress warnings about [Obsolete] member usage in generated code.
#pragma warning disable CS0612, CS0618
 
namespace Microsoft.Extensions.AI.Evaluation.Reporting.JsonSerialization
{
    internal static partial class AzureStorageJsonUtilities
    {
        private sealed partial class JsonContext : global::System.Text.Json.Serialization.Metadata.IJsonTypeInfoResolver
        {
            /// <inheritdoc/>
            public override global::System.Text.Json.Serialization.Metadata.JsonTypeInfo? GetTypeInfo(global::System.Type type)
            {
                Options.TryGetTypeInfo(type, out global::System.Text.Json.Serialization.Metadata.JsonTypeInfo? typeInfo);
                return typeInfo;
            }
 
            global::System.Text.Json.Serialization.Metadata.JsonTypeInfo? global::System.Text.Json.Serialization.Metadata.IJsonTypeInfoResolver.GetTypeInfo(global::System.Type type, global::System.Text.Json.JsonSerializerOptions options)
            {
                if (type == typeof(bool))
                {
                    return Create_Boolean(options);
                }
                if (type == typeof(bool?))
                {
                    return Create_NullableBoolean(options);
                }
                if (type == typeof(double))
                {
                    return Create_Double(options);
                }
                if (type == typeof(double?))
                {
                    return Create_NullableDouble(options);
                }
                if (type == typeof(global::Microsoft.Extensions.AI.AdditionalPropertiesDictionary))
                {
                    return Create_AdditionalPropertiesDictionary(options);
                }
                if (type == typeof(global::Microsoft.Extensions.AI.AdditionalPropertiesDictionary<long>))
                {
                    return Create_AdditionalPropertiesDictionaryInt64(options);
                }
                if (type == typeof(global::Microsoft.Extensions.AI.AIAnnotation))
                {
                    return Create_AIAnnotation(options);
                }
                if (type == typeof(global::Microsoft.Extensions.AI.AIContent))
                {
                    return Create_AIContent(options);
                }
                if (type == typeof(global::Microsoft.Extensions.AI.AnnotatedRegion))
                {
                    return Create_AnnotatedRegion(options);
                }
                if (type == typeof(global::Microsoft.Extensions.AI.ChatFinishReason))
                {
                    return Create_ChatFinishReason(options);
                }
                if (type == typeof(global::Microsoft.Extensions.AI.ChatFinishReason?))
                {
                    return Create_NullableChatFinishReason(options);
                }
                if (type == typeof(global::Microsoft.Extensions.AI.ChatMessage))
                {
                    return Create_ChatMessage(options);
                }
                if (type == typeof(global::Microsoft.Extensions.AI.ChatResponse))
                {
                    return Create_ChatResponse(options);
                }
                if (type == typeof(global::Microsoft.Extensions.AI.ChatRole))
                {
                    return Create_ChatRole(options);
                }
                if (type == typeof(global::Microsoft.Extensions.AI.CitationAnnotation))
                {
                    return Create_CitationAnnotation(options);
                }
                if (type == typeof(global::Microsoft.Extensions.AI.CodeInterpreterToolCallContent))
                {
                    return Create_CodeInterpreterToolCallContent(options);
                }
                if (type == typeof(global::Microsoft.Extensions.AI.CodeInterpreterToolResultContent))
                {
                    return Create_CodeInterpreterToolResultContent(options);
                }
                if (type == typeof(global::Microsoft.Extensions.AI.DataContent))
                {
                    return Create_DataContent(options);
                }
                if (type == typeof(global::Microsoft.Extensions.AI.ErrorContent))
                {
                    return Create_ErrorContent(options);
                }
                if (type == typeof(global::Microsoft.Extensions.AI.Evaluation.BooleanMetric))
                {
                    return Create_BooleanMetric(options);
                }
                if (type == typeof(global::Microsoft.Extensions.AI.Evaluation.EvaluationContext))
                {
                    return Create_EvaluationContext(options);
                }
                if (type == typeof(global::Microsoft.Extensions.AI.Evaluation.EvaluationDiagnostic))
                {
                    return Create_EvaluationDiagnostic(options);
                }
                if (type == typeof(global::Microsoft.Extensions.AI.Evaluation.EvaluationDiagnosticSeverity))
                {
                    return Create_EvaluationDiagnosticSeverity(options);
                }
                if (type == typeof(global::Microsoft.Extensions.AI.Evaluation.EvaluationMetric))
                {
                    return Create_EvaluationMetric(options);
                }
                if (type == typeof(global::Microsoft.Extensions.AI.Evaluation.EvaluationMetricInterpretation))
                {
                    return Create_EvaluationMetricInterpretation(options);
                }
                if (type == typeof(global::Microsoft.Extensions.AI.Evaluation.EvaluationRating))
                {
                    return Create_EvaluationRating(options);
                }
                if (type == typeof(global::Microsoft.Extensions.AI.Evaluation.EvaluationResult))
                {
                    return Create_EvaluationResult(options);
                }
                if (type == typeof(global::Microsoft.Extensions.AI.Evaluation.NumericMetric))
                {
                    return Create_NumericMetric(options);
                }
                if (type == typeof(global::Microsoft.Extensions.AI.Evaluation.Reporting.ChatDetails))
                {
                    return Create_ChatDetails(options);
                }
                if (type == typeof(global::Microsoft.Extensions.AI.Evaluation.Reporting.ChatTurnDetails))
                {
                    return Create_ChatTurnDetails(options);
                }
                if (type == typeof(global::Microsoft.Extensions.AI.Evaluation.Reporting.ScenarioRunResult))
                {
                    return Create_ScenarioRunResult(options);
                }
                if (type == typeof(global::Microsoft.Extensions.AI.Evaluation.Reporting.Storage.AzureStorageResponseCache.CacheEntry))
                {
                    return Create_CacheEntry(options);
                }
                if (type == typeof(global::Microsoft.Extensions.AI.Evaluation.StringMetric))
                {
                    return Create_StringMetric(options);
                }
                if (type == typeof(global::Microsoft.Extensions.AI.FunctionCallContent))
                {
                    return Create_FunctionCallContent(options);
                }
                if (type == typeof(global::Microsoft.Extensions.AI.FunctionResultContent))
                {
                    return Create_FunctionResultContent(options);
                }
                if (type == typeof(global::Microsoft.Extensions.AI.HostedFileContent))
                {
                    return Create_HostedFileContent(options);
                }
                if (type == typeof(global::Microsoft.Extensions.AI.HostedVectorStoreContent))
                {
                    return Create_HostedVectorStoreContent(options);
                }
                if (type == typeof(global::Microsoft.Extensions.AI.ImageGenerationToolCallContent))
                {
                    return Create_ImageGenerationToolCallContent(options);
                }
                if (type == typeof(global::Microsoft.Extensions.AI.ImageGenerationToolResultContent))
                {
                    return Create_ImageGenerationToolResultContent(options);
                }
                if (type == typeof(global::Microsoft.Extensions.AI.InputRequestContent))
                {
                    return Create_InputRequestContent(options);
                }
                if (type == typeof(global::Microsoft.Extensions.AI.InputResponseContent))
                {
                    return Create_InputResponseContent(options);
                }
                if (type == typeof(global::Microsoft.Extensions.AI.McpServerToolCallContent))
                {
                    return Create_McpServerToolCallContent(options);
                }
                if (type == typeof(global::Microsoft.Extensions.AI.McpServerToolResultContent))
                {
                    return Create_McpServerToolResultContent(options);
                }
                if (type == typeof(global::Microsoft.Extensions.AI.ResponseContinuationToken))
                {
                    return Create_ResponseContinuationToken(options);
                }
                if (type == typeof(global::Microsoft.Extensions.AI.TextContent))
                {
                    return Create_TextContent(options);
                }
                if (type == typeof(global::Microsoft.Extensions.AI.TextReasoningContent))
                {
                    return Create_TextReasoningContent(options);
                }
                if (type == typeof(global::Microsoft.Extensions.AI.TextSpanAnnotatedRegion))
                {
                    return Create_TextSpanAnnotatedRegion(options);
                }
                if (type == typeof(global::Microsoft.Extensions.AI.ToolApprovalRequestContent))
                {
                    return Create_ToolApprovalRequestContent(options);
                }
                if (type == typeof(global::Microsoft.Extensions.AI.ToolApprovalResponseContent))
                {
                    return Create_ToolApprovalResponseContent(options);
                }
                if (type == typeof(global::Microsoft.Extensions.AI.ToolCallContent))
                {
                    return Create_ToolCallContent(options);
                }
                if (type == typeof(global::Microsoft.Extensions.AI.ToolResultContent))
                {
                    return Create_ToolResultContent(options);
                }
                if (type == typeof(global::Microsoft.Extensions.AI.UriContent))
                {
                    return Create_UriContent(options);
                }
                if (type == typeof(global::Microsoft.Extensions.AI.UsageContent))
                {
                    return Create_UsageContent(options);
                }
                if (type == typeof(global::Microsoft.Extensions.AI.UsageDetails))
                {
                    return Create_UsageDetails(options);
                }
                if (type == typeof(global::Microsoft.Extensions.AI.WebSearchToolCallContent))
                {
                    return Create_WebSearchToolCallContent(options);
                }
                if (type == typeof(global::Microsoft.Extensions.AI.WebSearchToolResultContent))
                {
                    return Create_WebSearchToolResultContent(options);
                }
                if (type == typeof(global::System.Collections.Generic.IDictionary<string, global::Microsoft.Extensions.AI.Evaluation.EvaluationContext>))
                {
                    return Create_IDictionaryStringEvaluationContext(options);
                }
                if (type == typeof(global::System.Collections.Generic.IDictionary<string, global::Microsoft.Extensions.AI.Evaluation.EvaluationMetric>))
                {
                    return Create_IDictionaryStringEvaluationMetric(options);
                }
                if (type == typeof(global::System.Collections.Generic.IDictionary<string, object>))
                {
                    return Create_IDictionaryStringObject(options);
                }
                if (type == typeof(global::System.Collections.Generic.IDictionary<string, string>))
                {
                    return Create_IDictionaryStringString(options);
                }
                if (type == typeof(global::System.Collections.Generic.IList<global::Microsoft.Extensions.AI.AIAnnotation>))
                {
                    return Create_IListAIAnnotation(options);
                }
                if (type == typeof(global::System.Collections.Generic.IList<global::Microsoft.Extensions.AI.AIContent>))
                {
                    return Create_IListAIContent(options);
                }
                if (type == typeof(global::System.Collections.Generic.IList<global::Microsoft.Extensions.AI.AnnotatedRegion>))
                {
                    return Create_IListAnnotatedRegion(options);
                }
                if (type == typeof(global::System.Collections.Generic.IList<global::Microsoft.Extensions.AI.ChatMessage>))
                {
                    return Create_IListChatMessage(options);
                }
                if (type == typeof(global::System.Collections.Generic.IList<global::Microsoft.Extensions.AI.Evaluation.EvaluationDiagnostic>))
                {
                    return Create_IListEvaluationDiagnostic(options);
                }
                if (type == typeof(global::System.Collections.Generic.IList<global::Microsoft.Extensions.AI.Evaluation.Reporting.ChatTurnDetails>))
                {
                    return Create_IListChatTurnDetails(options);
                }
                if (type == typeof(global::System.Collections.Generic.IList<string>))
                {
                    return Create_IListString(options);
                }
                if (type == typeof(global::System.DateTime))
                {
                    return Create_DateTime(options);
                }
                if (type == typeof(global::System.DateTimeOffset))
                {
                    return Create_DateTimeOffset(options);
                }
                if (type == typeof(global::System.DateTimeOffset?))
                {
                    return Create_NullableDateTimeOffset(options);
                }
                if (type == typeof(global::System.TimeSpan))
                {
                    return Create_TimeSpan(options);
                }
                if (type == typeof(global::System.Uri))
                {
                    return Create_Uri(options);
                }
                if (type == typeof(int))
                {
                    return Create_Int32(options);
                }
                if (type == typeof(int?))
                {
                    return Create_NullableInt32(options);
                }
                if (type == typeof(long))
                {
                    return Create_Int64(options);
                }
                if (type == typeof(long?))
                {
                    return Create_NullableInt64(options);
                }
                if (type == typeof(object))
                {
                    return Create_Object(options);
                }
                if (type == typeof(string))
                {
                    return Create_String(options);
                }
                return null;
            }
        }
    }
}