File: Generated\361d1da7f942c932\RunFileBuildCacheJsonSerializerContext.AdditionalSource.g.cs
Project: dotnet-aot.csproj (dotnet-aot)
// <auto-generated/>

#nullable enable annotations
#nullable disable warnings

// Suppress warnings about [Obsolete] member usage in generated code.
#pragma warning disable CS0612, CS0618

namespace Microsoft.DotNet.Cli.Commands.Run
{
    internal partial class RunFileBuildCacheJsonSerializerContext
    {
        private global::System.Text.Json.Serialization.Metadata.JsonTypeInfo<global::Microsoft.DotNet.Cli.Commands.Run.RunFileBuildCacheEntry.AdditionalSource>? _AdditionalSource;
        
        /// <summary>
        /// Defines the source generated JSON serialization contract metadata for a given type.
        /// </summary>
        #nullable disable annotations // Marking the property type as nullable-oblivious.
        public global::System.Text.Json.Serialization.Metadata.JsonTypeInfo<global::Microsoft.DotNet.Cli.Commands.Run.RunFileBuildCacheEntry.AdditionalSource> AdditionalSource
        #nullable enable annotations
        {
            get => _AdditionalSource ??= (global::System.Text.Json.Serialization.Metadata.JsonTypeInfo<global::Microsoft.DotNet.Cli.Commands.Run.RunFileBuildCacheEntry.AdditionalSource>)Options.GetTypeInfo(typeof(global::Microsoft.DotNet.Cli.Commands.Run.RunFileBuildCacheEntry.AdditionalSource));
        }
        
        private global::System.Text.Json.Serialization.Metadata.JsonTypeInfo<global::Microsoft.DotNet.Cli.Commands.Run.RunFileBuildCacheEntry.AdditionalSource> Create_AdditionalSource(global::System.Text.Json.JsonSerializerOptions options)
        {
            if (!TryGetTypeInfoForRuntimeCustomConverter<global::Microsoft.DotNet.Cli.Commands.Run.RunFileBuildCacheEntry.AdditionalSource>(options, out global::System.Text.Json.Serialization.Metadata.JsonTypeInfo<global::Microsoft.DotNet.Cli.Commands.Run.RunFileBuildCacheEntry.AdditionalSource> jsonTypeInfo))
            {
                var unionInfo = new global::System.Text.Json.Serialization.Metadata.JsonUnionInfoValues<global::Microsoft.DotNet.Cli.Commands.Run.RunFileBuildCacheEntry.AdditionalSource>
                {
                    UnionCases = new global::System.Text.Json.Serialization.Metadata.JsonUnionCaseInfo[] { new global::System.Text.Json.Serialization.Metadata.JsonUnionCaseInfo(typeof(string)) { IsNullable = false }, new global::System.Text.Json.Serialization.Metadata.JsonUnionCaseInfo(typeof(global::Microsoft.DotNet.Cli.Commands.Run.RunFileBuildCacheEntry.AdditionalSourceLink)) { IsNullable = false } },
                    UnionConstructor = static (global::System.Type _, object? value) => value switch
                    {
                        string caseValue0 => new global::Microsoft.DotNet.Cli.Commands.Run.RunFileBuildCacheEntry.AdditionalSource(caseValue0),
                        global::Microsoft.DotNet.Cli.Commands.Run.RunFileBuildCacheEntry.AdditionalSourceLink caseValue1 => new global::Microsoft.DotNet.Cli.Commands.Run.RunFileBuildCacheEntry.AdditionalSource(caseValue1),
                        _ => throw new global::System.Text.Json.JsonException(),
                    },
                    UnionDeconstructor = static (global::Microsoft.DotNet.Cli.Commands.Run.RunFileBuildCacheEntry.AdditionalSource value) =>
                    {
                        return value switch
                        {
                            null => ((global::System.Type?)null, (object?)null),
                            string caseValue0 => (typeof(string), (object?)caseValue0),
                            global::Microsoft.DotNet.Cli.Commands.Run.RunFileBuildCacheEntry.AdditionalSourceLink caseValue1 => (typeof(global::Microsoft.DotNet.Cli.Commands.Run.RunFileBuildCacheEntry.AdditionalSourceLink), (object?)caseValue1),
                        };
                    },
                    TypeClassifier = null,
                    TypeClassifierFactory = null,
                };

                jsonTypeInfo = global::System.Text.Json.Serialization.Metadata.JsonMetadataServices.CreateUnionInfo<global::Microsoft.DotNet.Cli.Commands.Run.RunFileBuildCacheEntry.AdditionalSource>(options, unionInfo);
                jsonTypeInfo.NumberHandling = null;
            }
        
            jsonTypeInfo.OriginatingResolver = this;
            return jsonTypeInfo;
        }
    }
}