Decompiled source of FSharpCore v8.0.0
core\FSharp.Core.dll
Decompiled 11 months ago
The result has been truncated due to the large size, download it to view full contents!
using System; using System.Collections; using System.Collections.Concurrent; using System.Collections.Generic; using System.ComponentModel; using System.Diagnostics; using System.Diagnostics.CodeAnalysis; using System.Globalization; using System.IO; using System.Linq; using System.Linq.Expressions; using System.Net; using System.Numerics; using System.Reflection; using System.Resources; using System.Runtime.CompilerServices; using System.Runtime.ExceptionServices; using System.Runtime.InteropServices; using System.Runtime.Serialization; using System.Runtime.Versioning; using System.Security; using System.Text; using System.Text.RegularExpressions; using System.Threading; using System.Threading.Tasks; using <StartupCode$FSharp-Core>; using Microsoft.FSharp.Collections; using Microsoft.FSharp.Control; using Microsoft.FSharp.Core; using Microsoft.FSharp.Core.CompilerServices; using Microsoft.FSharp.Linq; using Microsoft.FSharp.Linq.RuntimeHelpers; using Microsoft.FSharp.Primitives.Basics; using Microsoft.FSharp.Quotations; using Microsoft.FSharp.Reflection; using Microsoft.FSharp.Text.StructuredPrintfImpl; [assembly: FSharpInterfaceDataVersion(2, 0, 0)] [assembly: TargetFramework(".NETStandard,Version=v2.1", FrameworkDisplayName = ".NET Standard 2.1")] [assembly: AssemblyCompany("Microsoft Corporation")] [assembly: AssemblyConfiguration("Release")] [assembly: AssemblyCopyright("© Microsoft Corporation. All rights reserved.")] [assembly: AssemblyFileVersion("8.1.23.52306")] [assembly: AssemblyInformationalVersion("8.0.100-beta.23523.6+f41fe153f68dd6b20cf4f91de9ea1e55fc09bb20")] [assembly: AssemblyProduct("FSharp.Core")] [assembly: AssemblyTitle("FSharp.Core")] [assembly: AssemblyMetadata("RepositoryUrl", "https://github.com/dotnet/fsharp")] [assembly: NeutralResourcesLanguage("en-US")] [assembly: ComVisible(false)] [assembly: CLSCompliant(true)] [assembly: SecurityTransparent] [assembly: AutoOpen("Microsoft.FSharp")] [assembly: AutoOpen("Microsoft.FSharp.Core.LanguagePrimitives.IntrinsicOperators")] [assembly: AutoOpen("Microsoft.FSharp.Core")] [assembly: AutoOpen("Microsoft.FSharp.Collections")] [assembly: AutoOpen("Microsoft.FSharp.Control")] [assembly: AutoOpen("Microsoft.FSharp.Control.TaskBuilderExtensions.LowPriority")] [assembly: AutoOpen("Microsoft.FSharp.Control.TaskBuilderExtensions.MediumPriority")] [assembly: AutoOpen("Microsoft.FSharp.Control.TaskBuilderExtensions.HighPriority")] [assembly: AutoOpen("Microsoft.FSharp.Linq.QueryRunExtensions.LowPriority")] [assembly: AutoOpen("Microsoft.FSharp.Linq.QueryRunExtensions.HighPriority")] [assembly: Debuggable(DebuggableAttribute.DebuggingModes.Default)] [assembly: AssemblyVersion("8.0.0.0")] [assembly: TypeForwardedTo(typeof(AggregateException))] [assembly: TypeForwardedTo(typeof(IStructuralComparable))] [assembly: TypeForwardedTo(typeof(IStructuralEquatable))] [assembly: TypeForwardedTo(typeof(IObservable<>))] [assembly: TypeForwardedTo(typeof(IObserver<>))] [assembly: TypeForwardedTo(typeof(Lazy<>))] [assembly: TypeForwardedTo(typeof(BigInteger))] [assembly: TypeForwardedTo(typeof(CancellationToken))] [assembly: TypeForwardedTo(typeof(CancellationTokenRegistration))] [assembly: TypeForwardedTo(typeof(CancellationTokenSource))] [assembly: TypeForwardedTo(typeof(Tuple))] [assembly: TypeForwardedTo(typeof(Tuple<>))] [assembly: TypeForwardedTo(typeof(Tuple<, >))] [assembly: TypeForwardedTo(typeof(Tuple<, , >))] [assembly: TypeForwardedTo(typeof(Tuple<, , , >))] [assembly: TypeForwardedTo(typeof(Tuple<, , , , >))] [assembly: TypeForwardedTo(typeof(Tuple<, , , , , >))] [assembly: TypeForwardedTo(typeof(Tuple<, , , , , , >))] [assembly: TypeForwardedTo(typeof(Tuple<, , , , , , , >))] namespace Microsoft.FSharp.Core { [Serializable] [CompilationMapping(SourceConstructFlags.ObjectType)] public sealed class Unit : IComparable { internal Unit() { } public override int GetHashCode() { return 0; } public override bool Equals(object obj) { if (obj != null) { if (LanguagePrimitives.IntrinsicFunctions.TypeTestGeneric<Unit>(obj)) { return true; } return false; } return true; } virtual int IComparable.CompareTo(object _obj) { return 0; } } [Serializable] [CompilationMapping(SourceConstructFlags.ObjectType)] public enum SourceConstructFlags { None = 0, SumType = 1, RecordType = 2, ObjectType = 3, Field = 4, Exception = 5, Closure = 6, Module = 7, UnionCase = 8, Value = 9, KindMask = 31, NonPublicRepresentation = 32 } [Serializable] [Flags] [CompilationMapping(SourceConstructFlags.ObjectType)] public enum CompilationRepresentationFlags { None = 0, Static = 1, Instance = 2, ModuleSuffix = 4, UseNullAsTrueValue = 8, Event = 0x10 } [Serializable] [AttributeUsage(AttributeTargets.Class, AllowMultiple = false)] [CompilationMapping(SourceConstructFlags.ObjectType)] public sealed class SealedAttribute : Attribute { internal bool value; public bool Value => value; public SealedAttribute(bool value) { this.value = value; } public SealedAttribute() : this(value: true) { } } [Serializable] [AttributeUsage(AttributeTargets.Class, AllowMultiple = false)] [Sealed] [CompilationMapping(SourceConstructFlags.ObjectType)] public sealed class AbstractClassAttribute : Attribute { } [Serializable] [AttributeUsage(AttributeTargets.GenericParameter, AllowMultiple = false)] [Sealed] [CompilationMapping(SourceConstructFlags.ObjectType)] public sealed class EqualityConditionalOnAttribute : Attribute { } [Serializable] [AttributeUsage(AttributeTargets.GenericParameter, AllowMultiple = false)] [Sealed] [CompilationMapping(SourceConstructFlags.ObjectType)] public sealed class ComparisonConditionalOnAttribute : Attribute { } [Serializable] [AttributeUsage(AttributeTargets.Class, AllowMultiple = false)] [Sealed] [CompilationMapping(SourceConstructFlags.ObjectType)] public sealed class AllowNullLiteralAttribute : Attribute { internal bool value; public bool Value => value; public AllowNullLiteralAttribute(bool value) { this.value = value; } public AllowNullLiteralAttribute() : this(value: true) { } } [Serializable] [AttributeUsage(AttributeTargets.Field, AllowMultiple = false)] [Sealed] [CompilationMapping(SourceConstructFlags.ObjectType)] public sealed class VolatileFieldAttribute : Attribute { } [Serializable] [AttributeUsage(AttributeTargets.Class, AllowMultiple = false)] [Sealed] [CompilationMapping(SourceConstructFlags.ObjectType)] public sealed class DefaultAugmentationAttribute : Attribute { internal bool value; public bool Value => value; public DefaultAugmentationAttribute(bool value) { this.value = value; } } [Serializable] [AttributeUsage(AttributeTargets.Property, AllowMultiple = false)] [Sealed] [CompilationMapping(SourceConstructFlags.ObjectType)] public sealed class CLIEventAttribute : Attribute { } [Serializable] [AttributeUsage(AttributeTargets.Class, AllowMultiple = false)] [Sealed] [CompilationMapping(SourceConstructFlags.ObjectType)] public sealed class CLIMutableAttribute : Attribute { } [Serializable] [AttributeUsage(AttributeTargets.Class, AllowMultiple = false)] [Sealed] [CompilationMapping(SourceConstructFlags.ObjectType)] public sealed class AutoSerializableAttribute : Attribute { internal bool value; public bool Value => value; public AutoSerializableAttribute(bool value) { this.value = value; } } [Serializable] [AttributeUsage(AttributeTargets.Method | AttributeTargets.Field, AllowMultiple = false)] [Sealed] [CompilationMapping(SourceConstructFlags.ObjectType)] public sealed class DefaultValueAttribute : Attribute { internal bool check; public bool Check => check; public DefaultValueAttribute(bool check) { this.check = check; } public DefaultValueAttribute() : this(check: true) { } } [Serializable] [AttributeUsage(AttributeTargets.Method, AllowMultiple = false)] [Sealed] [CompilationMapping(SourceConstructFlags.ObjectType)] public sealed class EntryPointAttribute : Attribute { } [Serializable] [AttributeUsage(AttributeTargets.Class, AllowMultiple = false)] [Sealed] [CompilationMapping(SourceConstructFlags.ObjectType)] public sealed class ReferenceEqualityAttribute : Attribute { } [Serializable] [AttributeUsage(AttributeTargets.Class, AllowMultiple = false)] [Sealed] [CompilationMapping(SourceConstructFlags.ObjectType)] public sealed class StructuralComparisonAttribute : Attribute { } [Serializable] [AttributeUsage(AttributeTargets.Class, AllowMultiple = false)] [Sealed] [CompilationMapping(SourceConstructFlags.ObjectType)] public sealed class StructuralEqualityAttribute : Attribute { } [Serializable] [AttributeUsage(AttributeTargets.Class | AttributeTargets.Struct | AttributeTargets.Enum | AttributeTargets.Interface | AttributeTargets.Delegate, AllowMultiple = false)] [Sealed] [CompilationMapping(SourceConstructFlags.ObjectType)] public sealed class NoEqualityAttribute : Attribute { } [Serializable] [AttributeUsage(AttributeTargets.Class | AttributeTargets.Struct, AllowMultiple = false)] [Sealed] [CompilationMapping(SourceConstructFlags.ObjectType)] public sealed class CustomEqualityAttribute : Attribute { } [Serializable] [AttributeUsage(AttributeTargets.Class | AttributeTargets.Struct, AllowMultiple = false)] [Sealed] [CompilationMapping(SourceConstructFlags.ObjectType)] public sealed class CustomComparisonAttribute : Attribute { } [Serializable] [AttributeUsage(AttributeTargets.Class | AttributeTargets.Struct | AttributeTargets.Enum | AttributeTargets.Interface | AttributeTargets.Delegate, AllowMultiple = false)] [Sealed] [CompilationMapping(SourceConstructFlags.ObjectType)] public sealed class NoComparisonAttribute : Attribute { } [Serializable] [AttributeUsage(AttributeTargets.Class | AttributeTargets.Constructor | AttributeTargets.Method | AttributeTargets.Property | AttributeTargets.Parameter, AllowMultiple = false)] [Sealed] [CompilationMapping(SourceConstructFlags.ObjectType)] public sealed class ReflectedDefinitionAttribute : Attribute { internal bool includeValue; public bool IncludeValue => includeValue; public ReflectedDefinitionAttribute(bool includeValue) { this.includeValue = includeValue; } public ReflectedDefinitionAttribute() : this(includeValue: false) { } } [Serializable] [AttributeUsage(AttributeTargets.Class | AttributeTargets.Struct | AttributeTargets.Enum | AttributeTargets.Method | AttributeTargets.Property | AttributeTargets.Field | AttributeTargets.Interface | AttributeTargets.Delegate, AllowMultiple = false)] [Sealed] [CompilationMapping(SourceConstructFlags.ObjectType)] public sealed class CompiledNameAttribute : Attribute { internal string compiledName; public string CompiledName => compiledName; public CompiledNameAttribute(string compiledName) { this.compiledName = compiledName; } } [Serializable] [AttributeUsage(AttributeTargets.Struct | AttributeTargets.ReturnValue, AllowMultiple = false)] [Sealed] [CompilationMapping(SourceConstructFlags.ObjectType)] public sealed class StructAttribute : Attribute { } [Serializable] [AttributeUsage(AttributeTargets.Class | AttributeTargets.GenericParameter, AllowMultiple = false)] [Sealed] [CompilationMapping(SourceConstructFlags.ObjectType)] public sealed class MeasureAttribute : Attribute { } [Serializable] [AttributeUsage(AttributeTargets.Class, AllowMultiple = false)] [Sealed] [CompilationMapping(SourceConstructFlags.ObjectType)] public sealed class MeasureAnnotatedAbbreviationAttribute : Attribute { } [Serializable] [AttributeUsage(AttributeTargets.Interface, AllowMultiple = false)] [Sealed] [CompilationMapping(SourceConstructFlags.ObjectType)] public sealed class InterfaceAttribute : Attribute { } [Serializable] [AttributeUsage(AttributeTargets.Class, AllowMultiple = false)] [Sealed] [CompilationMapping(SourceConstructFlags.ObjectType)] public sealed class ClassAttribute : Attribute { } [Serializable] [AttributeUsage(AttributeTargets.Field, AllowMultiple = false)] [Sealed] [CompilationMapping(SourceConstructFlags.ObjectType)] public sealed class LiteralAttribute : Attribute { } [Serializable] [AttributeUsage(AttributeTargets.Assembly, AllowMultiple = false)] [Sealed] [CompilationMapping(SourceConstructFlags.ObjectType)] public sealed class FSharpInterfaceDataVersionAttribute : Attribute { internal int release; internal int minor; internal int major; public int Major => major; public int Minor => minor; public int Release => release; public FSharpInterfaceDataVersionAttribute(int major, int minor, int release) { this.major = major; this.minor = minor; this.release = release; } } [Serializable] [AttributeUsage(AttributeTargets.All, AllowMultiple = false)] [Sealed] [CompilationMapping(SourceConstructFlags.ObjectType)] public sealed class CompilationMappingAttribute : Attribute { internal int variantNumber; internal Type[] typeDefinitions; internal SourceConstructFlags sourceConstructFlags; internal int sequenceNumber; internal string resourceName; public SourceConstructFlags SourceConstructFlags => sourceConstructFlags; public int SequenceNumber => sequenceNumber; public int VariantNumber => variantNumber; public Type[] TypeDefinitions => typeDefinitions; public string ResourceName => resourceName; internal CompilationMappingAttribute(SourceConstructFlags sourceConstructFlags, int variantNumber, int sequenceNumber, string resourceName, Type[] typeDefinitions) { this.sourceConstructFlags = sourceConstructFlags; this.variantNumber = variantNumber; this.sequenceNumber = sequenceNumber; this.resourceName = resourceName; this.typeDefinitions = typeDefinitions; } public CompilationMappingAttribute(SourceConstructFlags sourceConstructFlags) : this(sourceConstructFlags, 0, 0) { } public CompilationMappingAttribute(SourceConstructFlags sourceConstructFlags, int sequenceNumber) : this(sourceConstructFlags, 0, sequenceNumber) { } public CompilationMappingAttribute(SourceConstructFlags sourceConstructFlags, int variantNumber, int sequenceNumber) : this(sourceConstructFlags, variantNumber, sequenceNumber, null, null) { } public CompilationMappingAttribute(string resourceName, Type[] typeDefinitions) : this(SourceConstructFlags.None, 0, 0, resourceName, typeDefinitions) { } } [Serializable] [AttributeUsage(AttributeTargets.All, AllowMultiple = false)] [Sealed] [CompilationMapping(SourceConstructFlags.ObjectType)] public sealed class CompilationSourceNameAttribute : Attribute { internal string sourceName; public string SourceName => sourceName; public CompilationSourceNameAttribute(string sourceName) { this.sourceName = sourceName; } } [Serializable] [AttributeUsage(AttributeTargets.All, AllowMultiple = false)] [Sealed] [CompilationMapping(SourceConstructFlags.ObjectType)] public sealed class CompilationRepresentationAttribute : Attribute { internal CompilationRepresentationFlags flags; public CompilationRepresentationFlags Flags => flags; public CompilationRepresentationAttribute(CompilationRepresentationFlags flags) { this.flags = flags; } } [Serializable] [AttributeUsage(AttributeTargets.All, AllowMultiple = false)] [Sealed] [CompilationMapping(SourceConstructFlags.ObjectType)] public sealed class ExperimentalAttribute : Attribute { internal string message; public string Message => message; public ExperimentalAttribute(string message) { this.message = message; } } [Serializable] [AttributeUsage(AttributeTargets.Parameter, AllowMultiple = false)] [Sealed] [CompilationMapping(SourceConstructFlags.ObjectType)] public sealed class InlineIfLambdaAttribute : Attribute { } [Serializable] [AttributeUsage(AttributeTargets.Method, AllowMultiple = false)] [Sealed] [CompilationMapping(SourceConstructFlags.ObjectType)] public sealed class CompilationArgumentCountsAttribute : Attribute { internal int[] counts; public IEnumerable<int> Counts => (IEnumerable<int>)counts.Clone(); public CompilationArgumentCountsAttribute(int[] counts) { this.counts = counts; } } [Serializable] [AttributeUsage(AttributeTargets.Method, AllowMultiple = false)] [Sealed] [CompilationMapping(SourceConstructFlags.ObjectType)] public sealed class CustomOperationAttribute : Attribute { internal string name; internal bool isBinary; internal bool allowInto; internal bool isJoin; internal bool isGroupJoin; internal bool maintainsVarSpace; internal bool maintainsVarSpaceWithBind; internal string joinOnWord; public string Name => name; public bool AllowIntoPattern { get { return allowInto; } set { allowInto = value; } } public bool IsLikeZip { get { return isBinary; } set { isBinary = value; } } public bool IsLikeJoin { get { return isJoin; } set { isJoin = value; } } public bool IsLikeGroupJoin { get { return isGroupJoin; } set { isGroupJoin = value; } } public string JoinConditionWord { get { return joinOnWord; } set { joinOnWord = value; } } public bool MaintainsVariableSpace { get { return maintainsVarSpace; } set { maintainsVarSpace = value; } } public bool MaintainsVariableSpaceUsingBind { get { return maintainsVarSpaceWithBind; } set { maintainsVarSpaceWithBind = value; } } public CustomOperationAttribute(string name) { this.name = name; isBinary = false; allowInto = false; isJoin = false; isGroupJoin = false; maintainsVarSpace = false; maintainsVarSpaceWithBind = false; joinOnWord = ""; } } [Serializable] [AttributeUsage(AttributeTargets.Parameter, AllowMultiple = false)] [Sealed] [CompilationMapping(SourceConstructFlags.ObjectType)] public sealed class ProjectionParameterAttribute : Attribute { } [Serializable] [AttributeUsage(AttributeTargets.Class | AttributeTargets.Struct | AttributeTargets.Enum | AttributeTargets.Interface | AttributeTargets.Delegate, AllowMultiple = false)] [Sealed] [CompilationMapping(SourceConstructFlags.ObjectType)] public sealed class StructuredFormatDisplayAttribute : Attribute { internal string value; public string Value => value; public StructuredFormatDisplayAttribute(string value) { this.value = value; } } [Serializable] [AttributeUsage(AttributeTargets.All, AllowMultiple = false)] [Sealed] [CompilationMapping(SourceConstructFlags.ObjectType)] public sealed class CompilerMessageAttribute : Attribute { internal int messageNumber; internal string message; internal bool isError; internal bool isHidden; public string Message => message; public int MessageNumber => messageNumber; public bool IsError { get { return isError; } set { isError = value; } } public bool IsHidden { get { return isHidden; } set { isHidden = value; } } public CompilerMessageAttribute(string message, int messageNumber) { this.message = message; this.messageNumber = messageNumber; isError = false; isHidden = false; } } [Serializable] [AttributeUsage(AttributeTargets.Method | AttributeTargets.Property, AllowMultiple = false)] [Sealed] [CompilationMapping(SourceConstructFlags.ObjectType)] public sealed class UnverifiableAttribute : Attribute { } [Serializable] [AttributeUsage(AttributeTargets.Method | AttributeTargets.Property, AllowMultiple = false)] [Sealed] [CompilationMapping(SourceConstructFlags.ObjectType)] public sealed class NoDynamicInvocationAttribute : Attribute { internal bool isLegacy; internal bool IsLegacy => isLegacy; internal NoDynamicInvocationAttribute(bool isLegacy) { this.isLegacy = isLegacy; } public NoDynamicInvocationAttribute() : this(isLegacy: false) { } } [Serializable] [AttributeUsage(AttributeTargets.Parameter, AllowMultiple = false)] [Sealed] [CompilationMapping(SourceConstructFlags.ObjectType)] public sealed class OptionalArgumentAttribute : Attribute { } [Serializable] [AttributeUsage(AttributeTargets.Method, AllowMultiple = false)] [Sealed] [CompilationMapping(SourceConstructFlags.ObjectType)] public sealed class GeneralizableValueAttribute : Attribute { } [Serializable] [AttributeUsage(AttributeTargets.Method, AllowMultiple = false)] [Sealed] [CompilationMapping(SourceConstructFlags.ObjectType)] public sealed class RequiresExplicitTypeArgumentsAttribute : Attribute { } [Serializable] [AttributeUsage(AttributeTargets.Class, AllowMultiple = false)] [Sealed] [CompilationMapping(SourceConstructFlags.ObjectType)] public sealed class RequireQualifiedAccessAttribute : Attribute { } [Serializable] [AttributeUsage(AttributeTargets.Assembly | AttributeTargets.Class, AllowMultiple = true)] [Sealed] [CompilationMapping(SourceConstructFlags.ObjectType)] public sealed class AutoOpenAttribute : Attribute { internal string path; public string Path => path; public AutoOpenAttribute(string path) { this.path = path; } public AutoOpenAttribute() : this("") { } } [Serializable] [AttributeUsage(AttributeTargets.Property, AllowMultiple = false)] [Sealed] [CompilationMapping(SourceConstructFlags.ObjectType)] internal sealed class ValueAsStaticPropertyAttribute : Attribute { } [Serializable] [AttributeUsage(AttributeTargets.Method | AttributeTargets.Property, AllowMultiple = false)] [Sealed] [CompilationMapping(SourceConstructFlags.ObjectType)] public sealed class NoCompilerInliningAttribute : Attribute { } [Serializable] [AttributeUsage(AttributeTargets.Method, AllowMultiple = false)] [Sealed] [CompilationMapping(SourceConstructFlags.ObjectType)] public sealed class TailCallAttribute : Attribute { } } namespace System.Diagnostics.CodeAnalysis { [Serializable] [Flags] [RequireQualifiedAccess] [CompilationMapping(SourceConstructFlags.ObjectType)] internal enum DynamicallyAccessedMemberTypes { None = 0, PublicParameterlessConstructor = 1, PublicConstructors = 3, NonPublicConstructors = 4, PublicMethods = 8, NonPublicMethods = 0x10, PublicFields = 0x20, NonPublicFields = 0x40, PublicNestedTypes = 0x80, NonPublicNestedTypes = 0x100, PublicProperties = 0x200, NonPublicProperties = 0x400, PublicEvents = 0x800, NonPublicEvents = 0x1000, Interfaces = 0x2000, All = -1 } [Serializable] [AttributeUsage(AttributeTargets.Method | AttributeTargets.Property | AttributeTargets.Field | AttributeTargets.Parameter | AttributeTargets.ReturnValue | AttributeTargets.GenericParameter, Inherited = false)] [CompilationMapping(SourceConstructFlags.ObjectType)] internal class DynamicallyAccessedMembersAttribute : Attribute { internal DynamicallyAccessedMemberTypes MemberTypes@; internal DynamicallyAccessedMemberTypes MemberTypes { [CompilerGenerated] [DebuggerNonUserCode] get { return MemberTypes@; } [CompilerGenerated] [DebuggerNonUserCode] set { MemberTypes@ = value; } } public DynamicallyAccessedMembersAttribute(DynamicallyAccessedMemberTypes memberTypes) { MemberTypes@ = memberTypes; } internal void DynamicallyAccessedMembersAttribute(DynamicallyAccessedMemberTypes memberTypes) { MemberTypes@ = memberTypes; } } } namespace Microsoft.FSharp.Core { [Serializable] [StructLayout(LayoutKind.Auto, CharSet = CharSet.Auto)] [StructuralEquality] [StructuralComparison] [CompiledName("FSharpChoice`2")] [CompilationMapping(SourceConstructFlags.SumType)] public abstract class FSharpChoice<T1, T2> : IEquatable<FSharpChoice<T1, T2>>, IStructuralEquatable, IComparable<FSharpChoice<T1, T2>>, IComparable, IStructuralComparable { public static class Tags { public const int Choice1Of2 = 0; public const int Choice2Of2 = 1; } [Serializable] [SpecialName] [DebuggerTypeProxy(typeof(FSharpChoice<, >.Choice1Of2@DebugTypeProxy))] public class Choice1Of2 : FSharpChoice<T1, T2> { [DebuggerBrowsable(DebuggerBrowsableState.Never)] [CompilerGenerated] [DebuggerNonUserCode] internal readonly T1 item; [CompilationMapping(SourceConstructFlags.Field, 0, 0)] [CompilerGenerated] [DebuggerNonUserCode] public T1 Item { [CompilerGenerated] [DebuggerNonUserCode] get { return item; } } [DynamicDependency(DynamicallyAccessedMemberTypes.PublicFields | DynamicallyAccessedMemberTypes.NonPublicFields | DynamicallyAccessedMemberTypes.PublicProperties | DynamicallyAccessedMemberTypes.NonPublicProperties, typeof(FSharpChoice<, >))] [CompilerGenerated] [DebuggerNonUserCode] internal Choice1Of2(T1 item) { this.item = item; } } [Serializable] [SpecialName] [DebuggerTypeProxy(typeof(FSharpChoice<, >.Choice2Of2@DebugTypeProxy))] public class Choice2Of2 : FSharpChoice<T1, T2> { [DebuggerBrowsable(DebuggerBrowsableState.Never)] [CompilerGenerated] [DebuggerNonUserCode] internal readonly T2 item; [CompilationMapping(SourceConstructFlags.Field, 1, 0)] [CompilerGenerated] [DebuggerNonUserCode] public T2 Item { [CompilerGenerated] [DebuggerNonUserCode] get { return item; } } [DynamicDependency(DynamicallyAccessedMemberTypes.PublicFields | DynamicallyAccessedMemberTypes.NonPublicFields | DynamicallyAccessedMemberTypes.PublicProperties | DynamicallyAccessedMemberTypes.NonPublicProperties, typeof(FSharpChoice<, >))] [CompilerGenerated] [DebuggerNonUserCode] internal Choice2Of2(T2 item) { this.item = item; } } [SpecialName] internal class Choice1Of2@DebugTypeProxy { [CompilationMapping(SourceConstructFlags.Field, 0, 0)] [CompilerGenerated] [DebuggerNonUserCode] public T1 Item { [CompilerGenerated] [DebuggerNonUserCode] get { return _obj.item; } } [DynamicDependency(DynamicallyAccessedMemberTypes.PublicFields | DynamicallyAccessedMemberTypes.NonPublicFields | DynamicallyAccessedMemberTypes.PublicProperties | DynamicallyAccessedMemberTypes.NonPublicProperties, typeof(FSharpChoice<, >))] [CompilerGenerated] [DebuggerNonUserCode] public Choice1Of2@DebugTypeProxy(Choice1Of2 obj) { _obj = obj; } } [SpecialName] internal class Choice2Of2@DebugTypeProxy { [CompilationMapping(SourceConstructFlags.Field, 1, 0)] [CompilerGenerated] [DebuggerNonUserCode] public T2 Item { [CompilerGenerated] [DebuggerNonUserCode] get { return _obj.item; } } [DynamicDependency(DynamicallyAccessedMemberTypes.PublicFields | DynamicallyAccessedMemberTypes.NonPublicFields | DynamicallyAccessedMemberTypes.PublicProperties | DynamicallyAccessedMemberTypes.NonPublicProperties, typeof(FSharpChoice<, >))] [CompilerGenerated] [DebuggerNonUserCode] public Choice2Of2@DebugTypeProxy(Choice2Of2 obj) { _obj = obj; } } [CompilerGenerated] [DebuggerNonUserCode] [DebuggerBrowsable(DebuggerBrowsableState.Never)] public int Tag { [CompilerGenerated] [DebuggerNonUserCode] get { return (this is Choice2Of2) ? 1 : 0; } } [CompilerGenerated] [DebuggerNonUserCode] [DebuggerBrowsable(DebuggerBrowsableState.Never)] public bool IsChoice1Of2 { [CompilerGenerated] [DebuggerNonUserCode] get { return this is Choice1Of2; } } [CompilerGenerated] [DebuggerNonUserCode] [DebuggerBrowsable(DebuggerBrowsableState.Never)] public bool IsChoice2Of2 { [CompilerGenerated] [DebuggerNonUserCode] get { return this is Choice2Of2; } } [DynamicDependency(DynamicallyAccessedMemberTypes.PublicFields | DynamicallyAccessedMemberTypes.NonPublicFields | DynamicallyAccessedMemberTypes.PublicNestedTypes | DynamicallyAccessedMemberTypes.NonPublicNestedTypes | DynamicallyAccessedMemberTypes.PublicProperties | DynamicallyAccessedMemberTypes.NonPublicProperties, typeof(FSharpChoice<, >))] [CompilerGenerated] [DebuggerNonUserCode] internal FSharpChoice() { } [CompilationMapping(SourceConstructFlags.UnionCase, 0)] public static FSharpChoice<T1, T2> NewChoice1Of2(T1 item) { return new Choice1Of2(item); } [CompilationMapping(SourceConstructFlags.UnionCase, 1)] public static FSharpChoice<T1, T2> NewChoice2Of2(T2 item) { return new Choice2Of2(item); } [CompilerGenerated] public virtual sealed int CompareTo(FSharpChoice<T1, T2> obj) { if (this != null) { if (obj != null) { int num = ((this is Choice2Of2) ? 1 : 0); int num2 = ((obj is Choice2Of2) ? 1 : 0); if (num == num2) { IComparer genericComparer; if (this is Choice1Of2) { Choice1Of2 choice1Of = (Choice1Of2)this; Choice1Of2 choice1Of2 = (Choice1Of2)obj; genericComparer = LanguagePrimitives.GenericComparer; T1 item = choice1Of.item; T1 item2 = choice1Of2.item; return LanguagePrimitives.HashCompare.GenericComparisonWithComparerIntrinsic(genericComparer, item, item2); } Choice2Of2 choice2Of = (Choice2Of2)this; Choice2Of2 choice2Of2 = (Choice2Of2)obj; genericComparer = LanguagePrimitives.GenericComparer; T2 item3 = choice2Of.item; T2 item4 = choice2Of2.item; return LanguagePrimitives.HashCompare.GenericComparisonWithComparerIntrinsic(genericComparer, item3, item4); } return num - num2; } return 1; } if (obj != null) { return -1; } return 0; } [CompilerGenerated] public virtual sealed int CompareTo(object obj) { return CompareTo((FSharpChoice<T1, T2>)obj); } [CompilerGenerated] public virtual sealed int CompareTo(object obj, IComparer comp) { FSharpChoice<T1, T2> fSharpChoice = (FSharpChoice<T1, T2>)obj; if (this != null) { if ((FSharpChoice<T1, T2>)obj != null) { int num = ((this is Choice2Of2) ? 1 : 0); FSharpChoice<T1, T2> fSharpChoice2 = fSharpChoice; int num2 = ((fSharpChoice2 is Choice2Of2) ? 1 : 0); if (num == num2) { if (this is Choice1Of2) { Choice1Of2 choice1Of = (Choice1Of2)this; Choice1Of2 choice1Of2 = (Choice1Of2)fSharpChoice; T1 item = choice1Of.item; T1 item2 = choice1Of2.item; return LanguagePrimitives.HashCompare.GenericComparisonWithComparerIntrinsic(comp, item, item2); } Choice2Of2 choice2Of = (Choice2Of2)this; Choice2Of2 choice2Of2 = (Choice2Of2)fSharpChoice; T2 item3 = choice2Of.item; T2 item4 = choice2Of2.item; return LanguagePrimitives.HashCompare.GenericComparisonWithComparerIntrinsic(comp, item3, item4); } return num - num2; } return 1; } if ((FSharpChoice<T1, T2>)obj != null) { return -1; } return 0; } [CompilerGenerated] public virtual sealed int GetHashCode(IEqualityComparer comp) { if (this != null) { int num = 0; if (this is Choice1Of2) { Choice1Of2 choice1Of = (Choice1Of2)this; num = 0; T1 item = choice1Of.item; return -1640531527 + (LanguagePrimitives.HashCompare.GenericHashParamObj(comp, item) + ((num << 6) + (num >> 2))); } Choice2Of2 choice2Of = (Choice2Of2)this; num = 1; T2 item2 = choice2Of.item; return -1640531527 + (LanguagePrimitives.HashCompare.GenericHashParamObj(comp, item2) + ((num << 6) + (num >> 2))); } return 0; } [CompilerGenerated] public sealed override int GetHashCode() { return GetHashCode(LanguagePrimitives.GenericEqualityComparer); } [CompilerGenerated] public virtual sealed bool Equals(object obj, IEqualityComparer comp) { if (this != null) { if (obj is FSharpChoice<T1, T2> fSharpChoice) { int num = ((this is Choice2Of2) ? 1 : 0); FSharpChoice<T1, T2> fSharpChoice2 = fSharpChoice; int num2 = ((fSharpChoice2 is Choice2Of2) ? 1 : 0); if (num == num2) { if (this is Choice1Of2) { Choice1Of2 choice1Of = (Choice1Of2)this; Choice1Of2 choice1Of2 = (Choice1Of2)fSharpChoice; T1 item = choice1Of.item; T1 item2 = choice1Of2.item; return LanguagePrimitives.HashCompare.GenericEqualityWithComparerIntrinsic(comp, item, item2); } Choice2Of2 choice2Of = (Choice2Of2)this; Choice2Of2 choice2Of2 = (Choice2Of2)fSharpChoice; T2 item3 = choice2Of.item; T2 item4 = choice2Of2.item; return LanguagePrimitives.HashCompare.GenericEqualityWithComparerIntrinsic(comp, item3, item4); } return false; } return false; } return obj == null; } [CompilerGenerated] public virtual sealed bool Equals(FSharpChoice<T1, T2> obj) { if (this != null) { if (obj != null) { int num = ((this is Choice2Of2) ? 1 : 0); int num2 = ((obj is Choice2Of2) ? 1 : 0); if (num == num2) { if (this is Choice1Of2) { Choice1Of2 choice1Of = (Choice1Of2)this; Choice1Of2 choice1Of2 = (Choice1Of2)obj; T1 item = choice1Of.item; T1 item2 = choice1Of2.item; return LanguagePrimitives.HashCompare.GenericEqualityERIntrinsic(item, item2); } Choice2Of2 choice2Of = (Choice2Of2)this; Choice2Of2 choice2Of2 = (Choice2Of2)obj; T2 item3 = choice2Of.item; T2 item4 = choice2Of2.item; return LanguagePrimitives.HashCompare.GenericEqualityERIntrinsic(item3, item4); } return false; } return false; } return obj == null; } [CompilerGenerated] public sealed override bool Equals(object obj) { if (obj is FSharpChoice<T1, T2> obj2) { return Equals(obj2); } return false; } } [Serializable] [StructLayout(LayoutKind.Auto, CharSet = CharSet.Auto)] [StructuralEquality] [StructuralComparison] [CompiledName("FSharpChoice`3")] [CompilationMapping(SourceConstructFlags.SumType)] public abstract class FSharpChoice<T1, T2, T3> : IEquatable<FSharpChoice<T1, T2, T3>>, IStructuralEquatable, IComparable<FSharpChoice<T1, T2, T3>>, IComparable, IStructuralComparable { public static class Tags { public const int Choice1Of3 = 0; public const int Choice2Of3 = 1; public const int Choice3Of3 = 2; } [Serializable] [SpecialName] [DebuggerTypeProxy(typeof(FSharpChoice<, , >.Choice1Of3@DebugTypeProxy))] public class Choice1Of3 : FSharpChoice<T1, T2, T3> { [DebuggerBrowsable(DebuggerBrowsableState.Never)] [CompilerGenerated] [DebuggerNonUserCode] internal readonly T1 item; [CompilationMapping(SourceConstructFlags.Field, 0, 0)] [CompilerGenerated] [DebuggerNonUserCode] public T1 Item { [CompilerGenerated] [DebuggerNonUserCode] get { return item; } } [DynamicDependency(DynamicallyAccessedMemberTypes.PublicFields | DynamicallyAccessedMemberTypes.NonPublicFields | DynamicallyAccessedMemberTypes.PublicProperties | DynamicallyAccessedMemberTypes.NonPublicProperties, typeof(FSharpChoice<, , >))] [CompilerGenerated] [DebuggerNonUserCode] internal Choice1Of3(T1 item) { this.item = item; } } [Serializable] [SpecialName] [DebuggerTypeProxy(typeof(FSharpChoice<, , >.Choice2Of3@DebugTypeProxy))] public class Choice2Of3 : FSharpChoice<T1, T2, T3> { [DebuggerBrowsable(DebuggerBrowsableState.Never)] [CompilerGenerated] [DebuggerNonUserCode] internal readonly T2 item; [CompilationMapping(SourceConstructFlags.Field, 1, 0)] [CompilerGenerated] [DebuggerNonUserCode] public T2 Item { [CompilerGenerated] [DebuggerNonUserCode] get { return item; } } [DynamicDependency(DynamicallyAccessedMemberTypes.PublicFields | DynamicallyAccessedMemberTypes.NonPublicFields | DynamicallyAccessedMemberTypes.PublicProperties | DynamicallyAccessedMemberTypes.NonPublicProperties, typeof(FSharpChoice<, , >))] [CompilerGenerated] [DebuggerNonUserCode] internal Choice2Of3(T2 item) { this.item = item; } } [Serializable] [SpecialName] [DebuggerTypeProxy(typeof(FSharpChoice<, , >.Choice3Of3@DebugTypeProxy))] public class Choice3Of3 : FSharpChoice<T1, T2, T3> { [DebuggerBrowsable(DebuggerBrowsableState.Never)] [CompilerGenerated] [DebuggerNonUserCode] internal readonly T3 item; [CompilationMapping(SourceConstructFlags.Field, 2, 0)] [CompilerGenerated] [DebuggerNonUserCode] public T3 Item { [CompilerGenerated] [DebuggerNonUserCode] get { return item; } } [DynamicDependency(DynamicallyAccessedMemberTypes.PublicFields | DynamicallyAccessedMemberTypes.NonPublicFields | DynamicallyAccessedMemberTypes.PublicProperties | DynamicallyAccessedMemberTypes.NonPublicProperties, typeof(FSharpChoice<, , >))] [CompilerGenerated] [DebuggerNonUserCode] internal Choice3Of3(T3 item) { this.item = item; } } [SpecialName] internal class Choice1Of3@DebugTypeProxy { [CompilationMapping(SourceConstructFlags.Field, 0, 0)] [CompilerGenerated] [DebuggerNonUserCode] public T1 Item { [CompilerGenerated] [DebuggerNonUserCode] get { return _obj.item; } } [DynamicDependency(DynamicallyAccessedMemberTypes.PublicFields | DynamicallyAccessedMemberTypes.NonPublicFields | DynamicallyAccessedMemberTypes.PublicProperties | DynamicallyAccessedMemberTypes.NonPublicProperties, typeof(FSharpChoice<, , >))] [CompilerGenerated] [DebuggerNonUserCode] public Choice1Of3@DebugTypeProxy(Choice1Of3 obj) { _obj = obj; } } [SpecialName] internal class Choice2Of3@DebugTypeProxy { [CompilationMapping(SourceConstructFlags.Field, 1, 0)] [CompilerGenerated] [DebuggerNonUserCode] public T2 Item { [CompilerGenerated] [DebuggerNonUserCode] get { return _obj.item; } } [DynamicDependency(DynamicallyAccessedMemberTypes.PublicFields | DynamicallyAccessedMemberTypes.NonPublicFields | DynamicallyAccessedMemberTypes.PublicProperties | DynamicallyAccessedMemberTypes.NonPublicProperties, typeof(FSharpChoice<, , >))] [CompilerGenerated] [DebuggerNonUserCode] public Choice2Of3@DebugTypeProxy(Choice2Of3 obj) { _obj = obj; } } [SpecialName] internal class Choice3Of3@DebugTypeProxy { [CompilationMapping(SourceConstructFlags.Field, 2, 0)] [CompilerGenerated] [DebuggerNonUserCode] public T3 Item { [CompilerGenerated] [DebuggerNonUserCode] get { return _obj.item; } } [DynamicDependency(DynamicallyAccessedMemberTypes.PublicFields | DynamicallyAccessedMemberTypes.NonPublicFields | DynamicallyAccessedMemberTypes.PublicProperties | DynamicallyAccessedMemberTypes.NonPublicProperties, typeof(FSharpChoice<, , >))] [CompilerGenerated] [DebuggerNonUserCode] public Choice3Of3@DebugTypeProxy(Choice3Of3 obj) { _obj = obj; } } [CompilerGenerated] [DebuggerNonUserCode] [DebuggerBrowsable(DebuggerBrowsableState.Never)] public int Tag { [CompilerGenerated] [DebuggerNonUserCode] get { return (this is Choice3Of3) ? 2 : ((this is Choice2Of3) ? 1 : 0); } } [CompilerGenerated] [DebuggerNonUserCode] [DebuggerBrowsable(DebuggerBrowsableState.Never)] public bool IsChoice1Of3 { [CompilerGenerated] [DebuggerNonUserCode] get { return this is Choice1Of3; } } [CompilerGenerated] [DebuggerNonUserCode] [DebuggerBrowsable(DebuggerBrowsableState.Never)] public bool IsChoice2Of3 { [CompilerGenerated] [DebuggerNonUserCode] get { return this is Choice2Of3; } } [CompilerGenerated] [DebuggerNonUserCode] [DebuggerBrowsable(DebuggerBrowsableState.Never)] public bool IsChoice3Of3 { [CompilerGenerated] [DebuggerNonUserCode] get { return this is Choice3Of3; } } [DynamicDependency(DynamicallyAccessedMemberTypes.PublicFields | DynamicallyAccessedMemberTypes.NonPublicFields | DynamicallyAccessedMemberTypes.PublicNestedTypes | DynamicallyAccessedMemberTypes.NonPublicNestedTypes | DynamicallyAccessedMemberTypes.PublicProperties | DynamicallyAccessedMemberTypes.NonPublicProperties, typeof(FSharpChoice<, , >))] [CompilerGenerated] [DebuggerNonUserCode] internal FSharpChoice() { } [CompilationMapping(SourceConstructFlags.UnionCase, 0)] public static FSharpChoice<T1, T2, T3> NewChoice1Of3(T1 item) { return new Choice1Of3(item); } [CompilationMapping(SourceConstructFlags.UnionCase, 1)] public static FSharpChoice<T1, T2, T3> NewChoice2Of3(T2 item) { return new Choice2Of3(item); } [CompilationMapping(SourceConstructFlags.UnionCase, 2)] public static FSharpChoice<T1, T2, T3> NewChoice3Of3(T3 item) { return new Choice3Of3(item); } [CompilerGenerated] public virtual sealed int CompareTo(FSharpChoice<T1, T2, T3> obj) { if (this != null) { if (obj != null) { int num = ((this is Choice3Of3) ? 2 : ((this is Choice2Of3) ? 1 : 0)); int num2 = ((obj is Choice3Of3) ? 2 : ((obj is Choice2Of3) ? 1 : 0)); if (num == num2) { IComparer genericComparer; if (!(this is Choice1Of3)) { if (this is Choice2Of3) { Choice2Of3 choice2Of = (Choice2Of3)this; Choice2Of3 choice2Of2 = (Choice2Of3)obj; genericComparer = LanguagePrimitives.GenericComparer; T2 item = choice2Of.item; T2 item2 = choice2Of2.item; return LanguagePrimitives.HashCompare.GenericComparisonWithComparerIntrinsic(genericComparer, item, item2); } if (this is Choice3Of3) { Choice3Of3 choice3Of = (Choice3Of3)this; Choice3Of3 choice3Of2 = (Choice3Of3)obj; genericComparer = LanguagePrimitives.GenericComparer; T3 item3 = choice3Of.item; T3 item4 = choice3Of2.item; return LanguagePrimitives.HashCompare.GenericComparisonWithComparerIntrinsic(genericComparer, item3, item4); } } Choice1Of3 choice1Of = (Choice1Of3)this; Choice1Of3 choice1Of2 = (Choice1Of3)obj; genericComparer = LanguagePrimitives.GenericComparer; T1 item5 = choice1Of.item; T1 item6 = choice1Of2.item; return LanguagePrimitives.HashCompare.GenericComparisonWithComparerIntrinsic(genericComparer, item5, item6); } return num - num2; } return 1; } if (obj != null) { return -1; } return 0; } [CompilerGenerated] public virtual sealed int CompareTo(object obj) { return CompareTo((FSharpChoice<T1, T2, T3>)obj); } [CompilerGenerated] public virtual sealed int CompareTo(object obj, IComparer comp) { FSharpChoice<T1, T2, T3> fSharpChoice = (FSharpChoice<T1, T2, T3>)obj; if (this != null) { if ((FSharpChoice<T1, T2, T3>)obj != null) { int num = ((this is Choice3Of3) ? 2 : ((this is Choice2Of3) ? 1 : 0)); FSharpChoice<T1, T2, T3> fSharpChoice2 = fSharpChoice; int num2 = ((fSharpChoice2 is Choice3Of3) ? 2 : ((fSharpChoice2 is Choice2Of3) ? 1 : 0)); if (num == num2) { if (!(this is Choice1Of3)) { if (this is Choice2Of3) { Choice2Of3 choice2Of = (Choice2Of3)this; Choice2Of3 choice2Of2 = (Choice2Of3)fSharpChoice; T2 item = choice2Of.item; T2 item2 = choice2Of2.item; return LanguagePrimitives.HashCompare.GenericComparisonWithComparerIntrinsic(comp, item, item2); } if (this is Choice3Of3) { Choice3Of3 choice3Of = (Choice3Of3)this; Choice3Of3 choice3Of2 = (Choice3Of3)fSharpChoice; T3 item3 = choice3Of.item; T3 item4 = choice3Of2.item; return LanguagePrimitives.HashCompare.GenericComparisonWithComparerIntrinsic(comp, item3, item4); } } Choice1Of3 choice1Of = (Choice1Of3)this; Choice1Of3 choice1Of2 = (Choice1Of3)fSharpChoice; T1 item5 = choice1Of.item; T1 item6 = choice1Of2.item; return LanguagePrimitives.HashCompare.GenericComparisonWithComparerIntrinsic(comp, item5, item6); } return num - num2; } return 1; } if ((FSharpChoice<T1, T2, T3>)obj != null) { return -1; } return 0; } [CompilerGenerated] public virtual sealed int GetHashCode(IEqualityComparer comp) { if (this != null) { int num = 0; if (!(this is Choice1Of3)) { if (this is Choice2Of3) { Choice2Of3 choice2Of = (Choice2Of3)this; num = 1; T2 item = choice2Of.item; return -1640531527 + (LanguagePrimitives.HashCompare.GenericHashParamObj(comp, item) + ((num << 6) + (num >> 2))); } if (this is Choice3Of3) { Choice3Of3 choice3Of = (Choice3Of3)this; num = 2; T3 item2 = choice3Of.item; return -1640531527 + (LanguagePrimitives.HashCompare.GenericHashParamObj(comp, item2) + ((num << 6) + (num >> 2))); } } Choice1Of3 choice1Of = (Choice1Of3)this; num = 0; T1 item3 = choice1Of.item; return -1640531527 + (LanguagePrimitives.HashCompare.GenericHashParamObj(comp, item3) + ((num << 6) + (num >> 2))); } return 0; } [CompilerGenerated] public sealed override int GetHashCode() { return GetHashCode(LanguagePrimitives.GenericEqualityComparer); } [CompilerGenerated] public virtual sealed bool Equals(object obj, IEqualityComparer comp) { if (this != null) { if (obj is FSharpChoice<T1, T2, T3> fSharpChoice) { int num = ((this is Choice3Of3) ? 2 : ((this is Choice2Of3) ? 1 : 0)); FSharpChoice<T1, T2, T3> fSharpChoice2 = fSharpChoice; int num2 = ((fSharpChoice2 is Choice3Of3) ? 2 : ((fSharpChoice2 is Choice2Of3) ? 1 : 0)); if (num == num2) { if (!(this is Choice1Of3)) { if (this is Choice2Of3) { Choice2Of3 choice2Of = (Choice2Of3)this; Choice2Of3 choice2Of2 = (Choice2Of3)fSharpChoice; T2 item = choice2Of.item; T2 item2 = choice2Of2.item; return LanguagePrimitives.HashCompare.GenericEqualityWithComparerIntrinsic(comp, item, item2); } if (this is Choice3Of3) { Choice3Of3 choice3Of = (Choice3Of3)this; Choice3Of3 choice3Of2 = (Choice3Of3)fSharpChoice; T3 item3 = choice3Of.item; T3 item4 = choice3Of2.item; return LanguagePrimitives.HashCompare.GenericEqualityWithComparerIntrinsic(comp, item3, item4); } } Choice1Of3 choice1Of = (Choice1Of3)this; Choice1Of3 choice1Of2 = (Choice1Of3)fSharpChoice; T1 item5 = choice1Of.item; T1 item6 = choice1Of2.item; return LanguagePrimitives.HashCompare.GenericEqualityWithComparerIntrinsic(comp, item5, item6); } return false; } return false; } return obj == null; } [CompilerGenerated] public virtual sealed bool Equals(FSharpChoice<T1, T2, T3> obj) { if (this != null) { if (obj != null) { int num = ((this is Choice3Of3) ? 2 : ((this is Choice2Of3) ? 1 : 0)); int num2 = ((obj is Choice3Of3) ? 2 : ((obj is Choice2Of3) ? 1 : 0)); if (num == num2) { if (!(this is Choice1Of3)) { if (this is Choice2Of3) { Choice2Of3 choice2Of = (Choice2Of3)this; Choice2Of3 choice2Of2 = (Choice2Of3)obj; T2 item = choice2Of.item; T2 item2 = choice2Of2.item; return LanguagePrimitives.HashCompare.GenericEqualityERIntrinsic(item, item2); } if (this is Choice3Of3) { Choice3Of3 choice3Of = (Choice3Of3)this; Choice3Of3 choice3Of2 = (Choice3Of3)obj; T3 item3 = choice3Of.item; T3 item4 = choice3Of2.item; return LanguagePrimitives.HashCompare.GenericEqualityERIntrinsic(item3, item4); } } Choice1Of3 choice1Of = (Choice1Of3)this; Choice1Of3 choice1Of2 = (Choice1Of3)obj; T1 item5 = choice1Of.item; T1 item6 = choice1Of2.item; return LanguagePrimitives.HashCompare.GenericEqualityERIntrinsic(item5, item6); } return false; } return false; } return obj == null; } [CompilerGenerated] public sealed override bool Equals(object obj) { if (obj is FSharpChoice<T1, T2, T3> obj2) { return Equals(obj2); } return false; } } [Serializable] [StructLayout(LayoutKind.Auto, CharSet = CharSet.Auto)] [StructuralEquality] [StructuralComparison] [CompiledName("FSharpChoice`4")] [CompilationMapping(SourceConstructFlags.SumType)] public abstract class FSharpChoice<T1, T2, T3, T4> : IEquatable<FSharpChoice<T1, T2, T3, T4>>, IStructuralEquatable, IComparable<FSharpChoice<T1, T2, T3, T4>>, IComparable, IStructuralComparable { public static class Tags { public const int Choice1Of4 = 0; public const int Choice2Of4 = 1; public const int Choice3Of4 = 2; public const int Choice4Of4 = 3; } [Serializable] [SpecialName] [DebuggerTypeProxy(typeof(FSharpChoice<, , , >.Choice1Of4@DebugTypeProxy))] public class Choice1Of4 : FSharpChoice<T1, T2, T3, T4> { [DebuggerBrowsable(DebuggerBrowsableState.Never)] [CompilerGenerated] [DebuggerNonUserCode] internal readonly T1 item; [CompilationMapping(SourceConstructFlags.Field, 0, 0)] [CompilerGenerated] [DebuggerNonUserCode] public T1 Item { [CompilerGenerated] [DebuggerNonUserCode] get { return item; } } [DynamicDependency(DynamicallyAccessedMemberTypes.PublicFields | DynamicallyAccessedMemberTypes.NonPublicFields | DynamicallyAccessedMemberTypes.PublicProperties | DynamicallyAccessedMemberTypes.NonPublicProperties, typeof(FSharpChoice<, , , >))] [CompilerGenerated] [DebuggerNonUserCode] internal Choice1Of4(T1 item) : base(0) { this.item = item; } } [Serializable] [SpecialName] [DebuggerTypeProxy(typeof(FSharpChoice<, , , >.Choice2Of4@DebugTypeProxy))] public class Choice2Of4 : FSharpChoice<T1, T2, T3, T4> { [DebuggerBrowsable(DebuggerBrowsableState.Never)] [CompilerGenerated] [DebuggerNonUserCode] internal readonly T2 item; [CompilationMapping(SourceConstructFlags.Field, 1, 0)] [CompilerGenerated] [DebuggerNonUserCode] public T2 Item { [CompilerGenerated] [DebuggerNonUserCode] get { return item; } } [DynamicDependency(DynamicallyAccessedMemberTypes.PublicFields | DynamicallyAccessedMemberTypes.NonPublicFields | DynamicallyAccessedMemberTypes.PublicProperties | DynamicallyAccessedMemberTypes.NonPublicProperties, typeof(FSharpChoice<, , , >))] [CompilerGenerated] [DebuggerNonUserCode] internal Choice2Of4(T2 item) : base(1) { this.item = item; } } [Serializable] [SpecialName] [DebuggerTypeProxy(typeof(FSharpChoice<, , , >.Choice3Of4@DebugTypeProxy))] public class Choice3Of4 : FSharpChoice<T1, T2, T3, T4> { [DebuggerBrowsable(DebuggerBrowsableState.Never)] [CompilerGenerated] [DebuggerNonUserCode] internal readonly T3 item; [CompilationMapping(SourceConstructFlags.Field, 2, 0)] [CompilerGenerated] [DebuggerNonUserCode] public T3 Item { [CompilerGenerated] [DebuggerNonUserCode] get { return item; } } [DynamicDependency(DynamicallyAccessedMemberTypes.PublicFields | DynamicallyAccessedMemberTypes.NonPublicFields | DynamicallyAccessedMemberTypes.PublicProperties | DynamicallyAccessedMemberTypes.NonPublicProperties, typeof(FSharpChoice<, , , >))] [CompilerGenerated] [DebuggerNonUserCode] internal Choice3Of4(T3 item) : base(2) { this.item = item; } } [Serializable] [SpecialName] [DebuggerTypeProxy(typeof(FSharpChoice<, , , >.Choice4Of4@DebugTypeProxy))] public class Choice4Of4 : FSharpChoice<T1, T2, T3, T4> { [DebuggerBrowsable(DebuggerBrowsableState.Never)] [CompilerGenerated] [DebuggerNonUserCode] internal readonly T4 item; [CompilationMapping(SourceConstructFlags.Field, 3, 0)] [CompilerGenerated] [DebuggerNonUserCode] public T4 Item { [CompilerGenerated] [DebuggerNonUserCode] get { return item; } } [DynamicDependency(DynamicallyAccessedMemberTypes.PublicFields | DynamicallyAccessedMemberTypes.NonPublicFields | DynamicallyAccessedMemberTypes.PublicProperties | DynamicallyAccessedMemberTypes.NonPublicProperties, typeof(FSharpChoice<, , , >))] [CompilerGenerated] [DebuggerNonUserCode] internal Choice4Of4(T4 item) : base(3) { this.item = item; } } [SpecialName] internal class Choice1Of4@DebugTypeProxy { [CompilationMapping(SourceConstructFlags.Field, 0, 0)] [CompilerGenerated] [DebuggerNonUserCode] public T1 Item { [CompilerGenerated] [DebuggerNonUserCode] get { return _obj.item; } } [DynamicDependency(DynamicallyAccessedMemberTypes.PublicFields | DynamicallyAccessedMemberTypes.NonPublicFields | DynamicallyAccessedMemberTypes.PublicProperties | DynamicallyAccessedMemberTypes.NonPublicProperties, typeof(FSharpChoice<, , , >))] [CompilerGenerated] [DebuggerNonUserCode] public Choice1Of4@DebugTypeProxy(Choice1Of4 obj) { _obj = obj; } } [SpecialName] internal class Choice2Of4@DebugTypeProxy { [CompilationMapping(SourceConstructFlags.Field, 1, 0)] [CompilerGenerated] [DebuggerNonUserCode] public T2 Item { [CompilerGenerated] [DebuggerNonUserCode] get { return _obj.item; } } [DynamicDependency(DynamicallyAccessedMemberTypes.PublicFields | DynamicallyAccessedMemberTypes.NonPublicFields | DynamicallyAccessedMemberTypes.PublicProperties | DynamicallyAccessedMemberTypes.NonPublicProperties, typeof(FSharpChoice<, , , >))] [CompilerGenerated] [DebuggerNonUserCode] public Choice2Of4@DebugTypeProxy(Choice2Of4 obj) { _obj = obj; } } [SpecialName] internal class Choice3Of4@DebugTypeProxy { [CompilationMapping(SourceConstructFlags.Field, 2, 0)] [CompilerGenerated] [DebuggerNonUserCode] public T3 Item { [CompilerGenerated] [DebuggerNonUserCode] get { return _obj.item; } } [DynamicDependency(DynamicallyAccessedMemberTypes.PublicFields | DynamicallyAccessedMemberTypes.NonPublicFields | DynamicallyAccessedMemberTypes.PublicProperties | DynamicallyAccessedMemberTypes.NonPublicProperties, typeof(FSharpChoice<, , , >))] [CompilerGenerated] [DebuggerNonUserCode] public Choice3Of4@DebugTypeProxy(Choice3Of4 obj) { _obj = obj; } } [SpecialName] internal class Choice4Of4@DebugTypeProxy { [CompilationMapping(SourceConstructFlags.Field, 3, 0)] [CompilerGenerated] [DebuggerNonUserCode] public T4 Item { [CompilerGenerated] [DebuggerNonUserCode] get { return _obj.item; } } [DynamicDependency(DynamicallyAccessedMemberTypes.PublicFields | DynamicallyAccessedMemberTypes.NonPublicFields | DynamicallyAccessedMemberTypes.PublicProperties | DynamicallyAccessedMemberTypes.NonPublicProperties, typeof(FSharpChoice<, , , >))] [CompilerGenerated] [DebuggerNonUserCode] public Choice4Of4@DebugTypeProxy(Choice4Of4 obj) { _obj = obj; } } [CompilerGenerated] [DebuggerNonUserCode] [DebuggerBrowsable(DebuggerBrowsableState.Never)] public int Tag { [DebuggerNonUserCode] get; } [CompilerGenerated] [DebuggerNonUserCode] [DebuggerBrowsable(DebuggerBrowsableState.Never)] public bool IsChoice1Of4 { [CompilerGenerated] [DebuggerNonUserCode] get { return Tag == 0; } } [CompilerGenerated] [DebuggerNonUserCode] [DebuggerBrowsable(DebuggerBrowsableState.Never)] public bool IsChoice2Of4 { [CompilerGenerated] [DebuggerNonUserCode] get { return Tag == 1; } } [CompilerGenerated] [DebuggerNonUserCode] [DebuggerBrowsable(DebuggerBrowsableState.Never)] public bool IsChoice3Of4 { [CompilerGenerated] [DebuggerNonUserCode] get { return Tag == 2; } } [CompilerGenerated] [DebuggerNonUserCode] [DebuggerBrowsable(DebuggerBrowsableState.Never)] public bool IsChoice4Of4 { [CompilerGenerated] [DebuggerNonUserCode] get { return Tag == 3; } } [DynamicDependency(DynamicallyAccessedMemberTypes.PublicFields | DynamicallyAccessedMemberTypes.NonPublicFields | DynamicallyAccessedMemberTypes.PublicNestedTypes | DynamicallyAccessedMemberTypes.NonPublicNestedTypes | DynamicallyAccessedMemberTypes.PublicProperties | DynamicallyAccessedMemberTypes.NonPublicProperties, typeof(FSharpChoice<, , , >))] [CompilerGenerated] [DebuggerNonUserCode] internal FSharpChoice(int _tag) { this._tag = _tag; } [CompilationMapping(SourceConstructFlags.UnionCase, 0)] public static FSharpChoice<T1, T2, T3, T4> NewChoice1Of4(T1 item) { return new Choice1Of4(item); } [CompilationMapping(SourceConstructFlags.UnionCase, 1)] public static FSharpChoice<T1, T2, T3, T4> NewChoice2Of4(T2 item) { return new Choice2Of4(item); } [CompilationMapping(SourceConstructFlags.UnionCase, 2)] public static FSharpChoice<T1, T2, T3, T4> NewChoice3Of4(T3 item) { return new Choice3Of4(item); } [CompilationMapping(SourceConstructFlags.UnionCase, 3)] public static FSharpChoice<T1, T2, T3, T4> NewChoice4Of4(T4 item) { return new Choice4Of4(item); } [CompilerGenerated] public virtual sealed int CompareTo(FSharpChoice<T1, T2, T3, T4> obj) { if (this != null) { if (obj != null) { int tag = _tag; int tag2 = obj._tag; if (tag == tag2) { switch (Tag) { default: { Choice1Of4 choice1Of = (Choice1Of4)this; Choice1Of4 choice1Of2 = (Choice1Of4)obj; IComparer genericComparer = LanguagePrimitives.GenericComparer; T1 item7 = choice1Of.item; T1 item8 = choice1Of2.item; return LanguagePrimitives.HashCompare.GenericComparisonWithComparerIntrinsic(genericComparer, item7, item8); } case 1: { Choice2Of4 choice2Of = (Choice2Of4)this; Choice2Of4 choice2Of2 = (Choice2Of4)obj; IComparer genericComparer = LanguagePrimitives.GenericComparer; T2 item5 = choice2Of.item; T2 item6 = choice2Of2.item; return LanguagePrimitives.HashCompare.GenericComparisonWithComparerIntrinsic(genericComparer, item5, item6); } case 2: { Choice3Of4 choice3Of = (Choice3Of4)this; Choice3Of4 choice3Of2 = (Choice3Of4)obj; IComparer genericComparer = LanguagePrimitives.GenericComparer; T3 item3 = choice3Of.item; T3 item4 = choice3Of2.item; return LanguagePrimitives.HashCompare.GenericComparisonWithComparerIntrinsic(genericComparer, item3, item4); } case 3: { Choice4Of4 choice4Of = (Choice4Of4)this; Choice4Of4 choice4Of2 = (Choice4Of4)obj; IComparer genericComparer = LanguagePrimitives.GenericComparer; T4 item = choice4Of.item; T4 item2 = choice4Of2.item; return LanguagePrimitives.HashCompare.GenericComparisonWithComparerIntrinsic(genericComparer, item, item2); } } } return tag - tag2; } return 1; } if (obj != null) { return -1; } return 0; } [CompilerGenerated] public virtual sealed int CompareTo(object obj) { return CompareTo((FSharpChoice<T1, T2, T3, T4>)obj); } [CompilerGenerated] public virtual sealed int CompareTo(object obj, IComparer comp) { FSharpChoice<T1, T2, T3, T4> fSharpChoice = (FSharpChoice<T1, T2, T3, T4>)obj; if (this != null) { if ((FSharpChoice<T1, T2, T3, T4>)obj != null) { int tag = _tag; int tag2 = fSharpChoice._tag; if (tag == tag2) { switch (Tag) { default: { Choice1Of4 choice1Of = (Choice1Of4)this; Choice1Of4 choice1Of2 = (Choice1Of4)fSharpChoice; T1 item7 = choice1Of.item; T1 item8 = choice1Of2.item; return LanguagePrimitives.HashCompare.GenericComparisonWithComparerIntrinsic(comp, item7, item8); } case 1: { Choice2Of4 choice2Of = (Choice2Of4)this; Choice2Of4 choice2Of2 = (Choice2Of4)fSharpChoice; T2 item5 = choice2Of.item; T2 item6 = choice2Of2.item; return LanguagePrimitives.HashCompare.GenericComparisonWithComparerIntrinsic(comp, item5, item6); } case 2: { Choice3Of4 choice3Of = (Choice3Of4)this; Choice3Of4 choice3Of2 = (Choice3Of4)fSharpChoice; T3 item3 = choice3Of.item; T3 item4 = choice3Of2.item; return LanguagePrimitives.HashCompare.GenericComparisonWithComparerIntrinsic(comp, item3, item4); } case 3: { Choice4Of4 choice4Of = (Choice4Of4)this; Choice4Of4 choice4Of2 = (Choice4Of4)fSharpChoice; T4 item = choice4Of.item; T4 item2 = choice4Of2.item; return LanguagePrimitives.HashCompare.GenericComparisonWithComparerIntrinsic(comp, item, item2); } } } return tag - tag2; } return 1; } if ((FSharpChoice<T1, T2, T3, T4>)obj != null) { return -1; } return 0; } [CompilerGenerated] public virtual sealed int GetHashCode(IEqualityComparer comp) { if (this != null) { int num = 0; switch (Tag) { default: { Choice1Of4 choice1Of = (Choice1Of4)this; num = 0; T1 item4 = choice1Of.item; return -1640531527 + (LanguagePrimitives.HashCompare.GenericHashParamObj(comp, item4) + ((num << 6) + (num >> 2))); } case 1: { Choice2Of4 choice2Of = (Choice2Of4)this; num = 1; T2 item3 = choice2Of.item; return -1640531527 + (LanguagePrimitives.HashCompare.GenericHashParamObj(comp, item3) + ((num << 6) + (num >> 2))); } case 2: { Choice3Of4 choice3Of = (Choice3Of4)this; num = 2; T3 item2 = choice3Of.item; return -1640531527 + (LanguagePrimitives.HashCompare.GenericHashParamObj(comp, item2) + ((num << 6) + (num >> 2))); } case 3: { Choice4Of4 choice4Of = (Choice4Of4)this; num = 3; T4 item = choice4Of.item; return -1640531527 + (LanguagePrimitives.HashCompare.GenericHashParamObj(comp, item) + ((num << 6) + (num >> 2))); } } } return 0; } [CompilerGenerated] public sealed override int GetHashCode() { return GetHashCode(LanguagePrimitives.GenericEqualityComparer); } [CompilerGenerated] public virtual sealed bool Equals(object obj, IEqualityComparer comp) { if (this != null) { if (obj is FSharpChoice<T1, T2, T3, T4> fSharpChoice) { int tag = _tag; int tag2 = fSharpChoice._tag; if (tag == tag2) { switch (Tag) { default: { Choice1Of4 choice1Of = (Choice1Of4)this; Choice1Of4 choice1Of2 = (Choice1Of4)fSharpChoice; T1 item7 = choice1Of.item; T1 item8 = choice1Of2.item; return LanguagePrimitives.HashCompare.GenericEqualityWithComparerIntrinsic(comp, item7, item8); } case 1: { Choice2Of4 choice2Of = (Choice2Of4)this; Choice2Of4 choice2Of2 = (Choice2Of4)fSharpChoice; T2 item5 = choice2Of.item; T2 item6 = choice2Of2.item; return LanguagePrimitives.HashCompare.GenericEqualityWithComparerIntrinsic(comp, item5, item6); } case 2: { Choice3Of4 choice3Of = (Choice3Of4)this; Choice3Of4 choice3Of2 = (Choice3Of4)fSharpChoice; T3 item3 = choice3Of.item; T3 item4 = choice3Of2.item; return LanguagePrimitives.HashCompare.GenericEqualityWithComparerIntrinsic(comp, item3, item4); } case 3: { Choice4Of4 choice4Of = (Choice4Of4)this; Choice4Of4 choice4Of2 = (Choice4Of4)fSharpChoice; T4 item = choice4Of.item; T4 item2 = choice4Of2.item; return LanguagePrimitives.HashCompare.GenericEqualityWithComparerIntrinsic(comp, item, item2); } } } return false; } return false; } return obj == null; } [CompilerGenerated] public virtual sealed bool Equals(FSharpChoice<T1, T2, T3, T4> obj) { if (this != null) { if (obj != null) { int tag = _tag; int tag2 = obj._tag; if (tag == tag2) { switch (Tag) { default: { Choice1Of4 choice1Of = (Choice1Of4)this; Choice1Of4 choice1Of2 = (Choice1Of4)obj; T1 item7 = choice1Of.item; T1 item8 = choice1Of2.item; return LanguagePrimitives.HashCompare.GenericEqualityERIntrinsic(item7, item8); } case 1: { Choice2Of4 choice2Of = (Choice2Of4)this; Choice2Of4 choice2Of2 = (Choice2Of4)obj; T2 item5 = choice2Of.item; T2 item6 = choice2Of2.item; return LanguagePrimitives.HashCompare.GenericEqualityERIntrinsic(item5, item6); } case 2: { Choice3Of4 choice3Of = (Choice3Of4)this; Choice3Of4 choice3Of2 = (Choice3Of4)obj; T3 item3 = choice3Of.item; T3 item4 = choice3Of2.item; return LanguagePrimitives.HashCompare.GenericEqualityERIntrinsic(item3, item4); } case 3: { Choice4Of4 choice4Of = (Choice4Of4)this; Choice4Of4 choice4Of2 = (Choice4Of4)obj; T4 item = choice4Of.item; T4 item2 = choice4Of2.item; return LanguagePrimitives.HashCompare.GenericEqualityERIntrinsic(item, item2); } } } return false; } return false; } return obj == null; } [CompilerGenerated] public sealed override bool Equals(object obj) { if (obj is FSharpChoice<T1, T2, T3, T4> obj2) { return Equals(obj2); } return false; } } [Serializable] [StructLayout(LayoutKind.Auto, CharSet = CharSet.Auto)] [StructuralEquality] [StructuralComparison] [CompiledName("FSharpChoice`5")] [CompilationMapping(SourceConstructFlags.SumType)] public abstract class FSharpChoice<T1, T2, T3, T4, T5> : IEquatable<FSharpChoice<T1, T2, T3, T4, T5>>, IStructuralEquatable, IComparable<FSharpChoice<T1, T2, T3, T4, T5>>, IComparable, IStructuralComparable { public static class Tags { public const int Choice1Of5 = 0; public const int Choice2Of5 = 1; public const int Choice3Of5 = 2; public const int Choice4Of5 = 3; public const int Choice5Of5 = 4; } [Serializable] [SpecialName] [DebuggerTypeProxy(typeof(FSharpChoice<, , , , >.Choice1Of5@DebugTypeProxy))] public class Choice1Of5 : FSharpChoice<T1, T2, T3, T4, T5> { [DebuggerBrowsable(DebuggerBrowsableState.Never)] [CompilerGenerated] [DebuggerNonUserCode] internal readonly T1 item; [CompilationMapping(SourceConstructFlags.Field, 0, 0)] [CompilerGenerated] [DebuggerNonUserCode] public T1 Item { [CompilerGenerated] [DebuggerNonUserCode] get { return item; } } [DynamicDependency(DynamicallyAccessedMemberTypes.PublicFields | DynamicallyAccessedMemberTypes.NonPublicFields | DynamicallyAccessedMemberTypes.PublicProperties | DynamicallyAccessedMemberTypes.NonPublicProperties, typeof(FSharpChoice<, , , , >))] [CompilerGenerated] [DebuggerNonUserCode] internal Choice1Of5(T1 item) : base(0) { this.item = item; } } [Serializable] [SpecialName] [DebuggerTypeProxy(typeof(FSharpChoice<, , , , >.Choice2Of5@DebugTypeProxy))] public class Choice2Of5 : FSharpChoice<T1, T2, T3, T4, T5> { [DebuggerBrowsable(DebuggerBrowsableState.Never)] [CompilerGenerated] [DebuggerNonUserCode] internal readonly T2 item; [CompilationMapping(SourceConstructFlags.Field, 1, 0)] [CompilerGenerated] [DebuggerNonUserCode] public T2 Item { [CompilerGenerated] [DebuggerNonUserCode] get { return item; } } [DynamicDependency(DynamicallyAccessedMemberTypes.PublicFields | DynamicallyAccessedMemberTypes.NonPublicFields | DynamicallyAccessedMemberTypes.PublicProperties | DynamicallyAccessedMemberTypes.NonPublicProperties, typeof(FSharpChoice<, , , , >))] [CompilerGenerated] [DebuggerNonUserCode] internal Choice2Of5(T2 item) : base(1) { this.item = item; } } [Serializable] [SpecialName] [DebuggerTypeProxy(typeof(FSharpChoice<, , , , >.Choice3Of5@DebugTypeProxy))] public class Choice3Of5 : FSharpChoice<T1, T2, T3, T4, T5> { [DebuggerBrowsable(DebuggerBrowsableState.Never)] [CompilerGenerated] [DebuggerNonUserCode] internal readonly T3 item; [CompilationMapping(SourceConstructFlags.Field, 2, 0)] [CompilerGenerated] [DebuggerNonUserCode] public T3 Item { [CompilerGenerated] [DebuggerNonUserCode] get { return item; } } [DynamicDependency(DynamicallyAccessedMemberTypes.PublicFields | DynamicallyAccessedMemberTypes.NonPublicFields | DynamicallyAccessedMemberTypes.PublicProperties | DynamicallyAccessedMemberTypes.NonPublicProperties, typeof(FSharpChoice<, , , , >))] [CompilerGenerated] [DebuggerNonUserCode] internal Choice3Of5(T3 item) : base(2) { this.item = item; } } [Serializable] [SpecialName] [DebuggerTypeProxy(typeof(FSharpChoice<, , , , >.Choice4Of5@DebugTypeProxy))] public class Choice4Of5 : FSharpChoice<T1, T2, T3, T4, T5> { [DebuggerBrowsable(DebuggerBrowsableState.Never)] [CompilerGenerated] [DebuggerNonUserCode] internal readonly T4 item; [CompilationMapping(SourceConstructFlags.Field, 3, 0)] [CompilerGenerated] [DebuggerNonUserCode] public T4 Item { [CompilerGenerated] [DebuggerNonUserCode] get { return item; } } [DynamicDependency(DynamicallyAccessedMemberTypes.PublicFields | DynamicallyAccessedMemberTypes.NonPublicFields | DynamicallyAccessedMemberTypes.PublicProperties | DynamicallyAccessedMemberTypes.NonPublicProperties, typeof(FSharpChoice<, , , , >))] [CompilerGenerated] [DebuggerNonUserCode] internal Choice4Of5(T4 item) : base(3) { this.item = item; } } [Serializable] [SpecialName] [DebuggerTypeProxy(typeof(FSharpChoice<, , , , >.Choice5Of5@DebugTypeProxy))] public class Choice5Of5 : FSharpChoice<T1, T2, T3, T4, T5> { [DebuggerBrowsable(DebuggerBrowsableState.Never)] [CompilerGenerated] [DebuggerNonUserCode] internal readonly T5 item; [CompilationMapping(SourceConstructFlags.Field, 4, 0)] [CompilerGenerated] [DebuggerNonUserCode] public T5 Item { [CompilerGenerated] [DebuggerNonUserCode] get { return item; } } [DynamicDependency(DynamicallyAccessedMemberTypes.PublicFields | DynamicallyAccessedMemberTypes.NonPublicFields | DynamicallyAccessedMemberTypes.PublicProperties | DynamicallyAccessedMemberTypes.NonPublicProperties, typeof(FSharpChoice<, , , , >))] [CompilerGenerated] [DebuggerNonUserCode] internal Choice5Of5(T5 item) : base(4) { this.item = item; } } [SpecialName] internal class Choice1Of5@DebugTypeProxy { [CompilationMapping(SourceConstructFlags.Field, 0, 0)] [CompilerGenerated] [DebuggerNonUserCode] public T1 Item { [CompilerGenerated] [DebuggerNonUserCode] get { return _obj.item; } } [DynamicDependency(DynamicallyAccessedMemberTypes.PublicFields | DynamicallyAccessedMemberTypes.NonPublicFields | DynamicallyAccessedMemberTypes.PublicProperties | DynamicallyAccessedMemberTypes.NonPublicProperties, typeof(FSharpChoice<, , , , >))] [CompilerGenerated] [DebuggerNonUserCode] public Choice1Of5@DebugTypeProxy(Choice1Of5 obj) { _obj = obj; } } [SpecialName] internal class Choice2Of5@DebugTypeProxy { [CompilationMapping(SourceConstructFlags.Field, 1, 0)] [CompilerGenerated] [DebuggerNonUserCode] public T2 Item { [CompilerGenerated] [DebuggerNonUserCode] get { return _obj.item; } } [DynamicDependency(DynamicallyAccessedMemberTypes.PublicFields | DynamicallyAccessedMemberTypes.NonPublicFields | DynamicallyAccessedMemberTypes.PublicProperties | DynamicallyAccessedMemberTypes.NonPublicProperties, typeof(FSharpChoice<, , , , >))] [CompilerGenerated] [DebuggerNonUserCode] public Choice2Of5@DebugTypeProxy(Choice2Of5 obj) { _obj = obj; } } [SpecialName] internal class Choice3Of5@DebugTypeProxy { [CompilationMapping(SourceConstructFlags.Field, 2, 0)] [CompilerGenerated] [DebuggerNonUserCode] public T3 Item { [CompilerGenerated] [DebuggerNonUserCode] get { return _obj.item; } } [DynamicDependency(DynamicallyAccessedMemberTypes.PublicFields | DynamicallyAccessedMemberTypes.NonPublicFields | DynamicallyAccessedMemberTypes.PublicProperties | DynamicallyAccessedMemberTypes.NonPublicProperties, typeof(FSharpChoice<, , , , >))] [CompilerGenerated] [DebuggerNonUserCode] public Choice3Of5@DebugTypeProxy(Choice3Of5 obj) { _obj = obj; } } [SpecialName] internal class Choice4Of5@DebugTypeProxy { [CompilationMapping(SourceConstructFlags.Field, 3, 0)] [CompilerGenerated] [DebuggerNonUserCode] public T4 Item { [CompilerGenerated] [DebuggerNonUserCode] get { return _obj.item; } } [DynamicDependency(DynamicallyAccessedMemberTypes.PublicFields | DynamicallyAccessedMemberTypes.NonPublicFields | DynamicallyAccessedMemberTypes.PublicProperties | DynamicallyAccessedMemberTypes.NonPublicProperties, typeof(FSharpChoice<, , , , >))] [CompilerGenerated] [DebuggerNonUserCode] public Choice4Of5@DebugTypeProxy(Choice4Of5 obj) { _obj = obj; } } [SpecialName] internal class Choice5Of5@DebugTypeProxy { [CompilationMapping(SourceConstructFlags.Field, 4, 0)] [CompilerGenerated] [DebuggerNonUserCode] public T5 Item { [CompilerGenerated] [DebuggerNonUserCode] get { return _obj.item; } } [DynamicDependency(DynamicallyAccessedMemberTypes.PublicFields | DynamicallyAccessedMemberTypes.NonPublicFields | DynamicallyAccessedMemberTypes.PublicProperties | DynamicallyAccessedMemberTypes.NonPublicProperties, typeof(FSharpChoice<, , , , >))] [CompilerGenerated] [DebuggerNonUserCode] public Choice5Of5@DebugTypeProxy(Choice5Of5 obj) { _obj = obj; } } [CompilerGenerated] [DebuggerNonUserCode] [DebuggerBrowsable(DebuggerBrowsableState.Never)] public int Tag { [DebuggerNonUserCode] get; } [CompilerGenerated] [DebuggerNonUserCode] [DebuggerBrowsable(DebuggerBrowsableState.Never)] public bool IsChoice1Of5 { [CompilerGenerated] [DebuggerNonUserCode] get { return Tag == 0; } } [CompilerGenerated] [DebuggerNonUserCode] [DebuggerBrowsable(DebuggerBrowsableState.Never)] public bool IsChoice2Of5 { [CompilerGenerated] [DebuggerNonUserCode] get { return Tag == 1; } } [CompilerGenerated] [DebuggerNonUserCode] [DebuggerBrowsable(DebuggerBrowsableState.Never)] public bool IsChoice3Of5 { [CompilerGenerated] [DebuggerNonUserCode] get { return Tag == 2; } } [CompilerGenerated] [DebuggerNonUserCode] [DebuggerBrowsable(DebuggerBrowsableState.Never)] public bool IsChoice4Of5 { [CompilerGenerated] [DebuggerNonUserCode] get { return Tag == 3; } } [CompilerGenerated] [DebuggerNonUserCode] [DebuggerBrowsable(DebuggerBrowsableState.Never)] public bool IsChoice5Of5 { [CompilerGenerated] [DebuggerNonUserCode] get { return Tag == 4; } } [DynamicDependency(DynamicallyAccessedMemberTypes.PublicFields | DynamicallyAccessedMemberTypes.NonPublicFields | DynamicallyAccessedMemberTypes.PublicNestedTypes | DynamicallyAccessedMemberTypes.NonPublicNestedTypes | DynamicallyAccessedMemberTypes.PublicProperties | DynamicallyAccessedMemberTypes.NonPublicProperties, typeof(FSharpChoice<, , , , >))] [CompilerGenerated] [DebuggerNonUserCode] internal FSharpChoice(int _tag) { this._tag = _tag; } [CompilationMapping(SourceConstructFlags.UnionCase, 0)] public static FSharpChoice<T1, T2, T3, T4, T5> NewChoice1Of5(T1 item) { return new Choice1Of5(item); } [CompilationMapping(SourceConstructFlags.UnionCase, 1)] public static FSharpChoice<T1, T2, T3, T4, T5> NewChoice2Of5(T2 item) { return new Choice2Of5(item); } [CompilationMapping(SourceConstructFlags.UnionCase, 2)] public static FSharpChoice<T1, T2, T3, T4, T5> NewChoice3Of5(T3 item) { return new Choice3Of5(item); } [CompilationMapping(SourceConstructFlags.UnionCase, 3)] public static FSharpChoice<T1, T2, T3, T4, T5> NewChoice4Of5(T4 item) { return new Choice4Of5(item); } [CompilationMapping(SourceConstructFlags.UnionCase, 4)] public static FSharpChoice<T1, T2, T3, T4, T5> NewChoice5Of5(T5 item) { return new Choice5Of5(item); } [CompilerGenerated] public virtual sealed int CompareTo(FSharpChoice<T1, T2, T3, T4, T5> obj) { if (this != null) { if (obj != null) { return $Prim-types.CompareTo$cont@3583(this, obj, null); } return 1; } if (obj != null) { return -1; } return 0; } [CompilerGenerated] public virtual sealed int CompareTo(object obj) { return CompareTo((FSharpChoice<T1, T2, T3, T4, T5>)obj); } [CompilerGenerated] public virtual sealed int CompareTo(object obj, IComparer comp) { FSharpChoice<T1, T2, T3, T4, T5> objTemp = (FSharpChoice<T1, T2, T3, T4, T5>)obj; if (this != null) { return $Prim-types.CompareTo$cont@3583-1(comp, this, obj, objTemp, null); } if ((FSharpChoice<T1, T2, T3, T4, T5>)obj != null) { return -1; } return 0; } [CompilerGenerated] public virtual sealed int GetHashCode(IEqualityComparer comp) { if (this != null) { int num = 0; switch (Tag) { default: { Choice1Of5 choice1Of = (Choice1Of5)this; num = 0; T1 item5 = choice1Of.item; return -1640531527 + (LanguagePrimitives.HashCompare.GenericHashParamObj(comp, item5) + ((num << 6) + (num >> 2))); } case 1: { Choice2Of5 choice2Of = (Choice2Of5)this; num = 1; T2 item4 = choice2Of.item; return -1640531527 + (LanguagePrimitives.HashCompare.GenericHashParamObj(comp, item4) + ((num << 6) + (num >> 2))); } case 2: { Choice3Of5 choice3Of = (Choice3Of5)this; num = 2; T3 item3 = choice3Of.item; return -1640531527 + (LanguagePrimitives.HashCompare.GenericHashParamObj(comp, item3) + ((num << 6) + (num >> 2))); } case 3: { Choice4Of5 choice4Of = (Choice4Of5)this; num = 3; T4 item2 = choice4Of.item; return -1640531527 + (LanguagePrimitives.HashCompare.GenericHashParamObj(comp, item2) + ((num << 6) + (num >> 2))); } case 4: { Choice5Of5 choice5Of = (Choice5Of5)this; num = 4; T5 item = choice5Of.item; return -1640531527 + (LanguagePrimitives.HashCompare.GenericHashParamObj(comp, item) + ((num << 6) + (num >> 2))); } } } return 0; } [CompilerGenerated] public sealed override int GetHashCode() { return GetHashCode(LanguagePrimitives.GenericEqualityComparer); } [CompilerGenerated] public virtual sealed bool Equals(object obj, IEqualityComparer comp) { if (this != null) { return $Prim-types.Equals$cont@3583(this, obj, comp, null); } return obj == null; } [CompilerGenerated] public virtual sealed bool Equals(FSharpChoice<T1, T2, T3, T4, T5> obj) { if (this != null) { if (obj != null) { int tag = _tag; int tag2 = obj._tag; if (tag == tag2) { switch (Tag) { default: { Choice1Of5 choice1Of = (Choice1Of5)this; Choice1Of5 choice1Of2 = (Choice1Of5)obj; T1 item9 = choice1Of.item; T1 item10 = choice1Of2.item; return LanguagePrimitives.HashCompare.GenericEqualityERIntrinsic(item9, item10); } case 1: { Choice2Of5 choice2Of = (Choice2Of5)this; Choice2Of5 choice2Of2 = (Choice2Of5)obj; T2 item7 = choice2Of.item; T2 item8 = choice2Of2.item; return LanguagePrimitives.HashCompare.GenericEqualityERIntrinsic(item7, item8); } case 2: { Choice3Of5 choice3Of = (Choice3Of5)this; Choice3Of5 choice3Of2 = (Choice3Of5)obj; T3 item5 = choice3Of.item; T3 item6 = choice3Of2.item; return LanguagePrimitives.HashCompare.GenericEqualityERIntrinsic(item5, item6); } case 3: { Choice4Of5 choice4Of = (Choice4Of5)this; Choice4Of5 choice4Of2 = (Choice4Of5)obj; T4 item3 = choice4Of.item; T4 item4 = choice4Of2.item; return LanguagePrimitives.HashCompare.GenericEqualityERIntrinsic(item3, item4); } case 4: { Choice5Of5 choice5Of = (Choice5Of5)this; Choice5Of5 choice5Of2 = (Choice5Of5)obj; T5 item = choice5Of.item; T5 item2 = choice5Of2.item; return LanguagePrimitives.HashCompare.GenericEqualityERIntrinsic(item, item2); } } } return false; } return false; } return obj == null; } [CompilerGenerated] public sealed override bool Equals(object obj) { if (obj is FSharpChoice<T1, T2, T3, T4, T5> obj2) { return Equals(obj2); } return false; } } [Serializable] [StructLayout(LayoutKind.Auto, CharSet = CharSet.Auto)] [StructuralEquality] [StructuralComparison] [CompiledName("FSharpChoice`6")] [CompilationMapping(SourceConstructFlags.SumType)] public abstract class FSharpChoice<T1, T2, T3, T4, T5, T6> : IEquatable<FSharpChoice<T1, T2, T3, T4, T5, T6>>, IStructuralEquatable, IComparable<FSharpChoice<T1, T2, T3, T4, T5, T6>>, IComparable, IStructuralComparable { public static class Tags { public const int Choice1Of6 = 0; public const int Choice2Of6 = 1; public const int Choice3Of6 = 2; public const int Choice4Of6 = 3; public const int Choice5Of6 = 4; public const int Choice6Of6 = 5; } [Serializable] [SpecialName] [DebuggerTypeProxy(typeof(FSharpChoice<, , , , , >.Choice1Of6@DebugTypeProxy))] public class Choice1Of6 : FSharpChoice<T1, T2, T3, T4, T5, T6> { [DebuggerBrowsable(DebuggerBrowsableState.Never)] [CompilerGenerated] [DebuggerNonUserCode] internal readonly T1 item; [CompilationMapping(SourceConstructFlags.Field, 0, 0)] [CompilerGenerated] [DebuggerNonUserCode] public T1 Item { [CompilerGenerated] [DebuggerNonUserCode] get { return item; } } [DynamicDependency(DynamicallyAccessedMemberTypes.PublicFields | DynamicallyAccessedMemberTypes.NonPublicFields | DynamicallyAccessedMemberTypes.PublicProperties | DynamicallyAccessedMemberTypes.NonPublicProperties, typeof(FSharpChoice<, , , , , >))] [CompilerGenerated] [DebuggerNonUserCode] internal Choice1Of6(T1 item) : base(0) { this.item = item; } } [Serializable] [SpecialName] [DebuggerTypeProxy(typeof(FSharpChoice<, , , , , >.Choice2Of6@DebugTypeProxy))] public class Choice2Of6 : FSharpChoice<T1, T2, T3, T4, T5, T6> { [DebuggerBrowsable(DebuggerBrowsableState.Never)] [CompilerGenerated] [DebuggerNonUserCode] internal readonly T2 item; [CompilationMapping(SourceConstructFlags.Field, 1, 0)] [CompilerGenerated] [DebuggerNonUserCode] public T2 Item { [CompilerGenerated] [DebuggerNonUserCode] get { return item; } } [DynamicDependency(DynamicallyAccessedMemberTypes.PublicFields | DynamicallyAccessedMemberTypes.NonPublicFields | DynamicallyAccessedMemberTypes.PublicProperties | DynamicallyAccessedMemberTypes.NonPublicProperties, typeof(FSharpChoice<, , , , , >))] [CompilerGenerated] [DebuggerNonUserCode] internal Choice2Of6(T2 item) : base(1) { this.item = item; } } [Serializable] [SpecialName] [DebuggerTypeProxy(typeof(FSharpChoice<, , , , , >.Choice3Of6@DebugTypeProxy))] public class Choice3Of6 : FSharpChoice<T1, T2, T3, T4, T5, T6> { [DebuggerBrowsable(DebuggerBrowsableState.Never)] [CompilerGenerated] [DebuggerNonUserCode] internal readonly T3 item; [CompilationMapping(SourceConstructFlags.Field, 2, 0)] [CompilerGenerated] [DebuggerNonUserCode] public T3 Item { [CompilerGenerated] [DebuggerNonUserCode] get { return item; } } [DynamicDependency(DynamicallyAccessedMemberTypes.PublicFields | DynamicallyAccessedMemberTypes.NonPublicFields | DynamicallyAccessedMemberTypes.PublicProperties | DynamicallyAccessedMemberTypes.NonPublicProperties, typeof(FSharpChoice<, , , , , >))] [CompilerGenerated] [DebuggerNonUserCode] internal Choice3Of6(T3 item) : base(2) { this.item = item; } } [Serializable] [SpecialName] [DebuggerTypeProxy(typeof(FSharpChoice<, , , , , >.Choice4Of6@DebugTypeProxy))] public class Choice4Of6 : FSharpChoice<T1, T2, T3, T4, T5, T6> { [DebuggerBrowsable(DebuggerBrowsableState.Never)] [CompilerGenerated] [DebuggerNonUserCode] internal readonly T4 item; [CompilationMapping(SourceConstructFlags.Field, 3, 0)] [CompilerGenerated] [DebuggerNonUserCode] public T4 Item { [CompilerGenerated] [DebuggerNonUserCode] get { return item; } } [DynamicDependency(DynamicallyAccessedMemberTypes.PublicFields | DynamicallyAccessedMemberTypes.NonPublicFields | DynamicallyAccessedMemberTypes.PublicProperties | DynamicallyAccessedMemberTypes.NonPublicProperties, typeof(FSharpChoice<, , , , , >))] [CompilerGenerated] [DebuggerNonUserCode] internal Choice4Of6(T4 item) : base(3) { this.item = item; } } [Serializable] [SpecialName] [DebuggerTypeProxy(typeof(FSharpChoice<, , , , , >.Choice5Of6@DebugTypeProxy))] public class Choice5Of6 : FSharpChoice<T1, T2, T3, T4, T5, T6> { [DebuggerBrowsable(DebuggerBrowsableState.Never)] [CompilerGenerated] [DebuggerNonUserCode] internal readonly T5 item; [CompilationMapping(SourceConstructFlags.Field, 4, 0)] [CompilerGenerated] [DebuggerNonUserCode] public T5 Item { [CompilerGenerated] [DebuggerNonUserCode] get { return item; } } [DynamicDependency(DynamicallyAccessedMemberTypes.PublicFields | DynamicallyAccessedMemberTypes.NonPublicFields | DynamicallyAccessedMemberTypes.PublicProperties | DynamicallyAccessedMemberTypes.NonPublicProperties, typeof(FSharpChoice<, , , , , >))] [CompilerGenerated] [DebuggerNonUserCode] internal Choice5Of6(T5 item) : base(4) { this.item = item; } } [Serializable] [SpecialName] [DebuggerTypeProxy(typeof(FSharpChoice<, , , , , >.Choice6Of6@DebugTypeProxy))] public class Choice6Of6 : FSharpChoice<T1, T2, T3, T4, T5, T6> { [DebuggerBrowsable(DebuggerBrowsableState.Never)] [CompilerGenerated] [DebuggerNonUserCode] internal readonly T6 item; [CompilationMapping(SourceConstructFlags.Field, 5, 0)] [CompilerGenerated] [DebuggerNonUserCode] public T6 Item { [CompilerGenerated] [DebuggerNonUserCode] get { return item; } } [DynamicDependency(DynamicallyAccessedMemberTypes.PublicFields | DynamicallyAccessedMemberTypes.NonPublicFields | DynamicallyAccessedMemberTypes.PublicProperties | DynamicallyAccessedMemberTypes.NonPublicProperties, typeof(FSharpChoice<, , , , , >))] [CompilerGenerated] [DebuggerNonUserCode] internal Choice6Of6(T6 item) : base(5) { this.item = item; } } [SpecialName] internal class Choice1Of6@DebugTypeProxy { [CompilationMapping(SourceConstructFlags.Field, 0, 0)] [CompilerGenerated] [DebuggerNonUserCode] public T1 Item { [CompilerGenerated] [DebuggerNonUserCode] get { return _obj.item; } } [DynamicDependency(DynamicallyAccessedMemberTypes.PublicFields | DynamicallyAccessedMemberTypes.NonPublicFields | DynamicallyAccessedMemberTypes.PublicProperties | DynamicallyAccessedMemberTypes.NonPublicProperties, typeof(FSharpChoice<, , , , , >))] [CompilerGenerated] [DebuggerNonUserCode] public Choice1Of6@DebugTypeProxy(Choice1Of6 obj) { _obj = obj; } } [SpecialName] internal class Choice2Of6@DebugTypeProxy { [CompilationMapping(SourceConstructFlags.Field, 1, 0)] [CompilerGenerated] [DebuggerNonUserCode] public T2 Item { [CompilerGenerated] [DebuggerNonUserCode] get { return _obj.item; } } [DynamicDependency(DynamicallyAccessedMemberTypes.PublicFields | DynamicallyAccessedMemberTypes.NonPublicFields | DynamicallyAccessedMemberTypes.PublicProperties | DynamicallyAccessedMemberTypes.NonPublicProperties, typeof(FSharpChoice<, , , , , >))] [CompilerGenerated] [DebuggerNonUserCode] public Choice2Of6@DebugTypeProxy(Choice2Of6 obj) { _obj = obj; } } [SpecialName] internal class Choice3Of6@DebugTypeProxy { [CompilationMapping(SourceConstructFlags.Field, 2, 0)] [CompilerGenerated] [DebuggerNonUserCode] public T3 Item { [CompilerGenerated] [DebuggerNonUserCode] get { return _obj.item; } } [DynamicDependency(DynamicallyAccessedMemberTypes.PublicFields | DynamicallyAccessedMemberTypes.NonPublicFields | DynamicallyAccessedMemberTypes.PublicProperties | DynamicallyAccessedMemberTypes.NonPublicProperties, typeof(FSharpChoice<, , , , , >))] [CompilerGenerated] [DebuggerNonUserCode] public Choice3Of6@DebugTypeProxy(Choice3Of6 obj) { _obj = obj; } } [SpecialName] internal class Choice4Of6@DebugTypeProxy { [CompilationMapping(SourceConstructFlags.Field, 3, 0)] [CompilerGenerated] [DebuggerNonUserCode] public T4 Item { [CompilerGenerated] [DebuggerNonUserCode] get { return _obj.item; } } [DynamicDependency(DynamicallyAccessedMemberTypes.PublicFields | DynamicallyAccessedMemberTypes.NonPublicFields | DynamicallyAccessedMemberTypes.PublicProperties | DynamicallyAccessedMemberTypes.NonPublicProperties, typeof(FSharpChoice<, , , , , >))] [CompilerGenerated] [DebuggerNonUserCode] public Choice4Of6@DebugTypeProxy(Choice4Of6 obj) { _obj = obj; } } [SpecialName] internal class Choice5Of6@DebugTypeProxy { [CompilationMapping(SourceConstructFlags.Field, 4, 0)] [CompilerGenerated] [DebuggerNonUserCode] public T5 Item { [CompilerGenerated] [DebuggerNonUserCode] get { return _obj.item; } } [DynamicDependency(DynamicallyAccessedMemberTypes.PublicFields | DynamicallyAccessedMemberTypes.NonPublicFields | DynamicallyAccessedMemberTypes.PublicProperties | DynamicallyAccessedMemberTypes.NonPublicProperties, typeof(FSharpChoice<, , , , , >))] [CompilerGenerated] [DebuggerNonUserCode] public Choice5Of6@DebugTypeProxy(Choice5Of6 obj) { _obj = obj; } } [SpecialName] internal class Choice6Of6@DebugTypeProxy { [CompilationMapping(SourceConstructFlags.Field, 5, 0)] [CompilerGenerated] [DebuggerNonUserCode] public T6 Item { [CompilerGenerated] [DebuggerNonUserCode] get { return _obj.item; } } [DynamicDependency(DynamicallyAccessedMemberTypes.PublicFields | DynamicallyAccessedMemberTypes.NonPublicFields | DynamicallyAccessedMemberTypes.PublicProperties | DynamicallyAccessedMemberTypes.NonPublicProperties, typeof(FSharpChoice<, , , , , >))] [CompilerGenerated] [DebuggerNonUserCode] public Choice6Of6@DebugTypeProxy(Choice6Of6 obj) { _obj = obj; } } [CompilerGenerated] [DebuggerNonUserCode] [DebuggerBrowsable(DebuggerBrowsableState.Never)] public int Tag { [DebuggerNonUserCode] get; } [CompilerGenerated] [DebuggerNonUserCode] [DebuggerBrowsable(DebuggerBrowsableState.Never)] public bool IsChoice1Of6 { [CompilerGenerated] [DebuggerNonUserCode] get { return Tag == 0; } } [CompilerGenerated] [DebuggerNonUserCode] [DebuggerBrowsable(DebuggerBrowsableState.Never)] public bool IsChoice2Of6 { [CompilerGenerated] [DebuggerNonUserCode] get { return Tag == 1; } } [CompilerGenerated] [DebuggerNonUserCode] [DebuggerBrowsable(DebuggerBrowsableState.Never)] public bool IsChoice3Of6 { [CompilerGenerated] [DebuggerNonUserCode] get { return Tag == 2; } } [CompilerGenerated] [DebuggerNonUserCode] [DebuggerBrowsable(DebuggerBrowsableState.Never)] public bool IsChoice4Of6 { [CompilerGenerated] [DebuggerNonUserCode] get { return Tag == 3; } } [CompilerGenerated] [DebuggerNonUserCode] [DebuggerBrowsable(DebuggerBrowsableState.Never)] public bool IsChoice5Of6 { [CompilerGenerated] [DebuggerNonUserCode] get { return Tag == 4; } } [CompilerGenerated] [DebuggerNonUserCode] [DebuggerBrowsable(DebuggerBrowsableState.Never)] public bool IsChoice6Of6 { [CompilerGenerated] [DebuggerNonUserCode] get { return Tag == 5; } } [DynamicDependency(DynamicallyAccessedMemberTypes.PublicFields | DynamicallyAccessedMemberTypes.NonPublicFields | DynamicallyAccessedMemberTypes.PublicNestedTypes | DynamicallyAccessedMemberTypes.NonPublicNestedTypes | DynamicallyAccessedMemberTypes.PublicProperties | DynamicallyAccessedMemberTypes.NonPublicProperties, typeof(FSharpChoice<, , , , , >))] [CompilerGenerated] [DebuggerNonUserCode] internal FSharpChoice(int _tag) { this._tag = _tag; } [CompilationMapping(SourceConstructFlags.UnionCase, 0)] public static FSharpChoice<T1, T2, T3, T4, T5, T6> NewChoice1Of6(T1 item) { return new Choice1Of6(item); } [CompilationMapping(SourceConstructFlags.UnionCase, 1)] public static FSharpChoice<T1, T2, T3, T4, T5, T6> NewChoice2Of6(T2 item) { return new Choice2Of6(item); } [CompilationMapping(SourceConstructFlags.UnionCase, 2)] public static FSharpChoice<T1, T2, T3, T4, T5, T6> NewChoice3Of6(T3 item) { return new Choice3Of6(item); } [CompilationMapping(SourceConstructFlags.UnionCase, 3)] public static FSharpChoice<T1, T2, T3, T4, T5, T6> NewChoice4Of6(T4 item) { return new Choice4Of6(item); } [CompilationMapping(SourceConstructFlags.UnionCase, 4)] public static FSharpChoice<T1, T2, T3, T4, T5, T6> NewChoice5Of6(T5 item) { return new Choice5Of6(item); } [CompilationMapping(SourceConstructFlags.UnionCase, 5)] public static FSharpChoice<T1, T2, T3, T4, T5, T6> NewChoice6Of6(T6 item) { return new Choice6Of6(item); } [CompilerGenerated] public virtual sealed int CompareTo(FSharpChoice<T1, T2, T3, T4, T5, T6> obj) { if (this != null) { if (obj != null) { int tag = _tag; int tag2 = obj._tag; if (tag == tag2) { return $Prim-types.CompareTo$cont@3592-2(this, obj, null); } return tag - tag2; } return 1; } if (obj != null) { return -1; } return 0; } [CompilerGenerated] public virtual sealed int CompareTo(object obj) { return CompareTo((FSharpChoice<T1, T2, T3, T4, T5, T6>)obj); } [CompilerGenerated] public virtual sealed int CompareTo(object obj, IComparer comp) { FSharpChoice<T1, T2, T3, T4, T5, T6> objTemp = (FSharpChoice<T1, T2, T3, T4, T5, T6>)obj; if (this != null) { if ((FSharpChoice<T1, T2, T3, T4, T5, T6>)obj != null) { return $Prim-types.CompareTo$cont@3592-3(comp, this, objTemp, null); } return 1; } if ((FSharpChoice<T1, T2, T3, T4, T5, T6>)obj != null) { return -1; } return 0; } [CompilerGenerated] public virtual sealed int GetHashCode(IEqualityComparer comp) { if (this != null) { return $Prim-types.GetHashCode$cont@3592(comp, this, null); } return 0; } [CompilerGenerated] public sealed override int GetHashCode() { return GetHashCode(LanguagePrimitives.GenericEqualityComparer); } [CompilerGenerated] public virtual sealed bool Equals(object obj, IEqualityComparer comp) { if (this != null) { if (obj is FSharpChoice<T1, T2, T3, T4, T5, T6> that) { return $Prim-types.Equals$cont@3592-1(this, that, comp, null); } return false; } return obj == null; } [CompilerGenerated] public virtual sealed bool Equals(FSharpChoice<T1, T2, T3, T4, T5, T6> obj) { if (this != null) { if (obj != null) { return $Prim-types.Equals$cont@3592-2(this, obj, null); } return false; } return obj == null; } [CompilerGenerated] public sealed override bool Equals(object obj) { if (obj is FSharpChoice<T1, T2, T3, T4, T5, T6> obj2) { return Equals(obj2); } return false; } } [Serializable] [StructLayout(LayoutKind.Auto, CharSet = CharSet.Auto)] [StructuralEquality] [StructuralComparison] [CompiledName("FSharpChoice`7")] [CompilationMapping(SourceConstructFlags.SumType)] public abstract class FSharpChoice<T1, T2, T3, T4, T5, T6, T7> : IEquatable<FSharpChoice<T1, T2, T3, T4, T5, T6, T7>>, IStructuralEquatable, IComparable<FSharpChoice<T1, T2, T3, T4, T5, T6, T7>>, IComparable, IStructuralComparable { public static class Tags { public const int Choice1Of7 = 0; public const int Choice2Of7 = 1; public const int Choice3Of7 = 2; public const int Choice4Of7 = 3; public const int Choice5Of7 = 4; public const int Choice6Of7 = 5; public const int Choice7Of7 = 6; } [Serializable] [SpecialName] [DebuggerTypeProxy(typeof(FSharpChoice<, , , , , , >.Choice1Of7@DebugTypeProxy))] public class Choice1Of7 : FSharpChoice<T1, T2, T3, T4, T5, T6, T7> { [DebuggerBrowsable(DebuggerBrowsableState.Never)] [CompilerGenerated] [DebuggerNonUserCode] internal readonly T1 item; [CompilationMapping(SourceConstructFlags.Field, 0, 0)] [CompilerGenerated] [DebuggerNonUserCode] public T1 Item { [CompilerGenerated] [DebuggerNonUserCode] get { return item; } } [DynamicDependency(DynamicallyAccessedMemberTypes.PublicFields | DynamicallyAccessedMemberTypes.NonPublicFields | DynamicallyAccessedMemberTypes.PublicProperties | DynamicallyAccessedMemberTypes.NonPublicProperties, typeof(FSharpChoice<, , , , , , >))] [CompilerGenerated] [DebuggerNonUserCode] internal Choice1Of7(T1 item) : base(0) { this.item = item; } } [Serializable] [SpecialName] [DebuggerTypeProxy(typeof(FSharpChoice<, , , , , , >.Choice2Of7@DebugTypeProxy))] public class Choice2Of7 : FSharpChoice<T1, T2, T3, T4, T5, T6, T7> { [DebuggerBrowsable(DebuggerBrowsableState.Never)] [CompilerGenerated] [DebuggerNonUserCode] internal readonly T2 item; [CompilationMapping(SourceConstructFlags.Field, 1, 0)] [CompilerGenerated] [DebuggerNonUserCode] public T2 Item { [CompilerGenerated] [DebuggerNonUserCode] get { return item; } } [DynamicDependency(DynamicallyAccessedMemberTypes.PublicFields | DynamicallyAccessedMemberTypes.NonPublicFields | DynamicallyAccessedMemberTypes.PublicProperties | DynamicallyAccessedMemberTypes.NonPublicProperties, typeof(FSharpChoice<, , , , , , >))] [CompilerGenerated] [DebuggerNonUserCode] internal Choice2Of7(T2 item) : base(1) { this.item = item; } } [Serializable] [SpecialName] [DebuggerTypeProxy(typeof(FSharpChoice<, , , , , , >.Choice3Of7@DebugTypeProxy))] public class Choice3Of7 : FSharpChoice<T1, T2, T3, T4, T5, T6, T7> { [DebuggerBrowsable(DebuggerBrowsableState.Never)] [CompilerGenerated] [DebuggerNonUserCode] internal readonly T3 item; [CompilationMapping(SourceConstructFlags.Field, 2, 0)] [CompilerGenerated] [DebuggerNonUserCode] public T3 Item { [CompilerGenerated] [DebuggerNonUserCode] get { return item; } } [DynamicDependency(DynamicallyAccessedMemberTypes.PublicFields | DynamicallyAccessedMemberTypes.NonPublicFields | DynamicallyAccessedMemberTypes.PublicProperties | DynamicallyAccessedMemberTypes.NonPublicProperties, typeof(FSharpChoice<, , , , , , >))] [CompilerGenerated] [DebuggerNonUserCode] internal Choice3Of7(T3 item) : base(2) { this.item = item; } } [Serializable] [SpecialName] [DebuggerTypeProxy(typeof(FSharpChoice<, , , , , , >.Choice4Of7@DebugTypeProxy))] public class Choice4Of7 : FSharpChoice<T1, T2, T3, T4, T5, T6, T7> { [DebuggerBrowsable(DebuggerBrowsableState.Never)] [CompilerGenerated] [DebuggerNonUserCode] internal readonly T4 item; [CompilationMapping(SourceConstructFlags.Field, 3, 0)] [CompilerGenerated] [DebuggerNonUserCode] public T4 Item { [CompilerGenerated] [DebuggerNonUserCode] get { return item; } } [DynamicDependency(DynamicallyAccessedMemberTypes.PublicFields | DynamicallyAccessedMemberTypes.NonPublicFields | DynamicallyAccessedMemberTypes.PublicProperties | DynamicallyAccessedMemberTypes.NonPublicProperties, typeof(FSharpChoice<, , , , , , >))] [CompilerGenerated] [DebuggerNonUserCode] internal Choice4Of7(T4 item) : base(3) { this.item = item; } } [Serializable] [SpecialName] [DebuggerTypeProxy(typeof(FSharpChoice<, , , , , , >.Choice5Of7@DebugTypeProxy))] public class Choice5Of7 : FSharpChoice<T1, T2, T3, T4, T5, T6, T7> { [DebuggerBrowsable(DebuggerBrowsableState.Never)] [CompilerGenerated] [DebuggerNonUserCode] internal readonly T5 item; [CompilationMapping(SourceConstructFlags.Field, 4, 0)] [CompilerGenerated] [DebuggerNonUserCode] public T5 Item { [CompilerGenerated] [DebuggerNonUserCode] get { return item; } } [DynamicDependency(DynamicallyAccessedMemberTypes.PublicFields | DynamicallyAccessedMemberTypes.NonPublicFields | DynamicallyAccessedMemberTypes.PublicProperties | DynamicallyAccessedMemberTypes.NonP