From c1c9e2774f0a3094ae652d3f7847d2d5d7633a99 Mon Sep 17 00:00:00 2001 From: Sam Harwell Date: Wed, 8 May 2019 09:16:51 -0500 Subject: [PATCH 1/7] Support reference assemblies Resolves #305 Fixes #232 --- .../AnalyzerTest`1.cs | 29 +- .../MetadataReferenceCollection.cs | 2 +- .../MetadataReferences.cs | 973 ++++++++++++++++- .../PublicAPI.Unshipped.txt | 480 ++++++++- .../ReferenceAssemblies.cs | 989 ++++++++++++++++++ .../Test/DiagnosticVerifier.Helper.cs | 8 +- .../CompilerErrorTests.cs | 27 +- ...Analysis.Analyzer.Testing.UnitTests.csproj | 6 + 8 files changed, 2421 insertions(+), 93 deletions(-) create mode 100644 src/Microsoft.CodeAnalysis.Testing/Microsoft.CodeAnalysis.Analyzer.Testing/ReferenceAssemblies.cs diff --git a/src/Microsoft.CodeAnalysis.Testing/Microsoft.CodeAnalysis.Analyzer.Testing/AnalyzerTest`1.cs b/src/Microsoft.CodeAnalysis.Testing/Microsoft.CodeAnalysis.Analyzer.Testing/AnalyzerTest`1.cs index 4489270ec4..f330ee0029 100644 --- a/src/Microsoft.CodeAnalysis.Testing/Microsoft.CodeAnalysis.Analyzer.Testing/AnalyzerTest`1.cs +++ b/src/Microsoft.CodeAnalysis.Testing/Microsoft.CodeAnalysis.Analyzer.Testing/AnalyzerTest`1.cs @@ -114,6 +114,8 @@ public string TestCode /// public List DisabledDiagnostics { get; } = new List(); + public ReferenceAssemblies ReferenceAssemblies { get; set; } = ReferenceAssemblies.Default; + /// /// Gets a collection of transformation functions to apply to during diagnostic /// or code fix test setup. @@ -672,32 +674,7 @@ protected virtual Solution CreateSolution(ProjectId projectId, string language) .CurrentSolution .AddProject(projectId, DefaultTestProjectName, DefaultTestProjectName, language) .WithProjectCompilationOptions(projectId, compilationOptions) - .AddMetadataReference(projectId, MetadataReferences.CorlibReference) - .AddMetadataReference(projectId, MetadataReferences.SystemReference) - .AddMetadataReference(projectId, MetadataReferences.SystemCoreReference) - .AddMetadataReference(projectId, MetadataReferences.CodeAnalysisReference) - .AddMetadataReference(projectId, MetadataReferences.SystemCollectionsImmutableReference); - - if (language == LanguageNames.VisualBasic) - { - solution = solution.AddMetadataReference(projectId, MetadataReferences.MicrosoftVisualBasicReference); - } - - if (MetadataReferences.MscorlibFacadeReference != null) - { - solution = solution.AddMetadataReference(projectId, MetadataReferences.MscorlibFacadeReference); - } - - if (MetadataReferences.SystemRuntimeReference != null) - { - solution = solution.AddMetadataReference(projectId, MetadataReferences.SystemRuntimeReference); - } - - if (typeof(object).GetTypeInfo().Assembly.GetType("System.ValueTuple`2", throwOnError: false) == null - && MetadataReferences.SystemValueTupleReference != null) - { - solution = solution.AddMetadataReference(projectId, MetadataReferences.SystemValueTupleReference); - } + .AddMetadataReferences(projectId, ReferenceAssemblies.GetMetadataReferences(language)); foreach (var transform in OptionsTransforms) { diff --git a/src/Microsoft.CodeAnalysis.Testing/Microsoft.CodeAnalysis.Analyzer.Testing/MetadataReferenceCollection.cs b/src/Microsoft.CodeAnalysis.Testing/Microsoft.CodeAnalysis.Analyzer.Testing/MetadataReferenceCollection.cs index 7acd05e696..3f96f44183 100644 --- a/src/Microsoft.CodeAnalysis.Testing/Microsoft.CodeAnalysis.Analyzer.Testing/MetadataReferenceCollection.cs +++ b/src/Microsoft.CodeAnalysis.Testing/Microsoft.CodeAnalysis.Analyzer.Testing/MetadataReferenceCollection.cs @@ -23,7 +23,7 @@ public void Add(string path) private static MetadataReference GetOrCreateReference(string path) { - return s_referencesFromFiles.GetOrAdd(path, p => MetadataReference.CreateFromFile(p)); + return s_referencesFromFiles.GetOrAdd(path, p => MetadataReferences.CreateReferenceFromFile(p)); } } } diff --git a/src/Microsoft.CodeAnalysis.Testing/Microsoft.CodeAnalysis.Analyzer.Testing/MetadataReferences.cs b/src/Microsoft.CodeAnalysis.Testing/Microsoft.CodeAnalysis.Analyzer.Testing/MetadataReferences.cs index ff43831e9d..872e7d99cc 100644 --- a/src/Microsoft.CodeAnalysis.Testing/Microsoft.CodeAnalysis.Analyzer.Testing/MetadataReferences.cs +++ b/src/Microsoft.CodeAnalysis.Testing/Microsoft.CodeAnalysis.Analyzer.Testing/MetadataReferences.cs @@ -2,15 +2,12 @@ using System; using System.Collections.Immutable; -using System.Linq; +using System.IO; +using System.Linq.Expressions; using System.Reflection; using System.Runtime.CompilerServices; using Microsoft.CodeAnalysis; -#if NETSTANDARD1_5 -using System.IO; -#endif - namespace Microsoft.CodeAnalysis.Testing { /// @@ -18,78 +15,946 @@ namespace Microsoft.CodeAnalysis.Testing /// public static class MetadataReferences { - public static readonly MetadataReference CorlibReference = MetadataReference.CreateFromFile(typeof(object).GetTypeInfo().Assembly.Location).WithAliases(ImmutableArray.Create("global", "corlib")); - public static readonly MetadataReference SystemReference = MetadataReference.CreateFromFile(typeof(System.Diagnostics.Debug).GetTypeInfo().Assembly.Location).WithAliases(ImmutableArray.Create("global", "system")); - public static readonly MetadataReference SystemCoreReference = MetadataReference.CreateFromFile(typeof(Enumerable).GetTypeInfo().Assembly.Location); - public static readonly MetadataReference CodeAnalysisReference = MetadataReference.CreateFromFile(typeof(Compilation).GetTypeInfo().Assembly.Location); - public static readonly MetadataReference SystemCollectionsImmutableReference = MetadataReference.CreateFromFile(typeof(ImmutableArray).GetTypeInfo().Assembly.Location); - - internal static readonly MetadataReference? MscorlibFacadeReference; - internal static readonly MetadataReference? SystemRuntimeReference; - internal static readonly MetadataReference? SystemValueTupleReference; - - private static MetadataReference? _microsoftVisualBasicReference; + private static readonly Func s_createDocumentationProvider; static MetadataReferences() { + Func createDocumentationProvider = _ => null; + + var xmlDocumentationProvider = typeof(Workspace).GetTypeInfo().Assembly.GetType("Microsoft.CodeAnalysis.XmlDocumentationProvider"); + if (xmlDocumentationProvider is object) + { + var createFromFile = xmlDocumentationProvider.GetTypeInfo().GetMethod("CreateFromFile", new[] { typeof(string) }); + if (createFromFile is object) + { + var xmlDocCommentFilePath = Expression.Parameter(typeof(string), "xmlDocCommentFilePath"); + var body = Expression.Convert( + Expression.Call(createFromFile, xmlDocCommentFilePath), + typeof(DocumentationProvider)); + var expression = Expression.Lambda>(body, xmlDocCommentFilePath); + createDocumentationProvider = expression.Compile(); + } + } + + s_createDocumentationProvider = createDocumentationProvider; + } + #if NETSTANDARD1_5 - if (typeof(string).GetTypeInfo().Assembly.ExportedTypes.Any(x => x.Name == "System.ValueTuple")) + internal static string PackagesPath + { + get { - // mscorlib contains ValueTuple, so no need to add a separate reference - MscorlibFacadeReference = null; - SystemRuntimeReference = null; - SystemValueTupleReference = null; + var nugetPackages = Environment.GetEnvironmentVariable("NUGET_PACKAGES"); + if (!string.IsNullOrEmpty(nugetPackages)) + { + return nugetPackages; + } + + var profile = Environment.GetEnvironmentVariable("USERPROFILE"); + if (!Directory.Exists(profile)) + { + throw new PlatformNotSupportedException("Reference assemblies are not supported for .NET Standard 1.x"); + } + + return Path.Combine(profile, ".nuget", "packages"); } - else + } +#else + internal static string PackagesPath + { + get { - MscorlibFacadeReference = MetadataReference.CreateFromFile(Path.Combine(Path.GetDirectoryName(typeof(Lazy<,>).GetTypeInfo().Assembly.Location), "mscorlib.dll")); - SystemRuntimeReference = MetadataReference.CreateFromFile(typeof(Lazy<,>).GetTypeInfo().Assembly.Location); - SystemValueTupleReference = MetadataReference.CreateFromFile(typeof(ValueTuple<,>).GetTypeInfo().Assembly.Location); + var nugetPackages = Environment.GetEnvironmentVariable("NUGET_PACKAGES"); + if (!string.IsNullOrEmpty(nugetPackages)) + { + return nugetPackages; + } + + return Path.Combine(Environment.GetFolderPath(Environment.SpecialFolder.UserProfile), ".nuget", "packages"); } -#elif NETSTANDARD2_0 - // mscorlib contains ValueTuple, so no need to add a separate reference - MscorlibFacadeReference = null; - SystemRuntimeReference = null; - SystemValueTupleReference = null; -#elif NET452 - // System.Object is already in mscorlib - MscorlibFacadeReference = null; + } +#endif + + internal static MetadataReference CreateReferenceFromFile(string path) + { + var documentationFile = Path.ChangeExtension(path, ".xml"); + return MetadataReference.CreateFromFile(path, documentation: s_createDocumentationProvider(documentationFile)); + } - var systemRuntime = AppDomain.CurrentDomain.GetAssemblies().SingleOrDefault(x => x.GetName().Name == "System.Runtime"); - if (systemRuntime != null) + public static class NetFramework + { + public static class Net20 { - SystemRuntimeReference = MetadataReference.CreateFromFile(systemRuntime.Location); + private static string AssemblyPath => Path.Combine(PackagesPath, "microsoft.netframework.referenceassemblies.net20", "1.0.0-preview.1", "build", ".NETFramework", "v2.0"); + + public static MetadataReference Mscorlib => CreateReferenceFromFile(Path.Combine(AssemblyPath, "mscorlib.dll")); + + public static MetadataReference MicrosoftVisualBasic => CreateReferenceFromFile(Path.Combine(AssemblyPath, "Microsoft.VisualBasic.dll")); + + public static MetadataReference System => CreateReferenceFromFile(Path.Combine(AssemblyPath, "System.dll")); + + public static MetadataReference SystemData => CreateReferenceFromFile(Path.Combine(AssemblyPath, "System.Data.dll")); + + public static MetadataReference SystemDrawing => CreateReferenceFromFile(Path.Combine(AssemblyPath, "System.Drawing.dll")); + + public static MetadataReference SystemWindowsForms => CreateReferenceFromFile(Path.Combine(AssemblyPath, "System.Windows.Forms.dll")); + + public static MetadataReference SystemXml => CreateReferenceFromFile(Path.Combine(AssemblyPath, "System.Xml.dll")); } - var systemValueTuple = AppDomain.CurrentDomain.GetAssemblies().SingleOrDefault(x => x.GetName().Name == "System.ValueTuple"); - if (systemValueTuple != null) + public static class Net40 + { + private static string AssemblyPath => Path.Combine(PackagesPath, "microsoft.netframework.referenceassemblies.net40", "1.0.0-preview.1", "build", ".NETFramework", "v4.0"); + + public static MetadataReference Mscorlib => CreateReferenceFromFile(Path.Combine(AssemblyPath, "mscorlib.dll")); + + public static MetadataReference MicrosoftCSharp => CreateReferenceFromFile(Path.Combine(AssemblyPath, "Microsoft.CSharp.dll")); + + public static MetadataReference MicrosoftVisualBasic => CreateReferenceFromFile(Path.Combine(AssemblyPath, "Microsoft.VisualBasic.dll")); + + public static MetadataReference PresentationCore => CreateReferenceFromFile(Path.Combine(AssemblyPath, "PresentationCore.dll")); + + public static MetadataReference PresentationFramework => CreateReferenceFromFile(Path.Combine(AssemblyPath, "PresentationFramework.dll")); + + public static MetadataReference System => CreateReferenceFromFile(Path.Combine(AssemblyPath, "System.dll")); + + public static MetadataReference SystemCore => CreateReferenceFromFile(Path.Combine(AssemblyPath, "System.Core.dll")); + + public static MetadataReference SystemData => CreateReferenceFromFile(Path.Combine(AssemblyPath, "System.Data.dll")); + + public static MetadataReference SystemDataDataSetExtensions => CreateReferenceFromFile(Path.Combine(AssemblyPath, "System.Data.DataSetExtensions.dll")); + + public static MetadataReference SystemDeployment => CreateReferenceFromFile(Path.Combine(AssemblyPath, "System.Deployment.dll")); + + public static MetadataReference SystemDrawing => CreateReferenceFromFile(Path.Combine(AssemblyPath, "System.Drawing.dll")); + + public static MetadataReference SystemWindowsForms => CreateReferenceFromFile(Path.Combine(AssemblyPath, "System.Windows.Forms.dll")); + + public static MetadataReference SystemXaml => CreateReferenceFromFile(Path.Combine(AssemblyPath, "System.Xaml.dll")); + + public static MetadataReference SystemXml => CreateReferenceFromFile(Path.Combine(AssemblyPath, "System.Xml.dll")); + + public static MetadataReference SystemXmlLinq => CreateReferenceFromFile(Path.Combine(AssemblyPath, "System.Xml.Linq.dll")); + + public static MetadataReference WindowsBase => CreateReferenceFromFile(Path.Combine(AssemblyPath, "WindowsBase.dll")); + } + + public static class Net45 + { + } + + public static class Net451 + { + } + + public static class Net452 + { + } + + public static class Net46 + { + private static string AssemblyPath => Path.Combine(PackagesPath, "microsoft.netframework.referenceassemblies.net46", "1.0.0-preview.1", "build", ".NETFramework", "v4.6"); + + public static MetadataReference Mscorlib => CreateReferenceFromFile(Path.Combine(AssemblyPath, "mscorlib.dll")); + + public static MetadataReference MicrosoftCSharp => CreateReferenceFromFile(Path.Combine(AssemblyPath, "Microsoft.CSharp.dll")); + + public static MetadataReference MicrosoftVisualBasic => CreateReferenceFromFile(Path.Combine(AssemblyPath, "Microsoft.VisualBasic.dll")); + + public static MetadataReference PresentationCore => CreateReferenceFromFile(Path.Combine(AssemblyPath, "PresentationCore.dll")); + + public static MetadataReference PresentationFramework => CreateReferenceFromFile(Path.Combine(AssemblyPath, "PresentationFramework.dll")); + + public static MetadataReference System => CreateReferenceFromFile(Path.Combine(AssemblyPath, "System.dll")); + + public static MetadataReference SystemCore => CreateReferenceFromFile(Path.Combine(AssemblyPath, "System.Core.dll")); + + public static MetadataReference SystemData => CreateReferenceFromFile(Path.Combine(AssemblyPath, "System.Data.dll")); + + public static MetadataReference SystemDataDataSetExtensions => CreateReferenceFromFile(Path.Combine(AssemblyPath, "System.Data.DataSetExtensions.dll")); + + public static MetadataReference SystemDeployment => CreateReferenceFromFile(Path.Combine(AssemblyPath, "System.Deployment.dll")); + + public static MetadataReference SystemDrawing => CreateReferenceFromFile(Path.Combine(AssemblyPath, "System.Drawing.dll")); + + public static MetadataReference SystemNetHttp => CreateReferenceFromFile(Path.Combine(AssemblyPath, "System.Net.Http.dll")); + + public static MetadataReference SystemWindowsForms => CreateReferenceFromFile(Path.Combine(AssemblyPath, "System.Windows.Forms.dll")); + + public static MetadataReference SystemXaml => CreateReferenceFromFile(Path.Combine(AssemblyPath, "System.Xaml.dll")); + + public static MetadataReference SystemXml => CreateReferenceFromFile(Path.Combine(AssemblyPath, "System.Xml.dll")); + + public static MetadataReference SystemXmlLinq => CreateReferenceFromFile(Path.Combine(AssemblyPath, "System.Xml.Linq.dll")); + + public static MetadataReference WindowsBase => CreateReferenceFromFile(Path.Combine(AssemblyPath, "WindowsBase.dll")); + } + + public static class Net461 + { + private static string AssemblyPath => Path.Combine(PackagesPath, "microsoft.netframework.referenceassemblies.net461", "1.0.0-preview.1", "build", ".NETFramework", "v4.6.1"); + + public static MetadataReference Mscorlib => CreateReferenceFromFile(Path.Combine(AssemblyPath, "mscorlib.dll")); + + public static MetadataReference MicrosoftCSharp => CreateReferenceFromFile(Path.Combine(AssemblyPath, "Microsoft.CSharp.dll")); + + public static MetadataReference MicrosoftVisualBasic => CreateReferenceFromFile(Path.Combine(AssemblyPath, "Microsoft.VisualBasic.dll")); + + public static MetadataReference PresentationCore => CreateReferenceFromFile(Path.Combine(AssemblyPath, "PresentationCore.dll")); + + public static MetadataReference PresentationFramework => CreateReferenceFromFile(Path.Combine(AssemblyPath, "PresentationFramework.dll")); + + public static MetadataReference System => CreateReferenceFromFile(Path.Combine(AssemblyPath, "System.dll")); + + public static MetadataReference SystemCore => CreateReferenceFromFile(Path.Combine(AssemblyPath, "System.Core.dll")); + + public static MetadataReference SystemData => CreateReferenceFromFile(Path.Combine(AssemblyPath, "System.Data.dll")); + + public static MetadataReference SystemDataDataSetExtensions => CreateReferenceFromFile(Path.Combine(AssemblyPath, "System.Data.DataSetExtensions.dll")); + + public static MetadataReference SystemDeployment => CreateReferenceFromFile(Path.Combine(AssemblyPath, "System.Deployment.dll")); + + public static MetadataReference SystemDrawing => CreateReferenceFromFile(Path.Combine(AssemblyPath, "System.Drawing.dll")); + + public static MetadataReference SystemNetHttp => CreateReferenceFromFile(Path.Combine(AssemblyPath, "System.Net.Http.dll")); + + public static MetadataReference SystemWindowsForms => CreateReferenceFromFile(Path.Combine(AssemblyPath, "System.Windows.Forms.dll")); + + public static MetadataReference SystemXaml => CreateReferenceFromFile(Path.Combine(AssemblyPath, "System.Xaml.dll")); + + public static MetadataReference SystemXml => CreateReferenceFromFile(Path.Combine(AssemblyPath, "System.Xml.dll")); + + public static MetadataReference SystemXmlLinq => CreateReferenceFromFile(Path.Combine(AssemblyPath, "System.Xml.Linq.dll")); + + public static MetadataReference WindowsBase => CreateReferenceFromFile(Path.Combine(AssemblyPath, "WindowsBase.dll")); + } + + public static class Net462 + { + private static string AssemblyPath => Path.Combine(PackagesPath, "microsoft.netframework.referenceassemblies.net462", "1.0.0-preview.1", "build", ".NETFramework", "v4.6.2"); + + public static MetadataReference Mscorlib => CreateReferenceFromFile(Path.Combine(AssemblyPath, "mscorlib.dll")); + + public static MetadataReference MicrosoftCSharp => CreateReferenceFromFile(Path.Combine(AssemblyPath, "Microsoft.CSharp.dll")); + + public static MetadataReference MicrosoftVisualBasic => CreateReferenceFromFile(Path.Combine(AssemblyPath, "Microsoft.VisualBasic.dll")); + + public static MetadataReference PresentationCore => CreateReferenceFromFile(Path.Combine(AssemblyPath, "PresentationCore.dll")); + + public static MetadataReference PresentationFramework => CreateReferenceFromFile(Path.Combine(AssemblyPath, "PresentationFramework.dll")); + + public static MetadataReference System => CreateReferenceFromFile(Path.Combine(AssemblyPath, "System.dll")); + + public static MetadataReference SystemCore => CreateReferenceFromFile(Path.Combine(AssemblyPath, "System.Core.dll")); + + public static MetadataReference SystemData => CreateReferenceFromFile(Path.Combine(AssemblyPath, "System.Data.dll")); + + public static MetadataReference SystemDataDataSetExtensions => CreateReferenceFromFile(Path.Combine(AssemblyPath, "System.Data.DataSetExtensions.dll")); + + public static MetadataReference SystemDeployment => CreateReferenceFromFile(Path.Combine(AssemblyPath, "System.Deployment.dll")); + + public static MetadataReference SystemDrawing => CreateReferenceFromFile(Path.Combine(AssemblyPath, "System.Drawing.dll")); + + public static MetadataReference SystemNetHttp => CreateReferenceFromFile(Path.Combine(AssemblyPath, "System.Net.Http.dll")); + + public static MetadataReference SystemWindowsForms => CreateReferenceFromFile(Path.Combine(AssemblyPath, "System.Windows.Forms.dll")); + + public static MetadataReference SystemXaml => CreateReferenceFromFile(Path.Combine(AssemblyPath, "System.Xaml.dll")); + + public static MetadataReference SystemXml => CreateReferenceFromFile(Path.Combine(AssemblyPath, "System.Xml.dll")); + + public static MetadataReference SystemXmlLinq => CreateReferenceFromFile(Path.Combine(AssemblyPath, "System.Xml.Linq.dll")); + + public static MetadataReference WindowsBase => CreateReferenceFromFile(Path.Combine(AssemblyPath, "WindowsBase.dll")); + } + + public static class Net47 + { + private static string AssemblyPath => Path.Combine(PackagesPath, "microsoft.netframework.referenceassemblies.net47", "1.0.0-preview.1", "build", ".NETFramework", "v4.7"); + + public static MetadataReference Mscorlib => CreateReferenceFromFile(Path.Combine(AssemblyPath, "mscorlib.dll")); + + public static MetadataReference MicrosoftCSharp => CreateReferenceFromFile(Path.Combine(AssemblyPath, "Microsoft.CSharp.dll")); + + public static MetadataReference MicrosoftVisualBasic => CreateReferenceFromFile(Path.Combine(AssemblyPath, "Microsoft.VisualBasic.dll")); + + public static MetadataReference PresentationCore => CreateReferenceFromFile(Path.Combine(AssemblyPath, "PresentationCore.dll")); + + public static MetadataReference PresentationFramework => CreateReferenceFromFile(Path.Combine(AssemblyPath, "PresentationFramework.dll")); + + public static MetadataReference System => CreateReferenceFromFile(Path.Combine(AssemblyPath, "System.dll")); + + public static MetadataReference SystemCore => CreateReferenceFromFile(Path.Combine(AssemblyPath, "System.Core.dll")); + + public static MetadataReference SystemData => CreateReferenceFromFile(Path.Combine(AssemblyPath, "System.Data.dll")); + + public static MetadataReference SystemDataDataSetExtensions => CreateReferenceFromFile(Path.Combine(AssemblyPath, "System.Data.DataSetExtensions.dll")); + + public static MetadataReference SystemDeployment => CreateReferenceFromFile(Path.Combine(AssemblyPath, "System.Deployment.dll")); + + public static MetadataReference SystemDrawing => CreateReferenceFromFile(Path.Combine(AssemblyPath, "System.Drawing.dll")); + + public static MetadataReference SystemNetHttp => CreateReferenceFromFile(Path.Combine(AssemblyPath, "System.Net.Http.dll")); + + public static MetadataReference SystemWindowsForms => CreateReferenceFromFile(Path.Combine(AssemblyPath, "System.Windows.Forms.dll")); + + public static MetadataReference SystemXaml => CreateReferenceFromFile(Path.Combine(AssemblyPath, "System.Xaml.dll")); + + public static MetadataReference SystemXml => CreateReferenceFromFile(Path.Combine(AssemblyPath, "System.Xml.dll")); + + public static MetadataReference SystemXmlLinq => CreateReferenceFromFile(Path.Combine(AssemblyPath, "System.Xml.Linq.dll")); + + public static MetadataReference WindowsBase => CreateReferenceFromFile(Path.Combine(AssemblyPath, "WindowsBase.dll")); + } + + public static class Net471 + { + private static string AssemblyPath => Path.Combine(PackagesPath, "microsoft.netframework.referenceassemblies.net471", "1.0.0-preview.1", "build", ".NETFramework", "v4.7.1"); + + public static MetadataReference Mscorlib => CreateReferenceFromFile(Path.Combine(AssemblyPath, "mscorlib.dll")); + + public static MetadataReference MicrosoftCSharp => CreateReferenceFromFile(Path.Combine(AssemblyPath, "Microsoft.CSharp.dll")); + + public static MetadataReference MicrosoftVisualBasic => CreateReferenceFromFile(Path.Combine(AssemblyPath, "Microsoft.VisualBasic.dll")); + + public static MetadataReference PresentationCore => CreateReferenceFromFile(Path.Combine(AssemblyPath, "PresentationCore.dll")); + + public static MetadataReference PresentationFramework => CreateReferenceFromFile(Path.Combine(AssemblyPath, "PresentationFramework.dll")); + + public static MetadataReference System => CreateReferenceFromFile(Path.Combine(AssemblyPath, "System.dll")); + + public static MetadataReference SystemCore => CreateReferenceFromFile(Path.Combine(AssemblyPath, "System.Core.dll")); + + public static MetadataReference SystemData => CreateReferenceFromFile(Path.Combine(AssemblyPath, "System.Data.dll")); + + public static MetadataReference SystemDataDataSetExtensions => CreateReferenceFromFile(Path.Combine(AssemblyPath, "System.Data.DataSetExtensions.dll")); + + public static MetadataReference SystemDeployment => CreateReferenceFromFile(Path.Combine(AssemblyPath, "System.Deployment.dll")); + + public static MetadataReference SystemDrawing => CreateReferenceFromFile(Path.Combine(AssemblyPath, "System.Drawing.dll")); + + public static MetadataReference SystemNetHttp => CreateReferenceFromFile(Path.Combine(AssemblyPath, "System.Net.Http.dll")); + + public static MetadataReference SystemWindowsForms => CreateReferenceFromFile(Path.Combine(AssemblyPath, "System.Windows.Forms.dll")); + + public static MetadataReference SystemXaml => CreateReferenceFromFile(Path.Combine(AssemblyPath, "System.Xaml.dll")); + + public static MetadataReference SystemXml => CreateReferenceFromFile(Path.Combine(AssemblyPath, "System.Xml.dll")); + + public static MetadataReference SystemXmlLinq => CreateReferenceFromFile(Path.Combine(AssemblyPath, "System.Xml.Linq.dll")); + + public static MetadataReference WindowsBase => CreateReferenceFromFile(Path.Combine(AssemblyPath, "WindowsBase.dll")); + } + + public static class Net472 + { + private static string AssemblyPath => Path.Combine(PackagesPath, "microsoft.netframework.referenceassemblies.net472", "1.0.0-preview.1", "build", ".NETFramework", "v4.7.2"); + + public static MetadataReference Mscorlib => CreateReferenceFromFile(Path.Combine(AssemblyPath, "mscorlib.dll")); + + public static MetadataReference MicrosoftCSharp => CreateReferenceFromFile(Path.Combine(AssemblyPath, "Microsoft.CSharp.dll")); + + public static MetadataReference MicrosoftVisualBasic => CreateReferenceFromFile(Path.Combine(AssemblyPath, "Microsoft.VisualBasic.dll")); + + public static MetadataReference PresentationCore => CreateReferenceFromFile(Path.Combine(AssemblyPath, "PresentationCore.dll")); + + public static MetadataReference PresentationFramework => CreateReferenceFromFile(Path.Combine(AssemblyPath, "PresentationFramework.dll")); + + public static MetadataReference System => CreateReferenceFromFile(Path.Combine(AssemblyPath, "System.dll")); + + public static MetadataReference SystemCore => CreateReferenceFromFile(Path.Combine(AssemblyPath, "System.Core.dll")); + + public static MetadataReference SystemData => CreateReferenceFromFile(Path.Combine(AssemblyPath, "System.Data.dll")); + + public static MetadataReference SystemDataDataSetExtensions => CreateReferenceFromFile(Path.Combine(AssemblyPath, "System.Data.DataSetExtensions.dll")); + + public static MetadataReference SystemDeployment => CreateReferenceFromFile(Path.Combine(AssemblyPath, "System.Deployment.dll")); + + public static MetadataReference SystemDrawing => CreateReferenceFromFile(Path.Combine(AssemblyPath, "System.Drawing.dll")); + + public static MetadataReference SystemNetHttp => CreateReferenceFromFile(Path.Combine(AssemblyPath, "System.Net.Http.dll")); + + public static MetadataReference SystemWindowsForms => CreateReferenceFromFile(Path.Combine(AssemblyPath, "System.Windows.Forms.dll")); + + public static MetadataReference SystemXaml => CreateReferenceFromFile(Path.Combine(AssemblyPath, "System.Xaml.dll")); + + public static MetadataReference SystemXml => CreateReferenceFromFile(Path.Combine(AssemblyPath, "System.Xml.dll")); + + public static MetadataReference SystemXmlLinq => CreateReferenceFromFile(Path.Combine(AssemblyPath, "System.Xml.Linq.dll")); + + public static MetadataReference WindowsBase => CreateReferenceFromFile(Path.Combine(AssemblyPath, "WindowsBase.dll")); + } + + public static class Net48 { - SystemValueTupleReference = MetadataReference.CreateFromFile(systemValueTuple.Location); } -#else -#error Unsupported target framework. -#endif } - public static MetadataReference MicrosoftVisualBasicReference + public static class NetStandard { - [MethodImpl(MethodImplOptions.NoInlining)] - get + public static class NetStandard10 + { + public static MetadataReference SystemCollections => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.collections", "4.3.0", "ref", "netstandard1.0", "System.Collections.dll")); + + public static MetadataReference SystemDiagnosticsDebug => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.diagnostics.debug", "4.3.0", "ref", "netstandard1.0", "System.Diagnostics.Debug.dll")); + + public static MetadataReference SystemDiagnosticsTools => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.diagnostics.tools", "4.3.0", "ref", "netstandard1.0", "System.Diagnostics.Tools.dll")); + + public static MetadataReference SystemGlobalization => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.globalization", "4.3.0", "ref", "netstandard1.0", "System.Globalization.dll")); + + public static MetadataReference SystemIO => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.io", "4.3.0", "ref", "netstandard1.0", "System.IO.dll")); + + public static MetadataReference SystemLinq => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.linq", "4.3.0", "ref", "netstandard1.0", "System.Linq.dll")); + + public static MetadataReference SystemLinqExpressions => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.linq.expressions", "4.3.0", "ref", "netstandard1.0", "System.Linq.Expressions.dll")); + + public static MetadataReference SystemNetPrimitives => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.net.primitives", "4.3.0", "ref", "netstandard1.0", "System.Net.Primitives.dll")); + + public static MetadataReference SystemObjectModel => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.objectmodel", "4.3.0", "ref", "netstandard1.0", "System.ObjectModel.dll")); + + public static MetadataReference SystemReflection => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.reflection", "4.3.0", "ref", "netstandard1.0", "System.Reflection.dll")); + + public static MetadataReference SystemReflectionExtensions => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.reflection.extensions", "4.3.0", "ref", "netstandard1.0", "System.Reflection.Extensions.dll")); + + public static MetadataReference SystemReflectionPrimitives => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.reflection.primitives", "4.3.0", "ref", "netstandard1.0", "System.Reflection.Primitives.dll")); + + public static MetadataReference SystemResourcesResourceManager => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.resources.resourcemanager", "4.3.0", "ref", "netstandard1.0", "System.Resources.ResourceManager.dll")); + + public static MetadataReference SystemRuntime => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.runtime", "4.3.0", "ref", "netstandard1.0", "System.Runtime.dll")); + + public static MetadataReference SystemRuntimeExtensions => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.runtime.extensions", "4.3.0", "ref", "netstandard1.0", "System.Runtime.Extensions.dll")); + + public static MetadataReference SystemTextEncoding => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.text.encoding", "4.3.0", "ref", "netstandard1.0", "System.Text.Encoding.dll")); + + public static MetadataReference SystemTextEncodingExtensions => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.text.encoding.extensions", "4.3.0", "ref", "netstandard1.0", "System.Text.Encoding.Extensions.dll")); + + public static MetadataReference SystemTextRegularExpressions => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.text.regularexpressions", "4.3.0", "ref", "netstandard1.0", "System.Text.RegularExpressions.dll")); + + public static MetadataReference SystemThreading => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.threading", "4.3.0", "ref", "netstandard1.0", "System.Threading.dll")); + + public static MetadataReference SystemThreadingTasks => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.threading.tasks", "4.3.0", "ref", "netstandard1.0", "System.Threading.Tasks.dll")); + + public static MetadataReference SystemXmlReaderWriter => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.xml.readerwriter", "4.3.0", "ref", "netstandard1.0", "System.Xml.ReaderWriter.dll")); + + public static MetadataReference SystemXmlXDocument => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.xml.xdocument", "4.3.0", "ref", "netstandard1.0", "System.Xml.XDocument.dll")); + } + + public static class NetStandard11 + { + public static MetadataReference SystemCollections => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.collections", "4.3.0", "ref", "netstandard1.0", "System.Collections.dll")); + + public static MetadataReference SystemCollectionsConcurrent => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.collections.concurrent", "4.3.0", "ref", "netstandard1.1", "System.Collections.Concurrent.dll")); + + public static MetadataReference SystemDiagnosticsDebug => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.diagnostics.debug", "4.3.0", "ref", "netstandard1.0", "System.Diagnostics.Debug.dll")); + + public static MetadataReference SystemDiagnosticsTools => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.diagnostics.tools", "4.3.0", "ref", "netstandard1.0", "System.Diagnostics.Tools.dll")); + + public static MetadataReference SystemDiagnosticsTracing => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.diagnostics.tracing", "4.3.0", "ref", "netstandard1.1", "System.Diagnostics.Tracing.dll")); + + public static MetadataReference SystemGlobalization => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.globalization", "4.3.0", "ref", "netstandard1.0", "System.Globalization.dll")); + + public static MetadataReference SystemIO => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.io", "4.3.0", "ref", "netstandard1.0", "System.IO.dll")); + + public static MetadataReference SystemIOCompression => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.io.compression", "4.3.0", "ref", "netstandard1.1", "System.IO.Compression.dll")); + + public static MetadataReference SystemLinq => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.linq", "4.3.0", "ref", "netstandard1.0", "System.Linq.dll")); + + public static MetadataReference SystemLinqExpressions => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.linq.expressions", "4.3.0", "ref", "netstandard1.0", "System.Linq.Expressions.dll")); + + public static MetadataReference SystemNetHttp => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.net.http", "4.3.0", "ref", "netstandard1.1", "System.Net.Http.dll")); + + public static MetadataReference SystemNetPrimitives => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.net.primitives", "4.3.0", "ref", "netstandard1.1", "System.Net.Primitives.dll")); + + public static MetadataReference SystemObjectModel => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.objectmodel", "4.3.0", "ref", "netstandard1.0", "System.ObjectModel.dll")); + + public static MetadataReference SystemReflection => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.reflection", "4.3.0", "ref", "netstandard1.0", "System.Reflection.dll")); + + public static MetadataReference SystemReflectionExtensions => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.reflection.extensions", "4.3.0", "ref", "netstandard1.0", "System.Reflection.Extensions.dll")); + + public static MetadataReference SystemReflectionPrimitives => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.reflection.primitives", "4.3.0", "ref", "netstandard1.0", "System.Reflection.Primitives.dll")); + + public static MetadataReference SystemResourcesResourceManager => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.resources.resourcemanager", "4.3.0", "ref", "netstandard1.0", "System.Resources.ResourceManager.dll")); + + public static MetadataReference SystemRuntime => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.runtime", "4.3.0", "ref", "netstandard1.0", "System.Runtime.dll")); + + public static MetadataReference SystemRuntimeExtensions => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.runtime.extensions", "4.3.0", "ref", "netstandard1.0", "System.Runtime.Extensions.dll")); + + public static MetadataReference SystemRuntimeInteropServices => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.runtime.interopservices", "4.3.0", "ref", "netstandard1.1", "System.Runtime.InteropServices.dll")); + + public static MetadataReference SystemRuntimeInteropServicesRuntimeInformation => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.runtime.interopservices.runtimeinformation", "4.3.0", "ref", "netstandard1.1", "System.Runtime.InteropServices.RuntimeInformation.dll")); + + public static MetadataReference SystemRuntimeNumerics => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.runtime.numerics", "4.3.0", "ref", "netstandard1.1", "System.Runtime.Numerics.dll")); + + public static MetadataReference SystemTextEncoding => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.text.encoding", "4.3.0", "ref", "netstandard1.0", "System.Text.Encoding.dll")); + + public static MetadataReference SystemTextEncodingExtensions => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.text.encoding.extensions", "4.3.0", "ref", "netstandard1.0", "System.Text.Encoding.Extensions.dll")); + + public static MetadataReference SystemTextRegularExpressions => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.text.regularexpressions", "4.3.0", "ref", "netstandard1.0", "System.Text.RegularExpressions.dll")); + + public static MetadataReference SystemThreading => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.threading", "4.3.0", "ref", "netstandard1.0", "System.Threading.dll")); + + public static MetadataReference SystemThreadingTasks => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.threading.tasks", "4.3.0", "ref", "netstandard1.0", "System.Threading.Tasks.dll")); + + public static MetadataReference SystemXmlReaderWriter => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.xml.readerwriter", "4.3.0", "ref", "netstandard1.0", "System.Xml.ReaderWriter.dll")); + + public static MetadataReference SystemXmlXDocument => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.xml.xdocument", "4.3.0", "ref", "netstandard1.0", "System.Xml.XDocument.dll")); + } + + public static class NetStandard12 + { + public static MetadataReference SystemCollections => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.collections", "4.3.0", "ref", "netstandard1.0", "System.Collections.dll")); + + public static MetadataReference SystemCollectionsConcurrent => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.collections.concurrent", "4.3.0", "ref", "netstandard1.1", "System.Collections.Concurrent.dll")); + + public static MetadataReference SystemDiagnosticsDebug => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.diagnostics.debug", "4.3.0", "ref", "netstandard1.0", "System.Diagnostics.Debug.dll")); + + public static MetadataReference SystemDiagnosticsTools => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.diagnostics.tools", "4.3.0", "ref", "netstandard1.0", "System.Diagnostics.Tools.dll")); + + public static MetadataReference SystemDiagnosticsTracing => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.diagnostics.tracing", "4.3.0", "ref", "netstandard1.2", "System.Diagnostics.Tracing.dll")); + + public static MetadataReference SystemGlobalization => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.globalization", "4.3.0", "ref", "netstandard1.0", "System.Globalization.dll")); + + public static MetadataReference SystemIO => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.io", "4.3.0", "ref", "netstandard1.0", "System.IO.dll")); + + public static MetadataReference SystemIOCompression => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.io.compression", "4.3.0", "ref", "netstandard1.1", "System.IO.Compression.dll")); + + public static MetadataReference SystemLinq => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.linq", "4.3.0", "ref", "netstandard1.0", "System.Linq.dll")); + + public static MetadataReference SystemLinqExpressions => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.linq.expressions", "4.3.0", "ref", "netstandard1.0", "System.Linq.Expressions.dll")); + + public static MetadataReference SystemNetHttp => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.net.http", "4.3.0", "ref", "netstandard1.1", "System.Net.Http.dll")); + + public static MetadataReference SystemNetPrimitives => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.net.primitives", "4.3.0", "ref", "netstandard1.1", "System.Net.Primitives.dll")); + + public static MetadataReference SystemObjectModel => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.objectmodel", "4.3.0", "ref", "netstandard1.0", "System.ObjectModel.dll")); + + public static MetadataReference SystemReflection => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.reflection", "4.3.0", "ref", "netstandard1.0", "System.Reflection.dll")); + + public static MetadataReference SystemReflectionExtensions => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.reflection.extensions", "4.3.0", "ref", "netstandard1.0", "System.Reflection.Extensions.dll")); + + public static MetadataReference SystemReflectionPrimitives => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.reflection.primitives", "4.3.0", "ref", "netstandard1.0", "System.Reflection.Primitives.dll")); + + public static MetadataReference SystemResourcesResourceManager => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.resources.resourcemanager", "4.3.0", "ref", "netstandard1.0", "System.Resources.ResourceManager.dll")); + + public static MetadataReference SystemRuntime => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.runtime", "4.3.0", "ref", "netstandard1.2", "System.Runtime.dll")); + + public static MetadataReference SystemRuntimeExtensions => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.runtime.extensions", "4.3.0", "ref", "netstandard1.0", "System.Runtime.Extensions.dll")); + + public static MetadataReference SystemRuntimeInteropServices => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.runtime.interopservices", "4.3.0", "ref", "netstandard1.2", "System.Runtime.InteropServices.dll")); + + public static MetadataReference SystemRuntimeInteropServicesRuntimeInformation => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.runtime.interopservices.runtimeinformation", "4.3.0", "ref", "netstandard1.1", "System.Runtime.InteropServices.RuntimeInformation.dll")); + + public static MetadataReference SystemRuntimeNumerics => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.runtime.numerics", "4.3.0", "ref", "netstandard1.1", "System.Runtime.Numerics.dll")); + + public static MetadataReference SystemTextEncoding => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.text.encoding", "4.3.0", "ref", "netstandard1.0", "System.Text.Encoding.dll")); + + public static MetadataReference SystemTextEncodingExtensions => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.text.encoding.extensions", "4.3.0", "ref", "netstandard1.0", "System.Text.Encoding.Extensions.dll")); + + public static MetadataReference SystemTextRegularExpressions => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.text.regularexpressions", "4.3.0", "ref", "netstandard1.0", "System.Text.RegularExpressions.dll")); + + public static MetadataReference SystemThreading => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.threading", "4.3.0", "ref", "netstandard1.0", "System.Threading.dll")); + + public static MetadataReference SystemThreadingTasks => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.threading.tasks", "4.3.0", "ref", "netstandard1.0", "System.Threading.Tasks.dll")); + + public static MetadataReference SystemThreadingTimer => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.threading.timer", "4.3.0", "ref", "netstandard1.2", "System.Threading.Timer.dll")); + + public static MetadataReference SystemXmlReaderWriter => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.xml.readerwriter", "4.3.0", "ref", "netstandard1.0", "System.Xml.ReaderWriter.dll")); + + public static MetadataReference SystemXmlXDocument => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.xml.xdocument", "4.3.0", "ref", "netstandard1.0", "System.Xml.XDocument.dll")); + } + + public static class NetStandard13 { - if (_microsoftVisualBasicReference is null) + public static MetadataReference MicrosoftWin32Primitives => CreateReferenceFromFile(Path.Combine(PackagesPath, "microsoft.win32.primitives", "4.3.0", "ref", "netstandard1.3", "Microsoft.Win32.Primitives.dll")); + + public static MetadataReference SystemAppContext => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.appcontext", "4.3.0", "ref", "netstandard1.3", "System.AppContext.dll")); + + public static MetadataReference SystemCollections => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.collections", "4.3.0", "ref", "netstandard1.3", "System.Collections.dll")); + + public static MetadataReference SystemCollectionsConcurrent => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.collections.concurrent", "4.3.0", "ref", "netstandard1.3", "System.Collections.Concurrent.dll")); + + public static MetadataReference SystemConsole => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.console", "4.3.0", "ref", "netstandard1.3", "System.Console.dll")); + + public static MetadataReference SystemDiagnosticsDebug => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.diagnostics.debug", "4.3.0", "ref", "netstandard1.3", "System.Diagnostics.Debug.dll")); + + public static MetadataReference SystemDiagnosticsTools => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.diagnostics.tools", "4.3.0", "ref", "netstandard1.0", "System.Diagnostics.Tools.dll")); + + public static MetadataReference SystemDiagnosticsTracing => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.diagnostics.tracing", "4.3.0", "ref", "netstandard1.3", "System.Diagnostics.Tracing.dll")); + + public static MetadataReference SystemGlobalization => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.globalization", "4.3.0", "ref", "netstandard1.3", "System.Globalization.dll")); + + public static MetadataReference SystemGlobalizationCalendars => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.globalization.calendars", "4.3.0", "ref", "netstandard1.3", "System.Globalization.Calendars.dll")); + + public static MetadataReference SystemIO => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.io", "4.3.0", "ref", "netstandard1.3", "System.IO.dll")); + + public static MetadataReference SystemIOCompression => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.io.compression", "4.3.0", "ref", "netstandard1.3", "System.IO.Compression.dll")); + + public static MetadataReference SystemIOCompressionZipFile => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.io.compression.zipfile", "4.3.0", "ref", "netstandard1.3", "System.IO.Compression.ZipFile.dll")); + + public static MetadataReference SystemIOFileSystem => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.io.filesystem", "4.3.0", "ref", "netstandard1.3", "System.IO.FileSystem.dll")); + + public static MetadataReference SystemIOFileSystemPrimitives => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.io.filesystem.primitives", "4.3.0", "ref", "netstandard1.3", "System.IO.FileSystem.Primitives.dll")); + + public static MetadataReference SystemLinq => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.linq", "4.3.0", "ref", "netstandard1.0", "System.Linq.dll")); + + public static MetadataReference SystemLinqExpressions => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.linq.expressions", "4.3.0", "ref", "netstandard1.3", "System.Linq.Expressions.dll")); + + public static MetadataReference SystemNetHttp => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.net.http", "4.3.0", "ref", "netstandard1.3", "System.Net.Http.dll")); + + public static MetadataReference SystemNetPrimitives => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.net.primitives", "4.3.0", "ref", "netstandard1.3", "System.Net.Primitives.dll")); + + public static MetadataReference SystemNetSockets => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.net.sockets", "4.3.0", "ref", "netstandard1.3", "System.Net.Sockets.dll")); + + public static MetadataReference SystemObjectModel => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.objectmodel", "4.3.0", "ref", "netstandard1.3", "System.ObjectModel.dll")); + + public static MetadataReference SystemReflection => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.reflection", "4.3.0", "ref", "netstandard1.3", "System.Reflection.dll")); + + public static MetadataReference SystemReflectionExtensions => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.reflection.extensions", "4.3.0", "ref", "netstandard1.0", "System.Reflection.Extensions.dll")); + + public static MetadataReference SystemReflectionPrimitives => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.reflection.primitives", "4.3.0", "ref", "netstandard1.0", "System.Reflection.Primitives.dll")); + + public static MetadataReference SystemResourcesResourceManager => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.resources.resourcemanager", "4.3.0", "ref", "netstandard1.0", "System.Resources.ResourceManager.dll")); + + public static MetadataReference SystemRuntime => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.runtime", "4.3.0", "ref", "netstandard1.3", "System.Runtime.dll")); + + public static MetadataReference SystemRuntimeExtensions => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.runtime.extensions", "4.3.0", "ref", "netstandard1.3", "System.Runtime.Extensions.dll")); + + public static MetadataReference SystemRuntimeHandles => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.runtime.handles", "4.3.0", "ref", "netstandard1.3", "System.Runtime.Handles.dll")); + + public static MetadataReference SystemRuntimeInteropServices => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.runtime.interopservices", "4.3.0", "ref", "netstandard1.3", "System.Runtime.InteropServices.dll")); + + public static MetadataReference SystemRuntimeInteropServicesRuntimeInformation => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.runtime.interopservices.runtimeinformation", "4.3.0", "ref", "netstandard1.1", "System.Runtime.InteropServices.RuntimeInformation.dll")); + + public static MetadataReference SystemRuntimeNumerics => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.runtime.numerics", "4.3.0", "ref", "netstandard1.1", "System.Runtime.Numerics.dll")); + + public static MetadataReference SystemSecurityCryptographyAlgorithms => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.security.cryptography.algorithms", "4.3.0", "ref", "netstandard1.3", "System.Security.Cryptography.Algorithms.dll")); + + public static MetadataReference SystemSecurityCryptographyEncoding => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.security.cryptography.encoding", "4.3.0", "ref", "netstandard1.3", "System.Security.Cryptography.Encoding.dll")); + + public static MetadataReference SystemSecurityCryptographyPrimitives => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.security.cryptography.primitives", "4.3.0", "ref", "netstandard1.3", "System.Security.Cryptography.Primitives.dll")); + + public static MetadataReference SystemSecurityCryptographyX509Certificates => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.security.cryptography.x509certificates", "4.3.0", "ref", "netstandard1.3", "System.Security.Cryptography.X509Certificates.dll")); + + public static MetadataReference SystemTextEncoding => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.text.encoding", "4.3.0", "ref", "netstandard1.3", "System.Text.Encoding.dll")); + + public static MetadataReference SystemTextEncodingExtensions => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.text.encoding.extensions", "4.3.0", "ref", "netstandard1.3", "System.Text.Encoding.Extensions.dll")); + + public static MetadataReference SystemTextRegularExpressions => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.text.regularexpressions", "4.3.0", "ref", "netstandard1.3", "System.Text.RegularExpressions.dll")); + + public static MetadataReference SystemThreading => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.threading", "4.3.0", "ref", "netstandard1.3", "System.Threading.dll")); + + public static MetadataReference SystemThreadingTasks => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.threading.tasks", "4.3.0", "ref", "netstandard1.3", "System.Threading.Tasks.dll")); + + public static MetadataReference SystemThreadingTimer => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.threading.timer", "4.3.0", "ref", "netstandard1.2", "System.Threading.Timer.dll")); + + public static MetadataReference SystemXmlReaderWriter => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.xml.readerwriter", "4.3.0", "ref", "netstandard1.3", "System.Xml.ReaderWriter.dll")); + + public static MetadataReference SystemXmlXDocument => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.xml.xdocument", "4.3.0", "ref", "netstandard1.3", "System.Xml.XDocument.dll")); + } + + public static class NetStandard14 + { + public static MetadataReference MicrosoftWin32Primitives => CreateReferenceFromFile(Path.Combine(PackagesPath, "microsoft.win32.primitives", "4.3.0", "ref", "netstandard1.3", "Microsoft.Win32.Primitives.dll")); + + public static MetadataReference SystemAppContext => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.appcontext", "4.3.0", "ref", "netstandard1.3", "System.AppContext.dll")); + + public static MetadataReference SystemCollections => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.collections", "4.3.0", "ref", "netstandard1.3", "System.Collections.dll")); + + public static MetadataReference SystemCollectionsConcurrent => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.collections.concurrent", "4.3.0", "ref", "netstandard1.3", "System.Collections.Concurrent.dll")); + + public static MetadataReference SystemConsole => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.console", "4.3.0", "ref", "netstandard1.3", "System.Console.dll")); + + public static MetadataReference SystemDiagnosticsDebug => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.diagnostics.debug", "4.3.0", "ref", "netstandard1.3", "System.Diagnostics.Debug.dll")); + + public static MetadataReference SystemDiagnosticsTools => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.diagnostics.tools", "4.3.0", "ref", "netstandard1.0", "System.Diagnostics.Tools.dll")); + + public static MetadataReference SystemDiagnosticsTracing => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.diagnostics.tracing", "4.3.0", "ref", "netstandard1.3", "System.Diagnostics.Tracing.dll")); + + public static MetadataReference SystemGlobalization => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.globalization", "4.3.0", "ref", "netstandard1.3", "System.Globalization.dll")); + + public static MetadataReference SystemGlobalizationCalendars => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.globalization.calendars", "4.3.0", "ref", "netstandard1.3", "System.Globalization.Calendars.dll")); + + public static MetadataReference SystemIO => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.io", "4.3.0", "ref", "netstandard1.3", "System.IO.dll")); + + public static MetadataReference SystemIOCompression => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.io.compression", "4.3.0", "ref", "netstandard1.3", "System.IO.Compression.dll")); + + public static MetadataReference SystemIOCompressionZipFile => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.io.compression.zipfile", "4.3.0", "ref", "netstandard1.3", "System.IO.Compression.ZipFile.dll")); + + public static MetadataReference SystemIOFileSystem => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.io.filesystem", "4.3.0", "ref", "netstandard1.3", "System.IO.FileSystem.dll")); + + public static MetadataReference SystemIOFileSystemPrimitives => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.io.filesystem.primitives", "4.3.0", "ref", "netstandard1.3", "System.IO.FileSystem.Primitives.dll")); + + public static MetadataReference SystemLinq => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.linq", "4.3.0", "ref", "netstandard1.0", "System.Linq.dll")); + + public static MetadataReference SystemLinqExpressions => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.linq.expressions", "4.3.0", "ref", "netstandard1.3", "System.Linq.Expressions.dll")); + + public static MetadataReference SystemNetHttp => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.net.http", "4.3.0", "ref", "netstandard1.3", "System.Net.Http.dll")); + + public static MetadataReference SystemNetPrimitives => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.net.primitives", "4.3.0", "ref", "netstandard1.3", "System.Net.Primitives.dll")); + + public static MetadataReference SystemNetSockets => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.net.sockets", "4.3.0", "ref", "netstandard1.3", "System.Net.Sockets.dll")); + + public static MetadataReference SystemObjectModel => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.objectmodel", "4.3.0", "ref", "netstandard1.3", "System.ObjectModel.dll")); + + public static MetadataReference SystemReflection => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.reflection", "4.3.0", "ref", "netstandard1.3", "System.Reflection.dll")); + + public static MetadataReference SystemReflectionExtensions => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.reflection.extensions", "4.3.0", "ref", "netstandard1.0", "System.Reflection.Extensions.dll")); + + public static MetadataReference SystemReflectionPrimitives => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.reflection.primitives", "4.3.0", "ref", "netstandard1.0", "System.Reflection.Primitives.dll")); + + public static MetadataReference SystemResourcesResourceManager => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.resources.resourcemanager", "4.3.0", "ref", "netstandard1.0", "System.Resources.ResourceManager.dll")); + + public static MetadataReference SystemRuntime => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.runtime", "4.3.0", "ref", "netstandard1.3", "System.Runtime.dll")); + + public static MetadataReference SystemRuntimeExtensions => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.runtime.extensions", "4.3.0", "ref", "netstandard1.3", "System.Runtime.Extensions.dll")); + + public static MetadataReference SystemRuntimeHandles => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.runtime.handles", "4.3.0", "ref", "netstandard1.3", "System.Runtime.Handles.dll")); + + public static MetadataReference SystemRuntimeInteropServices => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.runtime.interopservices", "4.3.0", "ref", "netstandard1.3", "System.Runtime.InteropServices.dll")); + + public static MetadataReference SystemRuntimeInteropServicesRuntimeInformation => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.runtime.interopservices.runtimeinformation", "4.3.0", "ref", "netstandard1.1", "System.Runtime.InteropServices.RuntimeInformation.dll")); + + public static MetadataReference SystemRuntimeNumerics => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.runtime.numerics", "4.3.0", "ref", "netstandard1.1", "System.Runtime.Numerics.dll")); + + public static MetadataReference SystemSecurityCryptographyAlgorithms => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.security.cryptography.algorithms", "4.3.0", "ref", "netstandard1.4", "System.Security.Cryptography.Algorithms.dll")); + + public static MetadataReference SystemSecurityCryptographyEncoding => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.security.cryptography.encoding", "4.3.0", "ref", "netstandard1.3", "System.Security.Cryptography.Encoding.dll")); + + public static MetadataReference SystemSecurityCryptographyPrimitives => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.security.cryptography.primitives", "4.3.0", "ref", "netstandard1.3", "System.Security.Cryptography.Primitives.dll")); + + public static MetadataReference SystemSecurityCryptographyX509Certificates => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.security.cryptography.x509certificates", "4.3.0", "ref", "netstandard1.4", "System.Security.Cryptography.X509Certificates.dll")); + + public static MetadataReference SystemTextEncoding => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.text.encoding", "4.3.0", "ref", "netstandard1.3", "System.Text.Encoding.dll")); + + public static MetadataReference SystemTextEncodingExtensions => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.text.encoding.extensions", "4.3.0", "ref", "netstandard1.3", "System.Text.Encoding.Extensions.dll")); + + public static MetadataReference SystemTextRegularExpressions => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.text.regularexpressions", "4.3.0", "ref", "netstandard1.3", "System.Text.RegularExpressions.dll")); + + public static MetadataReference SystemThreading => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.threading", "4.3.0", "ref", "netstandard1.3", "System.Threading.dll")); + + public static MetadataReference SystemThreadingTasks => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.threading.tasks", "4.3.0", "ref", "netstandard1.3", "System.Threading.Tasks.dll")); + + public static MetadataReference SystemThreadingTimer => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.threading.timer", "4.3.0", "ref", "netstandard1.2", "System.Threading.Timer.dll")); + + public static MetadataReference SystemXmlReaderWriter => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.xml.readerwriter", "4.3.0", "ref", "netstandard1.3", "System.Xml.ReaderWriter.dll")); + + public static MetadataReference SystemXmlXDocument => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.xml.xdocument", "4.3.0", "ref", "netstandard1.3", "System.Xml.XDocument.dll")); + } + + public static class NetStandard15 + { + public static MetadataReference MicrosoftWin32Primitives => CreateReferenceFromFile(Path.Combine(PackagesPath, "microsoft.win32.primitives", "4.3.0", "ref", "netstandard1.3", "Microsoft.Win32.Primitives.dll")); + + public static MetadataReference SystemAppContext => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.appcontext", "4.3.0", "ref", "netstandard1.3", "System.AppContext.dll")); + + public static MetadataReference SystemCollections => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.collections", "4.3.0", "ref", "netstandard1.3", "System.Collections.dll")); + + public static MetadataReference SystemCollectionsConcurrent => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.collections.concurrent", "4.3.0", "ref", "netstandard1.3", "System.Collections.Concurrent.dll")); + + public static MetadataReference SystemConsole => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.console", "4.3.0", "ref", "netstandard1.3", "System.Console.dll")); + + public static MetadataReference SystemDiagnosticsDebug => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.diagnostics.debug", "4.3.0", "ref", "netstandard1.3", "System.Diagnostics.Debug.dll")); + + public static MetadataReference SystemDiagnosticsTools => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.diagnostics.tools", "4.3.0", "ref", "netstandard1.0", "System.Diagnostics.Tools.dll")); + + public static MetadataReference SystemDiagnosticsTracing => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.diagnostics.tracing", "4.3.0", "ref", "netstandard1.5", "System.Diagnostics.Tracing.dll")); + + public static MetadataReference SystemGlobalization => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.globalization", "4.3.0", "ref", "netstandard1.3", "System.Globalization.dll")); + + public static MetadataReference SystemGlobalizationCalendars => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.globalization.calendars", "4.3.0", "ref", "netstandard1.3", "System.Globalization.Calendars.dll")); + + public static MetadataReference SystemIO => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.io", "4.3.0", "ref", "netstandard1.5", "System.IO.dll")); + + public static MetadataReference SystemIOCompression => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.io.compression", "4.3.0", "ref", "netstandard1.3", "System.IO.Compression.dll")); + + public static MetadataReference SystemIOCompressionZipFile => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.io.compression.zipfile", "4.3.0", "ref", "netstandard1.3", "System.IO.Compression.ZipFile.dll")); + + public static MetadataReference SystemIOFileSystem => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.io.filesystem", "4.3.0", "ref", "netstandard1.3", "System.IO.FileSystem.dll")); + + public static MetadataReference SystemIOFileSystemPrimitives => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.io.filesystem.primitives", "4.3.0", "ref", "netstandard1.3", "System.IO.FileSystem.Primitives.dll")); + + public static MetadataReference SystemLinq => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.linq", "4.3.0", "ref", "netstandard1.0", "System.Linq.dll")); + + public static MetadataReference SystemLinqExpressions => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.linq.expressions", "4.3.0", "ref", "netstandard1.3", "System.Linq.Expressions.dll")); + + public static MetadataReference SystemNetHttp => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.net.http", "4.3.0", "ref", "netstandard1.3", "System.Net.Http.dll")); + + public static MetadataReference SystemNetPrimitives => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.net.primitives", "4.3.0", "ref", "netstandard1.3", "System.Net.Primitives.dll")); + + public static MetadataReference SystemNetSockets => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.net.sockets", "4.3.0", "ref", "netstandard1.3", "System.Net.Sockets.dll")); + + public static MetadataReference SystemObjectModel => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.objectmodel", "4.3.0", "ref", "netstandard1.3", "System.ObjectModel.dll")); + + public static MetadataReference SystemReflection => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.reflection", "4.3.0", "ref", "netstandard1.3", "System.Reflection.dll")); + + public static MetadataReference SystemReflectionExtensions => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.reflection.extensions", "4.3.0", "ref", "netstandard1.0", "System.Reflection.Extensions.dll")); + + public static MetadataReference SystemReflectionPrimitives => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.reflection.primitives", "4.3.0", "ref", "netstandard1.0", "System.Reflection.Primitives.dll")); + + public static MetadataReference SystemResourcesResourceManager => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.resources.resourcemanager", "4.3.0", "ref", "netstandard1.0", "System.Resources.ResourceManager.dll")); + + public static MetadataReference SystemRuntime => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.runtime", "4.3.0", "ref", "netstandard1.5", "System.Runtime.dll")); + + public static MetadataReference SystemRuntimeExtensions => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.runtime.extensions", "4.3.0", "ref", "netstandard1.5", "System.Runtime.Extensions.dll")); + + public static MetadataReference SystemRuntimeHandles => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.runtime.handles", "4.3.0", "ref", "netstandard1.3", "System.Runtime.Handles.dll")); + + public static MetadataReference SystemRuntimeInteropServices => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.runtime.interopservices", "4.3.0", "ref", "netstandard1.5", "System.Runtime.InteropServices.dll")); + + public static MetadataReference SystemRuntimeInteropServicesRuntimeInformation => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.runtime.interopservices.runtimeinformation", "4.3.0", "ref", "netstandard1.1", "System.Runtime.InteropServices.RuntimeInformation.dll")); + + public static MetadataReference SystemRuntimeNumerics => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.runtime.numerics", "4.3.0", "ref", "netstandard1.1", "System.Runtime.Numerics.dll")); + + public static MetadataReference SystemSecurityCryptographyAlgorithms => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.security.cryptography.algorithms", "4.3.0", "ref", "netstandard1.4", "System.Security.Cryptography.Algorithms.dll")); + + public static MetadataReference SystemSecurityCryptographyEncoding => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.security.cryptography.encoding", "4.3.0", "ref", "netstandard1.3", "System.Security.Cryptography.Encoding.dll")); + + public static MetadataReference SystemSecurityCryptographyPrimitives => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.security.cryptography.primitives", "4.3.0", "ref", "netstandard1.3", "System.Security.Cryptography.Primitives.dll")); + + public static MetadataReference SystemSecurityCryptographyX509Certificates => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.security.cryptography.x509certificates", "4.3.0", "ref", "netstandard1.4", "System.Security.Cryptography.X509Certificates.dll")); + + public static MetadataReference SystemTextEncoding => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.text.encoding", "4.3.0", "ref", "netstandard1.3", "System.Text.Encoding.dll")); + + public static MetadataReference SystemTextEncodingExtensions => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.text.encoding.extensions", "4.3.0", "ref", "netstandard1.3", "System.Text.Encoding.Extensions.dll")); + + public static MetadataReference SystemTextRegularExpressions => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.text.regularexpressions", "4.3.0", "ref", "netstandard1.3", "System.Text.RegularExpressions.dll")); + + public static MetadataReference SystemThreading => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.threading", "4.3.0", "ref", "netstandard1.3", "System.Threading.dll")); + + public static MetadataReference SystemThreadingTasks => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.threading.tasks", "4.3.0", "ref", "netstandard1.3", "System.Threading.Tasks.dll")); + + public static MetadataReference SystemThreadingTimer => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.threading.timer", "4.3.0", "ref", "netstandard1.2", "System.Threading.Timer.dll")); + + public static MetadataReference SystemXmlReaderWriter => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.xml.readerwriter", "4.3.0", "ref", "netstandard1.3", "System.Xml.ReaderWriter.dll")); + + public static MetadataReference SystemXmlXDocument => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.xml.xdocument", "4.3.0", "ref", "netstandard1.3", "System.Xml.XDocument.dll")); + } + + public static class NetStandard16 + { + public static MetadataReference MicrosoftWin32Primitives => CreateReferenceFromFile(Path.Combine(PackagesPath, "microsoft.win32.primitives", "4.3.0", "ref", "netstandard1.3", "Microsoft.Win32.Primitives.dll")); + + public static MetadataReference SystemAppContext => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.appcontext", "4.3.0", "ref", "netstandard1.6", "System.AppContext.dll")); + + public static MetadataReference SystemCollections => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.collections", "4.3.0", "ref", "netstandard1.3", "System.Collections.dll")); + + public static MetadataReference SystemCollectionsConcurrent => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.collections.concurrent", "4.3.0", "ref", "netstandard1.3", "System.Collections.Concurrent.dll")); + + public static MetadataReference SystemConsole => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.console", "4.3.0", "ref", "netstandard1.3", "System.Console.dll")); + + public static MetadataReference SystemDiagnosticsDebug => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.diagnostics.debug", "4.3.0", "ref", "netstandard1.3", "System.Diagnostics.Debug.dll")); + + public static MetadataReference SystemDiagnosticsTools => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.diagnostics.tools", "4.3.0", "ref", "netstandard1.0", "System.Diagnostics.Tools.dll")); + + public static MetadataReference SystemDiagnosticsTracing => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.diagnostics.tracing", "4.3.0", "ref", "netstandard1.5", "System.Diagnostics.Tracing.dll")); + + public static MetadataReference SystemGlobalization => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.globalization", "4.3.0", "ref", "netstandard1.3", "System.Globalization.dll")); + + public static MetadataReference SystemGlobalizationCalendars => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.globalization.calendars", "4.3.0", "ref", "netstandard1.3", "System.Globalization.Calendars.dll")); + + public static MetadataReference SystemIO => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.io", "4.3.0", "ref", "netstandard1.5", "System.IO.dll")); + + public static MetadataReference SystemIOCompression => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.io.compression", "4.3.0", "ref", "netstandard1.3", "System.IO.Compression.dll")); + + public static MetadataReference SystemIOCompressionZipFile => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.io.compression.zipfile", "4.3.0", "ref", "netstandard1.3", "System.IO.Compression.ZipFile.dll")); + + public static MetadataReference SystemIOFileSystem => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.io.filesystem", "4.3.0", "ref", "netstandard1.3", "System.IO.FileSystem.dll")); + + public static MetadataReference SystemIOFileSystemPrimitives => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.io.filesystem.primitives", "4.3.0", "ref", "netstandard1.3", "System.IO.FileSystem.Primitives.dll")); + + public static MetadataReference SystemLinq => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.linq", "4.3.0", "ref", "netstandard1.6", "System.Linq.dll")); + + public static MetadataReference SystemLinqExpressions => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.linq.expressions", "4.3.0", "ref", "netstandard1.6", "System.Linq.Expressions.dll")); + + public static MetadataReference SystemNetHttp => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.net.http", "4.3.0", "ref", "netstandard1.3", "System.Net.Http.dll")); + + public static MetadataReference SystemNetPrimitives => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.net.primitives", "4.3.0", "ref", "netstandard1.3", "System.Net.Primitives.dll")); + + public static MetadataReference SystemNetSockets => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.net.sockets", "4.3.0", "ref", "netstandard1.3", "System.Net.Sockets.dll")); + + public static MetadataReference SystemObjectModel => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.objectmodel", "4.3.0", "ref", "netstandard1.3", "System.ObjectModel.dll")); + + public static MetadataReference SystemReflection => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.reflection", "4.3.0", "ref", "netstandard1.3", "System.Reflection.dll")); + + public static MetadataReference SystemReflectionExtensions => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.reflection.extensions", "4.3.0", "ref", "netstandard1.0", "System.Reflection.Extensions.dll")); + + public static MetadataReference SystemReflectionPrimitives => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.reflection.primitives", "4.3.0", "ref", "netstandard1.0", "System.Reflection.Primitives.dll")); + + public static MetadataReference SystemResourcesResourceManager => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.resources.resourcemanager", "4.3.0", "ref", "netstandard1.0", "System.Resources.ResourceManager.dll")); + + public static MetadataReference SystemRuntime => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.runtime", "4.3.0", "ref", "netstandard1.5", "System.Runtime.dll")); + + public static MetadataReference SystemRuntimeExtensions => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.runtime.extensions", "4.3.0", "ref", "netstandard1.5", "System.Runtime.Extensions.dll")); + + public static MetadataReference SystemRuntimeHandles => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.runtime.handles", "4.3.0", "ref", "netstandard1.3", "System.Runtime.Handles.dll")); + + public static MetadataReference SystemRuntimeInteropServices => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.runtime.interopservices", "4.3.0", "ref", "netstandard1.5", "System.Runtime.InteropServices.dll")); + + public static MetadataReference SystemRuntimeInteropServicesRuntimeInformation => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.runtime.interopservices.runtimeinformation", "4.3.0", "ref", "netstandard1.1", "System.Runtime.InteropServices.RuntimeInformation.dll")); + + public static MetadataReference SystemRuntimeNumerics => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.runtime.numerics", "4.3.0", "ref", "netstandard1.1", "System.Runtime.Numerics.dll")); + + public static MetadataReference SystemSecurityCryptographyAlgorithms => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.security.cryptography.algorithms", "4.3.0", "ref", "netstandard1.6", "System.Security.Cryptography.Algorithms.dll")); + + public static MetadataReference SystemSecurityCryptographyEncoding => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.security.cryptography.encoding", "4.3.0", "ref", "netstandard1.3", "System.Security.Cryptography.Encoding.dll")); + + public static MetadataReference SystemSecurityCryptographyPrimitives => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.security.cryptography.primitives", "4.3.0", "ref", "netstandard1.3", "System.Security.Cryptography.Primitives.dll")); + + public static MetadataReference SystemSecurityCryptographyX509Certificates => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.security.cryptography.x509certificates", "4.3.0", "ref", "netstandard1.4", "System.Security.Cryptography.X509Certificates.dll")); + + public static MetadataReference SystemTextEncoding => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.text.encoding", "4.3.0", "ref", "netstandard1.3", "System.Text.Encoding.dll")); + + public static MetadataReference SystemTextEncodingExtensions => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.text.encoding.extensions", "4.3.0", "ref", "netstandard1.3", "System.Text.Encoding.Extensions.dll")); + + public static MetadataReference SystemTextRegularExpressions => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.text.regularexpressions", "4.3.0", "ref", "netstandard1.6", "System.Text.RegularExpressions.dll")); + + public static MetadataReference SystemThreading => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.threading", "4.3.0", "ref", "netstandard1.3", "System.Threading.dll")); + + public static MetadataReference SystemThreadingTasks => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.threading.tasks", "4.3.0", "ref", "netstandard1.3", "System.Threading.Tasks.dll")); + + public static MetadataReference SystemThreadingTimer => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.threading.timer", "4.3.0", "ref", "netstandard1.2", "System.Threading.Timer.dll")); + + public static MetadataReference SystemXmlReaderWriter => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.xml.readerwriter", "4.3.0", "ref", "netstandard1.3", "System.Xml.ReaderWriter.dll")); + + public static MetadataReference SystemXmlXDocument => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.xml.xdocument", "4.3.0", "ref", "netstandard1.3", "System.Xml.XDocument.dll")); + } + + public static class NetStandard20 + { + private static string AssemblyPath => Path.Combine(PackagesPath, "netstandard.library", "2.0.0", "build", "netstandard2.0", "ref"); + + public static MetadataReference Netstandard => CreateReferenceFromFile(Path.Combine(AssemblyPath, "netstandard.dll")); + } + } + + public static class Runtime + { + private static MetadataReference? _microsoftVisualBasicReference; + + public static MetadataReference MicrosoftCodeAnalysis { get; } = CreateReferenceFromFile(typeof(Compilation).GetTypeInfo().Assembly.Location); + + public static MetadataReference MicrosoftVisualBasic + { + [MethodImpl(MethodImplOptions.NoInlining)] + get { - try - { - _microsoftVisualBasicReference = MetadataReference.CreateFromFile(typeof(Microsoft.VisualBasic.Strings).GetTypeInfo().Assembly.Location); - } - catch (Exception e) + if (_microsoftVisualBasicReference is null) { - throw new PlatformNotSupportedException("Microsoft.VisualBasic is not supported on this platform", e); + try + { + _microsoftVisualBasicReference = CreateReferenceFromFile(typeof(Microsoft.VisualBasic.Strings).GetTypeInfo().Assembly.Location); + } + catch (Exception e) + { + throw new PlatformNotSupportedException("Microsoft.VisualBasic is not supported on this platform", e); + } } - } - return _microsoftVisualBasicReference; + return _microsoftVisualBasicReference; + } } + + public static MetadataReference SystemCollectionsImmutable { get; } = CreateReferenceFromFile(typeof(ImmutableArray).GetTypeInfo().Assembly.Location); } } } diff --git a/src/Microsoft.CodeAnalysis.Testing/Microsoft.CodeAnalysis.Analyzer.Testing/PublicAPI.Unshipped.txt b/src/Microsoft.CodeAnalysis.Testing/Microsoft.CodeAnalysis.Analyzer.Testing/PublicAPI.Unshipped.txt index 90525ffd70..29bcd95def 100644 --- a/src/Microsoft.CodeAnalysis.Testing/Microsoft.CodeAnalysis.Analyzer.Testing/PublicAPI.Unshipped.txt +++ b/src/Microsoft.CodeAnalysis.Testing/Microsoft.CodeAnalysis.Analyzer.Testing/PublicAPI.Unshipped.txt @@ -9,6 +9,8 @@ Microsoft.CodeAnalysis.Testing.AnalyzerTest.GetSortedDiagnosticsAsync Microsoft.CodeAnalysis.Testing.AnalyzerTest.MarkupOptions.get -> Microsoft.CodeAnalysis.Testing.MarkupOptions Microsoft.CodeAnalysis.Testing.AnalyzerTest.MarkupOptions.set -> void Microsoft.CodeAnalysis.Testing.AnalyzerTest.OptionsTransforms.get -> System.Collections.Generic.List> +Microsoft.CodeAnalysis.Testing.AnalyzerTest.ReferenceAssemblies.get -> Microsoft.CodeAnalysis.Testing.ReferenceAssemblies +Microsoft.CodeAnalysis.Testing.AnalyzerTest.ReferenceAssemblies.set -> void Microsoft.CodeAnalysis.Testing.AnalyzerTest.SolutionTransforms.get -> System.Collections.Generic.List> Microsoft.CodeAnalysis.Testing.AnalyzerTest.TestBehaviors.get -> Microsoft.CodeAnalysis.Testing.TestBehaviors Microsoft.CodeAnalysis.Testing.AnalyzerTest.TestBehaviors.set -> void @@ -88,12 +90,55 @@ Microsoft.CodeAnalysis.Testing.MetadataReferenceCollection.Add(System.Reflection Microsoft.CodeAnalysis.Testing.MetadataReferenceCollection.Add(string path) -> void Microsoft.CodeAnalysis.Testing.MetadataReferenceCollection.MetadataReferenceCollection() -> void Microsoft.CodeAnalysis.Testing.MetadataReferences +Microsoft.CodeAnalysis.Testing.MetadataReferences.NetFramework +Microsoft.CodeAnalysis.Testing.MetadataReferences.NetFramework.Net20 +Microsoft.CodeAnalysis.Testing.MetadataReferences.NetFramework.Net40 +Microsoft.CodeAnalysis.Testing.MetadataReferences.NetFramework.Net45 +Microsoft.CodeAnalysis.Testing.MetadataReferences.NetFramework.Net451 +Microsoft.CodeAnalysis.Testing.MetadataReferences.NetFramework.Net452 +Microsoft.CodeAnalysis.Testing.MetadataReferences.NetFramework.Net46 +Microsoft.CodeAnalysis.Testing.MetadataReferences.NetFramework.Net461 +Microsoft.CodeAnalysis.Testing.MetadataReferences.NetFramework.Net462 +Microsoft.CodeAnalysis.Testing.MetadataReferences.NetFramework.Net47 +Microsoft.CodeAnalysis.Testing.MetadataReferences.NetFramework.Net471 +Microsoft.CodeAnalysis.Testing.MetadataReferences.NetFramework.Net472 +Microsoft.CodeAnalysis.Testing.MetadataReferences.NetFramework.Net48 +Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard +Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard10 +Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard11 +Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard12 +Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard13 +Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard14 +Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard15 +Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard16 +Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard20 +Microsoft.CodeAnalysis.Testing.MetadataReferences.Runtime Microsoft.CodeAnalysis.Testing.ProjectState Microsoft.CodeAnalysis.Testing.ProjectState.AdditionalReferences.get -> Microsoft.CodeAnalysis.Testing.MetadataReferenceCollection Microsoft.CodeAnalysis.Testing.ProjectState.AssemblyName.get -> string Microsoft.CodeAnalysis.Testing.ProjectState.Name.get -> string Microsoft.CodeAnalysis.Testing.ProjectState.ProjectState(string name, string defaultPrefix, string defaultExtension) -> void Microsoft.CodeAnalysis.Testing.ProjectState.Sources.get -> Microsoft.CodeAnalysis.Testing.SourceFileList +Microsoft.CodeAnalysis.Testing.ReferenceAssemblies +Microsoft.CodeAnalysis.Testing.ReferenceAssemblies.LanguageSpecificReferences.get -> System.Collections.Immutable.ImmutableDictionary> +Microsoft.CodeAnalysis.Testing.ReferenceAssemblies.NetCore +Microsoft.CodeAnalysis.Testing.ReferenceAssemblies.NetFramework +Microsoft.CodeAnalysis.Testing.ReferenceAssemblies.NetFramework.Net20 +Microsoft.CodeAnalysis.Testing.ReferenceAssemblies.NetFramework.Net40 +Microsoft.CodeAnalysis.Testing.ReferenceAssemblies.NetFramework.Net45 +Microsoft.CodeAnalysis.Testing.ReferenceAssemblies.NetFramework.Net451 +Microsoft.CodeAnalysis.Testing.ReferenceAssemblies.NetFramework.Net452 +Microsoft.CodeAnalysis.Testing.ReferenceAssemblies.NetFramework.Net46 +Microsoft.CodeAnalysis.Testing.ReferenceAssemblies.NetFramework.Net461 +Microsoft.CodeAnalysis.Testing.ReferenceAssemblies.NetFramework.Net462 +Microsoft.CodeAnalysis.Testing.ReferenceAssemblies.NetFramework.Net47 +Microsoft.CodeAnalysis.Testing.ReferenceAssemblies.NetFramework.Net471 +Microsoft.CodeAnalysis.Testing.ReferenceAssemblies.NetFramework.Net472 +Microsoft.CodeAnalysis.Testing.ReferenceAssemblies.NetFramework.Net48 +Microsoft.CodeAnalysis.Testing.ReferenceAssemblies.NetStandard +Microsoft.CodeAnalysis.Testing.ReferenceAssemblies.ReferenceAssemblies(System.Collections.Immutable.ImmutableArray references, System.Collections.Immutable.ImmutableDictionary> languageSpecificReferences) -> void +Microsoft.CodeAnalysis.Testing.ReferenceAssemblies.References.get -> System.Collections.Immutable.ImmutableArray +Microsoft.CodeAnalysis.Testing.ReferenceAssemblies.Runtime Microsoft.CodeAnalysis.Testing.SolutionState Microsoft.CodeAnalysis.Testing.SolutionState.AdditionalFiles.get -> Microsoft.CodeAnalysis.Testing.SourceFileCollection Microsoft.CodeAnalysis.Testing.SolutionState.AdditionalFilesFactories.get -> System.Collections.Generic.List>> @@ -140,7 +185,435 @@ static Microsoft.CodeAnalysis.Testing.AnalyzerVerifier Microsoft.CodeAnalysis.Testing.DiagnosticResult static Microsoft.CodeAnalysis.Testing.DiagnosticResult.CompilerWarning(string identifier) -> Microsoft.CodeAnalysis.Testing.DiagnosticResult static Microsoft.CodeAnalysis.Testing.IVerifierExtensions.EqualOrDiff(this Microsoft.CodeAnalysis.Testing.IVerifier verifier, string expected, string actual, string message = null) -> void -static Microsoft.CodeAnalysis.Testing.MetadataReferences.MicrosoftVisualBasicReference.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetFramework.Net20.MicrosoftVisualBasic.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetFramework.Net20.Mscorlib.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetFramework.Net20.System.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetFramework.Net20.SystemData.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetFramework.Net20.SystemDrawing.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetFramework.Net20.SystemWindowsForms.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetFramework.Net20.SystemXml.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetFramework.Net40.MicrosoftCSharp.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetFramework.Net40.MicrosoftVisualBasic.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetFramework.Net40.Mscorlib.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetFramework.Net40.PresentationCore.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetFramework.Net40.PresentationFramework.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetFramework.Net40.System.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetFramework.Net40.SystemCore.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetFramework.Net40.SystemData.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetFramework.Net40.SystemDataDataSetExtensions.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetFramework.Net40.SystemDeployment.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetFramework.Net40.SystemDrawing.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetFramework.Net40.SystemWindowsForms.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetFramework.Net40.SystemXaml.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetFramework.Net40.SystemXml.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetFramework.Net40.SystemXmlLinq.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetFramework.Net40.WindowsBase.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetFramework.Net46.MicrosoftCSharp.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetFramework.Net46.MicrosoftVisualBasic.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetFramework.Net46.Mscorlib.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetFramework.Net46.PresentationCore.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetFramework.Net46.PresentationFramework.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetFramework.Net46.System.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetFramework.Net46.SystemCore.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetFramework.Net46.SystemData.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetFramework.Net46.SystemDataDataSetExtensions.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetFramework.Net46.SystemDeployment.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetFramework.Net46.SystemDrawing.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetFramework.Net46.SystemNetHttp.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetFramework.Net46.SystemWindowsForms.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetFramework.Net46.SystemXaml.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetFramework.Net46.SystemXml.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetFramework.Net46.SystemXmlLinq.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetFramework.Net46.WindowsBase.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetFramework.Net461.MicrosoftCSharp.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetFramework.Net461.MicrosoftVisualBasic.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetFramework.Net461.Mscorlib.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetFramework.Net461.PresentationCore.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetFramework.Net461.PresentationFramework.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetFramework.Net461.System.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetFramework.Net461.SystemCore.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetFramework.Net461.SystemData.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetFramework.Net461.SystemDataDataSetExtensions.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetFramework.Net461.SystemDeployment.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetFramework.Net461.SystemDrawing.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetFramework.Net461.SystemNetHttp.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetFramework.Net461.SystemWindowsForms.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetFramework.Net461.SystemXaml.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetFramework.Net461.SystemXml.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetFramework.Net461.SystemXmlLinq.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetFramework.Net461.WindowsBase.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetFramework.Net462.MicrosoftCSharp.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetFramework.Net462.MicrosoftVisualBasic.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetFramework.Net462.Mscorlib.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetFramework.Net462.PresentationCore.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetFramework.Net462.PresentationFramework.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetFramework.Net462.System.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetFramework.Net462.SystemCore.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetFramework.Net462.SystemData.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetFramework.Net462.SystemDataDataSetExtensions.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetFramework.Net462.SystemDeployment.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetFramework.Net462.SystemDrawing.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetFramework.Net462.SystemNetHttp.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetFramework.Net462.SystemWindowsForms.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetFramework.Net462.SystemXaml.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetFramework.Net462.SystemXml.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetFramework.Net462.SystemXmlLinq.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetFramework.Net462.WindowsBase.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetFramework.Net47.MicrosoftCSharp.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetFramework.Net47.MicrosoftVisualBasic.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetFramework.Net47.Mscorlib.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetFramework.Net47.PresentationCore.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetFramework.Net47.PresentationFramework.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetFramework.Net47.System.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetFramework.Net47.SystemCore.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetFramework.Net47.SystemData.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetFramework.Net47.SystemDataDataSetExtensions.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetFramework.Net47.SystemDeployment.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetFramework.Net47.SystemDrawing.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetFramework.Net47.SystemNetHttp.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetFramework.Net47.SystemWindowsForms.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetFramework.Net47.SystemXaml.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetFramework.Net47.SystemXml.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetFramework.Net47.SystemXmlLinq.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetFramework.Net47.WindowsBase.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetFramework.Net471.MicrosoftCSharp.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetFramework.Net471.MicrosoftVisualBasic.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetFramework.Net471.Mscorlib.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetFramework.Net471.PresentationCore.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetFramework.Net471.PresentationFramework.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetFramework.Net471.System.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetFramework.Net471.SystemCore.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetFramework.Net471.SystemData.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetFramework.Net471.SystemDataDataSetExtensions.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetFramework.Net471.SystemDeployment.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetFramework.Net471.SystemDrawing.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetFramework.Net471.SystemNetHttp.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetFramework.Net471.SystemWindowsForms.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetFramework.Net471.SystemXaml.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetFramework.Net471.SystemXml.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetFramework.Net471.SystemXmlLinq.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetFramework.Net471.WindowsBase.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetFramework.Net472.MicrosoftCSharp.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetFramework.Net472.MicrosoftVisualBasic.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetFramework.Net472.Mscorlib.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetFramework.Net472.PresentationCore.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetFramework.Net472.PresentationFramework.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetFramework.Net472.System.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetFramework.Net472.SystemCore.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetFramework.Net472.SystemData.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetFramework.Net472.SystemDataDataSetExtensions.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetFramework.Net472.SystemDeployment.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetFramework.Net472.SystemDrawing.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetFramework.Net472.SystemNetHttp.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetFramework.Net472.SystemWindowsForms.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetFramework.Net472.SystemXaml.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetFramework.Net472.SystemXml.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetFramework.Net472.SystemXmlLinq.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetFramework.Net472.WindowsBase.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard10.SystemCollections.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard10.SystemDiagnosticsDebug.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard10.SystemDiagnosticsTools.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard10.SystemGlobalization.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard10.SystemIO.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard10.SystemLinq.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard10.SystemLinqExpressions.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard10.SystemNetPrimitives.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard10.SystemObjectModel.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard10.SystemReflection.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard10.SystemReflectionExtensions.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard10.SystemReflectionPrimitives.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard10.SystemResourcesResourceManager.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard10.SystemRuntime.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard10.SystemRuntimeExtensions.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard10.SystemTextEncoding.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard10.SystemTextEncodingExtensions.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard10.SystemTextRegularExpressions.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard10.SystemThreading.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard10.SystemThreadingTasks.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard10.SystemXmlReaderWriter.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard10.SystemXmlXDocument.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard11.SystemCollections.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard11.SystemCollectionsConcurrent.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard11.SystemDiagnosticsDebug.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard11.SystemDiagnosticsTools.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard11.SystemDiagnosticsTracing.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard11.SystemGlobalization.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard11.SystemIO.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard11.SystemIOCompression.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard11.SystemLinq.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard11.SystemLinqExpressions.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard11.SystemNetHttp.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard11.SystemNetPrimitives.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard11.SystemObjectModel.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard11.SystemReflection.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard11.SystemReflectionExtensions.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard11.SystemReflectionPrimitives.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard11.SystemResourcesResourceManager.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard11.SystemRuntime.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard11.SystemRuntimeExtensions.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard11.SystemRuntimeInteropServices.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard11.SystemRuntimeInteropServicesRuntimeInformation.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard11.SystemRuntimeNumerics.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard11.SystemTextEncoding.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard11.SystemTextEncodingExtensions.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard11.SystemTextRegularExpressions.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard11.SystemThreading.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard11.SystemThreadingTasks.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard11.SystemXmlReaderWriter.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard11.SystemXmlXDocument.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard12.SystemCollections.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard12.SystemCollectionsConcurrent.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard12.SystemDiagnosticsDebug.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard12.SystemDiagnosticsTools.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard12.SystemDiagnosticsTracing.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard12.SystemGlobalization.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard12.SystemIO.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard12.SystemIOCompression.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard12.SystemLinq.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard12.SystemLinqExpressions.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard12.SystemNetHttp.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard12.SystemNetPrimitives.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard12.SystemObjectModel.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard12.SystemReflection.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard12.SystemReflectionExtensions.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard12.SystemReflectionPrimitives.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard12.SystemResourcesResourceManager.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard12.SystemRuntime.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard12.SystemRuntimeExtensions.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard12.SystemRuntimeInteropServices.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard12.SystemRuntimeInteropServicesRuntimeInformation.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard12.SystemRuntimeNumerics.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard12.SystemTextEncoding.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard12.SystemTextEncodingExtensions.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard12.SystemTextRegularExpressions.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard12.SystemThreading.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard12.SystemThreadingTasks.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard12.SystemThreadingTimer.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard12.SystemXmlReaderWriter.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard12.SystemXmlXDocument.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard13.MicrosoftWin32Primitives.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard13.SystemAppContext.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard13.SystemCollections.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard13.SystemCollectionsConcurrent.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard13.SystemConsole.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard13.SystemDiagnosticsDebug.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard13.SystemDiagnosticsTools.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard13.SystemDiagnosticsTracing.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard13.SystemGlobalization.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard13.SystemGlobalizationCalendars.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard13.SystemIO.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard13.SystemIOCompression.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard13.SystemIOCompressionZipFile.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard13.SystemIOFileSystem.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard13.SystemIOFileSystemPrimitives.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard13.SystemLinq.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard13.SystemLinqExpressions.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard13.SystemNetHttp.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard13.SystemNetPrimitives.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard13.SystemNetSockets.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard13.SystemObjectModel.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard13.SystemReflection.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard13.SystemReflectionExtensions.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard13.SystemReflectionPrimitives.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard13.SystemResourcesResourceManager.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard13.SystemRuntime.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard13.SystemRuntimeExtensions.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard13.SystemRuntimeHandles.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard13.SystemRuntimeInteropServices.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard13.SystemRuntimeInteropServicesRuntimeInformation.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard13.SystemRuntimeNumerics.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard13.SystemSecurityCryptographyAlgorithms.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard13.SystemSecurityCryptographyEncoding.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard13.SystemSecurityCryptographyPrimitives.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard13.SystemSecurityCryptographyX509Certificates.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard13.SystemTextEncoding.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard13.SystemTextEncodingExtensions.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard13.SystemTextRegularExpressions.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard13.SystemThreading.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard13.SystemThreadingTasks.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard13.SystemThreadingTimer.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard13.SystemXmlReaderWriter.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard13.SystemXmlXDocument.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard14.MicrosoftWin32Primitives.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard14.SystemAppContext.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard14.SystemCollections.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard14.SystemCollectionsConcurrent.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard14.SystemConsole.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard14.SystemDiagnosticsDebug.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard14.SystemDiagnosticsTools.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard14.SystemDiagnosticsTracing.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard14.SystemGlobalization.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard14.SystemGlobalizationCalendars.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard14.SystemIO.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard14.SystemIOCompression.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard14.SystemIOCompressionZipFile.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard14.SystemIOFileSystem.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard14.SystemIOFileSystemPrimitives.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard14.SystemLinq.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard14.SystemLinqExpressions.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard14.SystemNetHttp.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard14.SystemNetPrimitives.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard14.SystemNetSockets.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard14.SystemObjectModel.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard14.SystemReflection.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard14.SystemReflectionExtensions.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard14.SystemReflectionPrimitives.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard14.SystemResourcesResourceManager.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard14.SystemRuntime.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard14.SystemRuntimeExtensions.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard14.SystemRuntimeHandles.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard14.SystemRuntimeInteropServices.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard14.SystemRuntimeInteropServicesRuntimeInformation.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard14.SystemRuntimeNumerics.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard14.SystemSecurityCryptographyAlgorithms.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard14.SystemSecurityCryptographyEncoding.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard14.SystemSecurityCryptographyPrimitives.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard14.SystemSecurityCryptographyX509Certificates.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard14.SystemTextEncoding.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard14.SystemTextEncodingExtensions.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard14.SystemTextRegularExpressions.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard14.SystemThreading.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard14.SystemThreadingTasks.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard14.SystemThreadingTimer.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard14.SystemXmlReaderWriter.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard14.SystemXmlXDocument.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard15.MicrosoftWin32Primitives.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard15.SystemAppContext.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard15.SystemCollections.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard15.SystemCollectionsConcurrent.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard15.SystemConsole.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard15.SystemDiagnosticsDebug.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard15.SystemDiagnosticsTools.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard15.SystemDiagnosticsTracing.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard15.SystemGlobalization.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard15.SystemGlobalizationCalendars.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard15.SystemIO.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard15.SystemIOCompression.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard15.SystemIOCompressionZipFile.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard15.SystemIOFileSystem.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard15.SystemIOFileSystemPrimitives.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard15.SystemLinq.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard15.SystemLinqExpressions.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard15.SystemNetHttp.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard15.SystemNetPrimitives.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard15.SystemNetSockets.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard15.SystemObjectModel.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard15.SystemReflection.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard15.SystemReflectionExtensions.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard15.SystemReflectionPrimitives.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard15.SystemResourcesResourceManager.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard15.SystemRuntime.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard15.SystemRuntimeExtensions.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard15.SystemRuntimeHandles.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard15.SystemRuntimeInteropServices.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard15.SystemRuntimeInteropServicesRuntimeInformation.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard15.SystemRuntimeNumerics.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard15.SystemSecurityCryptographyAlgorithms.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard15.SystemSecurityCryptographyEncoding.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard15.SystemSecurityCryptographyPrimitives.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard15.SystemSecurityCryptographyX509Certificates.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard15.SystemTextEncoding.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard15.SystemTextEncodingExtensions.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard15.SystemTextRegularExpressions.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard15.SystemThreading.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard15.SystemThreadingTasks.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard15.SystemThreadingTimer.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard15.SystemXmlReaderWriter.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard15.SystemXmlXDocument.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard16.MicrosoftWin32Primitives.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard16.SystemAppContext.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard16.SystemCollections.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard16.SystemCollectionsConcurrent.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard16.SystemConsole.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard16.SystemDiagnosticsDebug.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard16.SystemDiagnosticsTools.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard16.SystemDiagnosticsTracing.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard16.SystemGlobalization.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard16.SystemGlobalizationCalendars.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard16.SystemIO.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard16.SystemIOCompression.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard16.SystemIOCompressionZipFile.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard16.SystemIOFileSystem.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard16.SystemIOFileSystemPrimitives.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard16.SystemLinq.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard16.SystemLinqExpressions.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard16.SystemNetHttp.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard16.SystemNetPrimitives.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard16.SystemNetSockets.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard16.SystemObjectModel.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard16.SystemReflection.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard16.SystemReflectionExtensions.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard16.SystemReflectionPrimitives.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard16.SystemResourcesResourceManager.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard16.SystemRuntime.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard16.SystemRuntimeExtensions.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard16.SystemRuntimeHandles.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard16.SystemRuntimeInteropServices.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard16.SystemRuntimeInteropServicesRuntimeInformation.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard16.SystemRuntimeNumerics.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard16.SystemSecurityCryptographyAlgorithms.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard16.SystemSecurityCryptographyEncoding.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard16.SystemSecurityCryptographyPrimitives.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard16.SystemSecurityCryptographyX509Certificates.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard16.SystemTextEncoding.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard16.SystemTextEncodingExtensions.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard16.SystemTextRegularExpressions.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard16.SystemThreading.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard16.SystemThreadingTasks.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard16.SystemThreadingTimer.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard16.SystemXmlReaderWriter.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard16.SystemXmlXDocument.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard20.Netstandard.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.Runtime.MicrosoftCodeAnalysis.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.Runtime.MicrosoftVisualBasic.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.MetadataReferences.Runtime.SystemCollectionsImmutable.get -> Microsoft.CodeAnalysis.MetadataReference +static Microsoft.CodeAnalysis.Testing.ReferenceAssemblies.Default.get -> Microsoft.CodeAnalysis.Testing.ReferenceAssemblies +static Microsoft.CodeAnalysis.Testing.ReferenceAssemblies.NetCore.NetCore10.get -> Microsoft.CodeAnalysis.Testing.ReferenceAssemblies +static Microsoft.CodeAnalysis.Testing.ReferenceAssemblies.NetCore.NetCore20.get -> Microsoft.CodeAnalysis.Testing.ReferenceAssemblies +static Microsoft.CodeAnalysis.Testing.ReferenceAssemblies.NetFramework.Net20.Default.get -> Microsoft.CodeAnalysis.Testing.ReferenceAssemblies +static Microsoft.CodeAnalysis.Testing.ReferenceAssemblies.NetFramework.Net20.WindowsForms.get -> Microsoft.CodeAnalysis.Testing.ReferenceAssemblies +static Microsoft.CodeAnalysis.Testing.ReferenceAssemblies.NetFramework.Net40.Default.get -> Microsoft.CodeAnalysis.Testing.ReferenceAssemblies +static Microsoft.CodeAnalysis.Testing.ReferenceAssemblies.NetFramework.Net40.WindowsForms.get -> Microsoft.CodeAnalysis.Testing.ReferenceAssemblies +static Microsoft.CodeAnalysis.Testing.ReferenceAssemblies.NetFramework.Net40.Wpf.get -> Microsoft.CodeAnalysis.Testing.ReferenceAssemblies +static Microsoft.CodeAnalysis.Testing.ReferenceAssemblies.NetFramework.Net45.Default.get -> Microsoft.CodeAnalysis.Testing.ReferenceAssemblies +static Microsoft.CodeAnalysis.Testing.ReferenceAssemblies.NetFramework.Net45.WindowsForms.get -> Microsoft.CodeAnalysis.Testing.ReferenceAssemblies +static Microsoft.CodeAnalysis.Testing.ReferenceAssemblies.NetFramework.Net45.Wpf.get -> Microsoft.CodeAnalysis.Testing.ReferenceAssemblies +static Microsoft.CodeAnalysis.Testing.ReferenceAssemblies.NetFramework.Net451.Default.get -> Microsoft.CodeAnalysis.Testing.ReferenceAssemblies +static Microsoft.CodeAnalysis.Testing.ReferenceAssemblies.NetFramework.Net451.WindowsForms.get -> Microsoft.CodeAnalysis.Testing.ReferenceAssemblies +static Microsoft.CodeAnalysis.Testing.ReferenceAssemblies.NetFramework.Net451.Wpf.get -> Microsoft.CodeAnalysis.Testing.ReferenceAssemblies +static Microsoft.CodeAnalysis.Testing.ReferenceAssemblies.NetFramework.Net452.Default.get -> Microsoft.CodeAnalysis.Testing.ReferenceAssemblies +static Microsoft.CodeAnalysis.Testing.ReferenceAssemblies.NetFramework.Net452.WindowsForms.get -> Microsoft.CodeAnalysis.Testing.ReferenceAssemblies +static Microsoft.CodeAnalysis.Testing.ReferenceAssemblies.NetFramework.Net452.Wpf.get -> Microsoft.CodeAnalysis.Testing.ReferenceAssemblies +static Microsoft.CodeAnalysis.Testing.ReferenceAssemblies.NetFramework.Net46.Default.get -> Microsoft.CodeAnalysis.Testing.ReferenceAssemblies +static Microsoft.CodeAnalysis.Testing.ReferenceAssemblies.NetFramework.Net46.WindowsForms.get -> Microsoft.CodeAnalysis.Testing.ReferenceAssemblies +static Microsoft.CodeAnalysis.Testing.ReferenceAssemblies.NetFramework.Net46.Wpf.get -> Microsoft.CodeAnalysis.Testing.ReferenceAssemblies +static Microsoft.CodeAnalysis.Testing.ReferenceAssemblies.NetFramework.Net461.Default.get -> Microsoft.CodeAnalysis.Testing.ReferenceAssemblies +static Microsoft.CodeAnalysis.Testing.ReferenceAssemblies.NetFramework.Net461.WindowsForms.get -> Microsoft.CodeAnalysis.Testing.ReferenceAssemblies +static Microsoft.CodeAnalysis.Testing.ReferenceAssemblies.NetFramework.Net461.Wpf.get -> Microsoft.CodeAnalysis.Testing.ReferenceAssemblies +static Microsoft.CodeAnalysis.Testing.ReferenceAssemblies.NetFramework.Net462.Default.get -> Microsoft.CodeAnalysis.Testing.ReferenceAssemblies +static Microsoft.CodeAnalysis.Testing.ReferenceAssemblies.NetFramework.Net462.WindowsForms.get -> Microsoft.CodeAnalysis.Testing.ReferenceAssemblies +static Microsoft.CodeAnalysis.Testing.ReferenceAssemblies.NetFramework.Net462.Wpf.get -> Microsoft.CodeAnalysis.Testing.ReferenceAssemblies +static Microsoft.CodeAnalysis.Testing.ReferenceAssemblies.NetFramework.Net47.Default.get -> Microsoft.CodeAnalysis.Testing.ReferenceAssemblies +static Microsoft.CodeAnalysis.Testing.ReferenceAssemblies.NetFramework.Net47.WindowsForms.get -> Microsoft.CodeAnalysis.Testing.ReferenceAssemblies +static Microsoft.CodeAnalysis.Testing.ReferenceAssemblies.NetFramework.Net47.Wpf.get -> Microsoft.CodeAnalysis.Testing.ReferenceAssemblies +static Microsoft.CodeAnalysis.Testing.ReferenceAssemblies.NetFramework.Net471.Default.get -> Microsoft.CodeAnalysis.Testing.ReferenceAssemblies +static Microsoft.CodeAnalysis.Testing.ReferenceAssemblies.NetFramework.Net471.WindowsForms.get -> Microsoft.CodeAnalysis.Testing.ReferenceAssemblies +static Microsoft.CodeAnalysis.Testing.ReferenceAssemblies.NetFramework.Net471.Wpf.get -> Microsoft.CodeAnalysis.Testing.ReferenceAssemblies +static Microsoft.CodeAnalysis.Testing.ReferenceAssemblies.NetFramework.Net472.Default.get -> Microsoft.CodeAnalysis.Testing.ReferenceAssemblies +static Microsoft.CodeAnalysis.Testing.ReferenceAssemblies.NetFramework.Net472.WindowsForms.get -> Microsoft.CodeAnalysis.Testing.ReferenceAssemblies +static Microsoft.CodeAnalysis.Testing.ReferenceAssemblies.NetFramework.Net472.Wpf.get -> Microsoft.CodeAnalysis.Testing.ReferenceAssemblies +static Microsoft.CodeAnalysis.Testing.ReferenceAssemblies.NetFramework.Net48.Default.get -> Microsoft.CodeAnalysis.Testing.ReferenceAssemblies +static Microsoft.CodeAnalysis.Testing.ReferenceAssemblies.NetFramework.Net48.WindowsForms.get -> Microsoft.CodeAnalysis.Testing.ReferenceAssemblies +static Microsoft.CodeAnalysis.Testing.ReferenceAssemblies.NetFramework.Net48.Wpf.get -> Microsoft.CodeAnalysis.Testing.ReferenceAssemblies +static Microsoft.CodeAnalysis.Testing.ReferenceAssemblies.NetStandard.NetStandard10.get -> Microsoft.CodeAnalysis.Testing.ReferenceAssemblies +static Microsoft.CodeAnalysis.Testing.ReferenceAssemblies.NetStandard.NetStandard11.get -> Microsoft.CodeAnalysis.Testing.ReferenceAssemblies +static Microsoft.CodeAnalysis.Testing.ReferenceAssemblies.NetStandard.NetStandard12.get -> Microsoft.CodeAnalysis.Testing.ReferenceAssemblies +static Microsoft.CodeAnalysis.Testing.ReferenceAssemblies.NetStandard.NetStandard13.get -> Microsoft.CodeAnalysis.Testing.ReferenceAssemblies +static Microsoft.CodeAnalysis.Testing.ReferenceAssemblies.NetStandard.NetStandard14.get -> Microsoft.CodeAnalysis.Testing.ReferenceAssemblies +static Microsoft.CodeAnalysis.Testing.ReferenceAssemblies.NetStandard.NetStandard15.get -> Microsoft.CodeAnalysis.Testing.ReferenceAssemblies +static Microsoft.CodeAnalysis.Testing.ReferenceAssemblies.NetStandard.NetStandard16.get -> Microsoft.CodeAnalysis.Testing.ReferenceAssemblies +static Microsoft.CodeAnalysis.Testing.ReferenceAssemblies.NetStandard.NetStandard2.get -> Microsoft.CodeAnalysis.Testing.ReferenceAssemblies +static Microsoft.CodeAnalysis.Testing.ReferenceAssemblies.Runtime.Current.get -> Microsoft.CodeAnalysis.Testing.ReferenceAssemblies static Microsoft.CodeAnalysis.Testing.TestFileMarkupParser.CreateTestFile(string code, System.Collections.Generic.IDictionary> spans, int? cursor) -> string static Microsoft.CodeAnalysis.Testing.TestFileMarkupParser.CreateTestFile(string code, System.Collections.Generic.IList spans, int? cursor) -> string static Microsoft.CodeAnalysis.Testing.TestFileMarkupParser.CreateTestFile(string code, int cursor) -> string @@ -157,11 +630,6 @@ static Microsoft.CodeAnalysis.Testing.TestFileMarkupParser.GetSpan(string input, static Microsoft.CodeAnalysis.Testing.TestFileMarkupParser.GetSpans(string input, out string output, out System.Collections.Generic.IDictionary> spans) -> void static Microsoft.CodeAnalysis.Testing.TestFileMarkupParser.GetSpans(string input, out string output, out System.Collections.Generic.IList spans) -> void static readonly Microsoft.CodeAnalysis.Testing.DiagnosticResult.EmptyDiagnosticResults -> Microsoft.CodeAnalysis.Testing.DiagnosticResult[] -static readonly Microsoft.CodeAnalysis.Testing.MetadataReferences.CodeAnalysisReference -> Microsoft.CodeAnalysis.MetadataReference -static readonly Microsoft.CodeAnalysis.Testing.MetadataReferences.CorlibReference -> Microsoft.CodeAnalysis.MetadataReference -static readonly Microsoft.CodeAnalysis.Testing.MetadataReferences.SystemCollectionsImmutableReference -> Microsoft.CodeAnalysis.MetadataReference -static readonly Microsoft.CodeAnalysis.Testing.MetadataReferences.SystemCoreReference -> Microsoft.CodeAnalysis.MetadataReference -static readonly Microsoft.CodeAnalysis.Testing.MetadataReferences.SystemReference -> Microsoft.CodeAnalysis.MetadataReference virtual Microsoft.CodeAnalysis.Testing.AnalyzerTest.ApplyCompilationOptions(Microsoft.CodeAnalysis.Project project) -> Microsoft.CodeAnalysis.Project virtual Microsoft.CodeAnalysis.Testing.AnalyzerTest.CreateProjectImpl((string filename, Microsoft.CodeAnalysis.Text.SourceText content)[] sources, (string filename, Microsoft.CodeAnalysis.Text.SourceText content)[] additionalFiles, Microsoft.CodeAnalysis.Testing.ProjectState[] additionalProjects, Microsoft.CodeAnalysis.MetadataReference[] additionalMetadataReferences, string language) -> Microsoft.CodeAnalysis.Project virtual Microsoft.CodeAnalysis.Testing.AnalyzerTest.CreateSolution(Microsoft.CodeAnalysis.ProjectId projectId, string language) -> Microsoft.CodeAnalysis.Solution diff --git a/src/Microsoft.CodeAnalysis.Testing/Microsoft.CodeAnalysis.Analyzer.Testing/ReferenceAssemblies.cs b/src/Microsoft.CodeAnalysis.Testing/Microsoft.CodeAnalysis.Analyzer.Testing/ReferenceAssemblies.cs new file mode 100644 index 0000000000..7e731e6410 --- /dev/null +++ b/src/Microsoft.CodeAnalysis.Testing/Microsoft.CodeAnalysis.Analyzer.Testing/ReferenceAssemblies.cs @@ -0,0 +1,989 @@ +// Copyright (c) Microsoft. All Rights Reserved. Licensed under the Apache License, Version 2.0. See License.txt in the project root for license information. + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.IO; +using System.Linq; +using System.Reflection; + +namespace Microsoft.CodeAnalysis.Testing +{ + public sealed class ReferenceAssemblies + { + public ReferenceAssemblies( + ImmutableArray references, + ImmutableDictionary> languageSpecificReferences) + { + References = references; + LanguageSpecificReferences = languageSpecificReferences; + } + + public static ReferenceAssemblies Default + { + get + { +#if NETSTANDARD1_5 + return NetStandard.NetStandard15; +#elif NETSTANDARD2_0 + return NetStandard.NetStandard2; +#else + return NetFramework.Net46.Default; +#endif + } + } + + public ImmutableArray References { get; } + + public ImmutableDictionary> LanguageSpecificReferences { get; } + +#if false + public string ReferenceAssembliesPath { get; } + + public string FacadeAssembliesPath { get; } +#endif + + internal IEnumerable GetMetadataReferences(string language) + { + if (LanguageSpecificReferences.TryGetValue(language, out var perLanguageReferences)) + { + return References.Concat(perLanguageReferences); + } + + return References; + } + + public static class NetFramework + { + public static class Net20 + { + public static ReferenceAssemblies Default + { + get + { + return new ReferenceAssemblies( + ImmutableArray.Create( + MetadataReferences.NetFramework.Net20.Mscorlib, + MetadataReferences.NetFramework.Net20.System, + MetadataReferences.NetFramework.Net20.SystemData, + MetadataReferences.NetFramework.Net20.SystemXml), + ImmutableDictionary.Create>() + .Add(LanguageNames.VisualBasic, ImmutableArray.Create(MetadataReferences.NetFramework.Net20.MicrosoftVisualBasic))); + } + } + + public static ReferenceAssemblies WindowsForms + { + get + { + return new ReferenceAssemblies( + ImmutableArray.Create( + MetadataReferences.NetFramework.Net20.Mscorlib, + MetadataReferences.NetFramework.Net20.System, + MetadataReferences.NetFramework.Net20.SystemData, + MetadataReferences.NetFramework.Net20.SystemDrawing, + MetadataReferences.NetFramework.Net20.SystemWindowsForms, + MetadataReferences.NetFramework.Net20.SystemXml), + ImmutableDictionary.Create>() + .Add(LanguageNames.VisualBasic, ImmutableArray.Create(MetadataReferences.NetFramework.Net20.MicrosoftVisualBasic))); + } + } + } + + public static class Net40 + { + public static ReferenceAssemblies Default + { + get + { + return new ReferenceAssemblies( + ImmutableArray.Create( + MetadataReferences.NetFramework.Net40.Mscorlib, + MetadataReferences.NetFramework.Net40.System, + MetadataReferences.NetFramework.Net40.SystemCore, + MetadataReferences.NetFramework.Net40.SystemData, + MetadataReferences.NetFramework.Net40.SystemDataDataSetExtensions, + MetadataReferences.NetFramework.Net40.SystemXml, + MetadataReferences.NetFramework.Net40.SystemXmlLinq), + ImmutableDictionary.Create>() + .Add(LanguageNames.CSharp, ImmutableArray.Create(MetadataReferences.NetFramework.Net40.MicrosoftCSharp)) + .Add(LanguageNames.VisualBasic, ImmutableArray.Create(MetadataReferences.NetFramework.Net40.MicrosoftVisualBasic))); + } + } + + public static ReferenceAssemblies WindowsForms + { + get + { + return new ReferenceAssemblies( + ImmutableArray.Create( + MetadataReferences.NetFramework.Net40.Mscorlib, + MetadataReferences.NetFramework.Net40.System, + MetadataReferences.NetFramework.Net40.SystemCore, + MetadataReferences.NetFramework.Net40.SystemData, + MetadataReferences.NetFramework.Net40.SystemDataDataSetExtensions, + MetadataReferences.NetFramework.Net40.SystemDeployment, + MetadataReferences.NetFramework.Net40.SystemDrawing, + MetadataReferences.NetFramework.Net40.SystemWindowsForms, + MetadataReferences.NetFramework.Net40.SystemXml, + MetadataReferences.NetFramework.Net40.SystemXmlLinq), + ImmutableDictionary.Create>() + .Add(LanguageNames.CSharp, ImmutableArray.Create(MetadataReferences.NetFramework.Net40.MicrosoftCSharp)) + .Add(LanguageNames.VisualBasic, ImmutableArray.Create(MetadataReferences.NetFramework.Net40.MicrosoftVisualBasic))); + } + } + + public static ReferenceAssemblies Wpf + { + get + { + return new ReferenceAssemblies( + ImmutableArray.Create( + MetadataReferences.NetFramework.Net40.Mscorlib, + MetadataReferences.NetFramework.Net40.PresentationCore, + MetadataReferences.NetFramework.Net40.PresentationFramework, + MetadataReferences.NetFramework.Net40.System, + MetadataReferences.NetFramework.Net40.SystemCore, + MetadataReferences.NetFramework.Net40.SystemData, + MetadataReferences.NetFramework.Net40.SystemDataDataSetExtensions, + MetadataReferences.NetFramework.Net40.SystemXaml, + MetadataReferences.NetFramework.Net40.SystemXml, + MetadataReferences.NetFramework.Net40.SystemXmlLinq, + MetadataReferences.NetFramework.Net40.WindowsBase), + ImmutableDictionary.Create>() + .Add(LanguageNames.CSharp, ImmutableArray.Create(MetadataReferences.NetFramework.Net40.MicrosoftCSharp)) + .Add(LanguageNames.VisualBasic, ImmutableArray.Create(MetadataReferences.NetFramework.Net40.MicrosoftVisualBasic))); + } + } + } + + public static class Net45 + { + public static ReferenceAssemblies Default => throw new NotImplementedException(); + + public static ReferenceAssemblies WindowsForms => throw new NotImplementedException(); + + public static ReferenceAssemblies Wpf => throw new NotImplementedException(); + } + + public static class Net451 + { + public static ReferenceAssemblies Default => throw new NotImplementedException(); + + public static ReferenceAssemblies WindowsForms => throw new NotImplementedException(); + + public static ReferenceAssemblies Wpf => throw new NotImplementedException(); + } + + public static class Net452 + { + public static ReferenceAssemblies Default => throw new NotImplementedException(); + + public static ReferenceAssemblies WindowsForms => throw new NotImplementedException(); + + public static ReferenceAssemblies Wpf => throw new NotImplementedException(); + } + + public static class Net46 + { + public static ReferenceAssemblies Default + { + get + { + return new ReferenceAssemblies( + ImmutableArray.Create( + MetadataReferences.NetFramework.Net46.Mscorlib, + MetadataReferences.NetFramework.Net46.System, + MetadataReferences.NetFramework.Net46.SystemCore, + MetadataReferences.NetFramework.Net46.SystemData, + MetadataReferences.NetFramework.Net46.SystemDataDataSetExtensions, + MetadataReferences.NetFramework.Net46.SystemNetHttp, + MetadataReferences.NetFramework.Net46.SystemXml, + MetadataReferences.NetFramework.Net46.SystemXmlLinq), + ImmutableDictionary.Create>() + .Add(LanguageNames.CSharp, ImmutableArray.Create(MetadataReferences.NetFramework.Net46.MicrosoftCSharp)) + .Add(LanguageNames.VisualBasic, ImmutableArray.Create(MetadataReferences.NetFramework.Net46.MicrosoftVisualBasic))); + } + } + + public static ReferenceAssemblies WindowsForms + { + get + { + return new ReferenceAssemblies( + ImmutableArray.Create( + MetadataReferences.NetFramework.Net46.Mscorlib, + MetadataReferences.NetFramework.Net46.System, + MetadataReferences.NetFramework.Net46.SystemCore, + MetadataReferences.NetFramework.Net46.SystemData, + MetadataReferences.NetFramework.Net46.SystemDataDataSetExtensions, + MetadataReferences.NetFramework.Net46.SystemDeployment, + MetadataReferences.NetFramework.Net46.SystemDrawing, + MetadataReferences.NetFramework.Net46.SystemNetHttp, + MetadataReferences.NetFramework.Net46.SystemWindowsForms, + MetadataReferences.NetFramework.Net46.SystemXml, + MetadataReferences.NetFramework.Net46.SystemXmlLinq), + ImmutableDictionary.Create>() + .Add(LanguageNames.CSharp, ImmutableArray.Create(MetadataReferences.NetFramework.Net46.MicrosoftCSharp)) + .Add(LanguageNames.VisualBasic, ImmutableArray.Create(MetadataReferences.NetFramework.Net46.MicrosoftVisualBasic))); + } + } + + public static ReferenceAssemblies Wpf + { + get + { + return new ReferenceAssemblies( + ImmutableArray.Create( + MetadataReferences.NetFramework.Net46.Mscorlib, + MetadataReferences.NetFramework.Net46.PresentationCore, + MetadataReferences.NetFramework.Net46.PresentationFramework, + MetadataReferences.NetFramework.Net46.System, + MetadataReferences.NetFramework.Net46.SystemCore, + MetadataReferences.NetFramework.Net46.SystemData, + MetadataReferences.NetFramework.Net46.SystemDataDataSetExtensions, + MetadataReferences.NetFramework.Net46.SystemNetHttp, + MetadataReferences.NetFramework.Net46.SystemXaml, + MetadataReferences.NetFramework.Net46.SystemXml, + MetadataReferences.NetFramework.Net46.SystemXmlLinq, + MetadataReferences.NetFramework.Net46.WindowsBase), + ImmutableDictionary.Create>() + .Add(LanguageNames.CSharp, ImmutableArray.Create(MetadataReferences.NetFramework.Net46.MicrosoftCSharp)) + .Add(LanguageNames.VisualBasic, ImmutableArray.Create(MetadataReferences.NetFramework.Net46.MicrosoftVisualBasic))); + } + } + } + + public static class Net461 + { + public static ReferenceAssemblies Default + { + get + { + return new ReferenceAssemblies( + ImmutableArray.Create( + MetadataReferences.NetFramework.Net461.Mscorlib, + MetadataReferences.NetFramework.Net461.System, + MetadataReferences.NetFramework.Net461.SystemCore, + MetadataReferences.NetFramework.Net461.SystemData, + MetadataReferences.NetFramework.Net461.SystemDataDataSetExtensions, + MetadataReferences.NetFramework.Net461.SystemNetHttp, + MetadataReferences.NetFramework.Net461.SystemXml, + MetadataReferences.NetFramework.Net461.SystemXmlLinq), + ImmutableDictionary.Create>() + .Add(LanguageNames.CSharp, ImmutableArray.Create(MetadataReferences.NetFramework.Net461.MicrosoftCSharp)) + .Add(LanguageNames.VisualBasic, ImmutableArray.Create(MetadataReferences.NetFramework.Net461.MicrosoftVisualBasic))); + } + } + + public static ReferenceAssemblies WindowsForms + { + get + { + return new ReferenceAssemblies( + ImmutableArray.Create( + MetadataReferences.NetFramework.Net461.Mscorlib, + MetadataReferences.NetFramework.Net461.System, + MetadataReferences.NetFramework.Net461.SystemCore, + MetadataReferences.NetFramework.Net461.SystemData, + MetadataReferences.NetFramework.Net461.SystemDataDataSetExtensions, + MetadataReferences.NetFramework.Net461.SystemDeployment, + MetadataReferences.NetFramework.Net461.SystemDrawing, + MetadataReferences.NetFramework.Net461.SystemNetHttp, + MetadataReferences.NetFramework.Net461.SystemWindowsForms, + MetadataReferences.NetFramework.Net461.SystemXml, + MetadataReferences.NetFramework.Net461.SystemXmlLinq), + ImmutableDictionary.Create>() + .Add(LanguageNames.CSharp, ImmutableArray.Create(MetadataReferences.NetFramework.Net461.MicrosoftCSharp)) + .Add(LanguageNames.VisualBasic, ImmutableArray.Create(MetadataReferences.NetFramework.Net461.MicrosoftVisualBasic))); + } + } + + public static ReferenceAssemblies Wpf + { + get + { + return new ReferenceAssemblies( + ImmutableArray.Create( + MetadataReferences.NetFramework.Net461.Mscorlib, + MetadataReferences.NetFramework.Net461.PresentationCore, + MetadataReferences.NetFramework.Net461.PresentationFramework, + MetadataReferences.NetFramework.Net461.System, + MetadataReferences.NetFramework.Net461.SystemCore, + MetadataReferences.NetFramework.Net461.SystemData, + MetadataReferences.NetFramework.Net461.SystemDataDataSetExtensions, + MetadataReferences.NetFramework.Net461.SystemNetHttp, + MetadataReferences.NetFramework.Net461.SystemXaml, + MetadataReferences.NetFramework.Net461.SystemXml, + MetadataReferences.NetFramework.Net461.SystemXmlLinq, + MetadataReferences.NetFramework.Net461.WindowsBase), + ImmutableDictionary.Create>() + .Add(LanguageNames.CSharp, ImmutableArray.Create(MetadataReferences.NetFramework.Net461.MicrosoftCSharp)) + .Add(LanguageNames.VisualBasic, ImmutableArray.Create(MetadataReferences.NetFramework.Net461.MicrosoftVisualBasic))); + } + } + } + + public static class Net462 + { + public static ReferenceAssemblies Default + { + get + { + return new ReferenceAssemblies( + ImmutableArray.Create( + MetadataReferences.NetFramework.Net462.Mscorlib, + MetadataReferences.NetFramework.Net462.System, + MetadataReferences.NetFramework.Net462.SystemCore, + MetadataReferences.NetFramework.Net462.SystemData, + MetadataReferences.NetFramework.Net462.SystemDataDataSetExtensions, + MetadataReferences.NetFramework.Net462.SystemNetHttp, + MetadataReferences.NetFramework.Net462.SystemXml, + MetadataReferences.NetFramework.Net462.SystemXmlLinq), + ImmutableDictionary.Create>() + .Add(LanguageNames.CSharp, ImmutableArray.Create(MetadataReferences.NetFramework.Net462.MicrosoftCSharp)) + .Add(LanguageNames.VisualBasic, ImmutableArray.Create(MetadataReferences.NetFramework.Net462.MicrosoftVisualBasic))); + } + } + + public static ReferenceAssemblies WindowsForms + { + get + { + return new ReferenceAssemblies( + ImmutableArray.Create( + MetadataReferences.NetFramework.Net462.Mscorlib, + MetadataReferences.NetFramework.Net462.System, + MetadataReferences.NetFramework.Net462.SystemCore, + MetadataReferences.NetFramework.Net462.SystemData, + MetadataReferences.NetFramework.Net462.SystemDataDataSetExtensions, + MetadataReferences.NetFramework.Net462.SystemDeployment, + MetadataReferences.NetFramework.Net462.SystemDrawing, + MetadataReferences.NetFramework.Net462.SystemNetHttp, + MetadataReferences.NetFramework.Net462.SystemWindowsForms, + MetadataReferences.NetFramework.Net462.SystemXml, + MetadataReferences.NetFramework.Net462.SystemXmlLinq), + ImmutableDictionary.Create>() + .Add(LanguageNames.CSharp, ImmutableArray.Create(MetadataReferences.NetFramework.Net462.MicrosoftCSharp)) + .Add(LanguageNames.VisualBasic, ImmutableArray.Create(MetadataReferences.NetFramework.Net462.MicrosoftVisualBasic))); + } + } + + public static ReferenceAssemblies Wpf + { + get + { + return new ReferenceAssemblies( + ImmutableArray.Create( + MetadataReferences.NetFramework.Net462.Mscorlib, + MetadataReferences.NetFramework.Net462.PresentationCore, + MetadataReferences.NetFramework.Net462.PresentationFramework, + MetadataReferences.NetFramework.Net462.System, + MetadataReferences.NetFramework.Net462.SystemCore, + MetadataReferences.NetFramework.Net462.SystemData, + MetadataReferences.NetFramework.Net462.SystemDataDataSetExtensions, + MetadataReferences.NetFramework.Net462.SystemNetHttp, + MetadataReferences.NetFramework.Net462.SystemXaml, + MetadataReferences.NetFramework.Net462.SystemXml, + MetadataReferences.NetFramework.Net462.SystemXmlLinq, + MetadataReferences.NetFramework.Net462.WindowsBase), + ImmutableDictionary.Create>() + .Add(LanguageNames.CSharp, ImmutableArray.Create(MetadataReferences.NetFramework.Net462.MicrosoftCSharp)) + .Add(LanguageNames.VisualBasic, ImmutableArray.Create(MetadataReferences.NetFramework.Net462.MicrosoftVisualBasic))); + } + } + } + + public static class Net47 + { + public static ReferenceAssemblies Default + { + get + { + return new ReferenceAssemblies( + ImmutableArray.Create( + MetadataReferences.NetFramework.Net47.Mscorlib, + MetadataReferences.NetFramework.Net47.System, + MetadataReferences.NetFramework.Net47.SystemCore, + MetadataReferences.NetFramework.Net47.SystemData, + MetadataReferences.NetFramework.Net47.SystemDataDataSetExtensions, + MetadataReferences.NetFramework.Net47.SystemNetHttp, + MetadataReferences.NetFramework.Net47.SystemXml, + MetadataReferences.NetFramework.Net47.SystemXmlLinq), + ImmutableDictionary.Create>() + .Add(LanguageNames.CSharp, ImmutableArray.Create(MetadataReferences.NetFramework.Net47.MicrosoftCSharp)) + .Add(LanguageNames.VisualBasic, ImmutableArray.Create(MetadataReferences.NetFramework.Net47.MicrosoftVisualBasic))); + } + } + + public static ReferenceAssemblies WindowsForms + { + get + { + return new ReferenceAssemblies( + ImmutableArray.Create( + MetadataReferences.NetFramework.Net47.Mscorlib, + MetadataReferences.NetFramework.Net47.System, + MetadataReferences.NetFramework.Net47.SystemCore, + MetadataReferences.NetFramework.Net47.SystemData, + MetadataReferences.NetFramework.Net47.SystemDataDataSetExtensions, + MetadataReferences.NetFramework.Net47.SystemDeployment, + MetadataReferences.NetFramework.Net47.SystemDrawing, + MetadataReferences.NetFramework.Net47.SystemNetHttp, + MetadataReferences.NetFramework.Net47.SystemWindowsForms, + MetadataReferences.NetFramework.Net47.SystemXml, + MetadataReferences.NetFramework.Net47.SystemXmlLinq), + ImmutableDictionary.Create>() + .Add(LanguageNames.CSharp, ImmutableArray.Create(MetadataReferences.NetFramework.Net47.MicrosoftCSharp)) + .Add(LanguageNames.VisualBasic, ImmutableArray.Create(MetadataReferences.NetFramework.Net47.MicrosoftVisualBasic))); + } + } + + public static ReferenceAssemblies Wpf + { + get + { + return new ReferenceAssemblies( + ImmutableArray.Create( + MetadataReferences.NetFramework.Net47.Mscorlib, + MetadataReferences.NetFramework.Net47.PresentationCore, + MetadataReferences.NetFramework.Net47.PresentationFramework, + MetadataReferences.NetFramework.Net47.System, + MetadataReferences.NetFramework.Net47.SystemCore, + MetadataReferences.NetFramework.Net47.SystemData, + MetadataReferences.NetFramework.Net47.SystemDataDataSetExtensions, + MetadataReferences.NetFramework.Net47.SystemNetHttp, + MetadataReferences.NetFramework.Net47.SystemXaml, + MetadataReferences.NetFramework.Net47.SystemXml, + MetadataReferences.NetFramework.Net47.SystemXmlLinq, + MetadataReferences.NetFramework.Net47.WindowsBase), + ImmutableDictionary.Create>() + .Add(LanguageNames.CSharp, ImmutableArray.Create(MetadataReferences.NetFramework.Net47.MicrosoftCSharp)) + .Add(LanguageNames.VisualBasic, ImmutableArray.Create(MetadataReferences.NetFramework.Net47.MicrosoftVisualBasic))); + } + } + } + + public static class Net471 + { + public static ReferenceAssemblies Default + { + get + { + return new ReferenceAssemblies( + ImmutableArray.Create( + MetadataReferences.NetFramework.Net471.Mscorlib, + MetadataReferences.NetFramework.Net471.System, + MetadataReferences.NetFramework.Net471.SystemCore, + MetadataReferences.NetFramework.Net471.SystemData, + MetadataReferences.NetFramework.Net471.SystemDataDataSetExtensions, + MetadataReferences.NetFramework.Net471.SystemNetHttp, + MetadataReferences.NetFramework.Net471.SystemXml, + MetadataReferences.NetFramework.Net471.SystemXmlLinq), + ImmutableDictionary.Create>() + .Add(LanguageNames.CSharp, ImmutableArray.Create(MetadataReferences.NetFramework.Net471.MicrosoftCSharp)) + .Add(LanguageNames.VisualBasic, ImmutableArray.Create(MetadataReferences.NetFramework.Net471.MicrosoftVisualBasic))); + } + } + + public static ReferenceAssemblies WindowsForms + { + get + { + return new ReferenceAssemblies( + ImmutableArray.Create( + MetadataReferences.NetFramework.Net471.Mscorlib, + MetadataReferences.NetFramework.Net471.System, + MetadataReferences.NetFramework.Net471.SystemCore, + MetadataReferences.NetFramework.Net471.SystemData, + MetadataReferences.NetFramework.Net471.SystemDataDataSetExtensions, + MetadataReferences.NetFramework.Net471.SystemDeployment, + MetadataReferences.NetFramework.Net471.SystemDrawing, + MetadataReferences.NetFramework.Net471.SystemNetHttp, + MetadataReferences.NetFramework.Net471.SystemWindowsForms, + MetadataReferences.NetFramework.Net471.SystemXml, + MetadataReferences.NetFramework.Net471.SystemXmlLinq), + ImmutableDictionary.Create>() + .Add(LanguageNames.CSharp, ImmutableArray.Create(MetadataReferences.NetFramework.Net471.MicrosoftCSharp)) + .Add(LanguageNames.VisualBasic, ImmutableArray.Create(MetadataReferences.NetFramework.Net471.MicrosoftVisualBasic))); + } + } + + public static ReferenceAssemblies Wpf + { + get + { + return new ReferenceAssemblies( + ImmutableArray.Create( + MetadataReferences.NetFramework.Net471.Mscorlib, + MetadataReferences.NetFramework.Net471.PresentationCore, + MetadataReferences.NetFramework.Net471.PresentationFramework, + MetadataReferences.NetFramework.Net471.System, + MetadataReferences.NetFramework.Net471.SystemCore, + MetadataReferences.NetFramework.Net471.SystemData, + MetadataReferences.NetFramework.Net471.SystemDataDataSetExtensions, + MetadataReferences.NetFramework.Net471.SystemNetHttp, + MetadataReferences.NetFramework.Net471.SystemXaml, + MetadataReferences.NetFramework.Net471.SystemXml, + MetadataReferences.NetFramework.Net471.SystemXmlLinq, + MetadataReferences.NetFramework.Net471.WindowsBase), + ImmutableDictionary.Create>() + .Add(LanguageNames.CSharp, ImmutableArray.Create(MetadataReferences.NetFramework.Net471.MicrosoftCSharp)) + .Add(LanguageNames.VisualBasic, ImmutableArray.Create(MetadataReferences.NetFramework.Net471.MicrosoftVisualBasic))); + } + } + } + + public static class Net472 + { + public static ReferenceAssemblies Default + { + get + { + return new ReferenceAssemblies( + ImmutableArray.Create( + MetadataReferences.NetFramework.Net472.Mscorlib, + MetadataReferences.NetFramework.Net472.System, + MetadataReferences.NetFramework.Net472.SystemCore, + MetadataReferences.NetFramework.Net472.SystemData, + MetadataReferences.NetFramework.Net472.SystemDataDataSetExtensions, + MetadataReferences.NetFramework.Net472.SystemNetHttp, + MetadataReferences.NetFramework.Net472.SystemXml, + MetadataReferences.NetFramework.Net472.SystemXmlLinq), + ImmutableDictionary.Create>() + .Add(LanguageNames.CSharp, ImmutableArray.Create(MetadataReferences.NetFramework.Net472.MicrosoftCSharp)) + .Add(LanguageNames.VisualBasic, ImmutableArray.Create(MetadataReferences.NetFramework.Net472.MicrosoftVisualBasic))); + } + } + + public static ReferenceAssemblies WindowsForms + { + get + { + return new ReferenceAssemblies( + ImmutableArray.Create( + MetadataReferences.NetFramework.Net472.Mscorlib, + MetadataReferences.NetFramework.Net472.System, + MetadataReferences.NetFramework.Net472.SystemCore, + MetadataReferences.NetFramework.Net472.SystemData, + MetadataReferences.NetFramework.Net472.SystemDataDataSetExtensions, + MetadataReferences.NetFramework.Net472.SystemDeployment, + MetadataReferences.NetFramework.Net472.SystemDrawing, + MetadataReferences.NetFramework.Net472.SystemNetHttp, + MetadataReferences.NetFramework.Net472.SystemWindowsForms, + MetadataReferences.NetFramework.Net472.SystemXml, + MetadataReferences.NetFramework.Net472.SystemXmlLinq), + ImmutableDictionary.Create>() + .Add(LanguageNames.CSharp, ImmutableArray.Create(MetadataReferences.NetFramework.Net472.MicrosoftCSharp)) + .Add(LanguageNames.VisualBasic, ImmutableArray.Create(MetadataReferences.NetFramework.Net472.MicrosoftVisualBasic))); + } + } + + public static ReferenceAssemblies Wpf + { + get + { + return new ReferenceAssemblies( + ImmutableArray.Create( + MetadataReferences.NetFramework.Net472.Mscorlib, + MetadataReferences.NetFramework.Net472.PresentationCore, + MetadataReferences.NetFramework.Net472.PresentationFramework, + MetadataReferences.NetFramework.Net472.System, + MetadataReferences.NetFramework.Net472.SystemCore, + MetadataReferences.NetFramework.Net472.SystemData, + MetadataReferences.NetFramework.Net472.SystemDataDataSetExtensions, + MetadataReferences.NetFramework.Net472.SystemNetHttp, + MetadataReferences.NetFramework.Net472.SystemXaml, + MetadataReferences.NetFramework.Net472.SystemXml, + MetadataReferences.NetFramework.Net472.SystemXmlLinq, + MetadataReferences.NetFramework.Net472.WindowsBase), + ImmutableDictionary.Create>() + .Add(LanguageNames.CSharp, ImmutableArray.Create(MetadataReferences.NetFramework.Net472.MicrosoftCSharp)) + .Add(LanguageNames.VisualBasic, ImmutableArray.Create(MetadataReferences.NetFramework.Net472.MicrosoftVisualBasic))); + } + } + } + + public static class Net48 + { + public static ReferenceAssemblies Default => throw new NotImplementedException(); + + public static ReferenceAssemblies WindowsForms => throw new NotImplementedException(); + + public static ReferenceAssemblies Wpf => throw new NotImplementedException(); + } + } + + public static class NetCore + { + public static ReferenceAssemblies NetCore10 => throw new NotImplementedException(); + + public static ReferenceAssemblies NetCore20 => throw new NotImplementedException(); + } + + public static class NetStandard + { + public static ReferenceAssemblies NetStandard10 + { + get + { + return new ReferenceAssemblies( + ImmutableArray.Create( + MetadataReferences.NetStandard.NetStandard10.SystemCollections, + MetadataReferences.NetStandard.NetStandard10.SystemDiagnosticsDebug, + MetadataReferences.NetStandard.NetStandard10.SystemDiagnosticsTools, + MetadataReferences.NetStandard.NetStandard10.SystemGlobalization, + MetadataReferences.NetStandard.NetStandard10.SystemIO, + MetadataReferences.NetStandard.NetStandard10.SystemLinq, + MetadataReferences.NetStandard.NetStandard10.SystemLinqExpressions, + MetadataReferences.NetStandard.NetStandard10.SystemNetPrimitives, + MetadataReferences.NetStandard.NetStandard10.SystemObjectModel, + MetadataReferences.NetStandard.NetStandard10.SystemReflection, + MetadataReferences.NetStandard.NetStandard10.SystemReflectionExtensions, + MetadataReferences.NetStandard.NetStandard10.SystemReflectionPrimitives, + MetadataReferences.NetStandard.NetStandard10.SystemResourcesResourceManager, + MetadataReferences.NetStandard.NetStandard10.SystemRuntime, + MetadataReferences.NetStandard.NetStandard10.SystemRuntimeExtensions, + MetadataReferences.NetStandard.NetStandard10.SystemTextEncoding, + MetadataReferences.NetStandard.NetStandard10.SystemTextEncodingExtensions, + MetadataReferences.NetStandard.NetStandard10.SystemTextRegularExpressions, + MetadataReferences.NetStandard.NetStandard10.SystemThreading, + MetadataReferences.NetStandard.NetStandard10.SystemThreadingTasks, + MetadataReferences.NetStandard.NetStandard10.SystemXmlReaderWriter, + MetadataReferences.NetStandard.NetStandard10.SystemXmlXDocument), + ImmutableDictionary.Create>()); + } + } + + public static ReferenceAssemblies NetStandard11 + { + get + { + return new ReferenceAssemblies( + ImmutableArray.Create( + MetadataReferences.NetStandard.NetStandard11.SystemCollections, + MetadataReferences.NetStandard.NetStandard11.SystemCollectionsConcurrent, + MetadataReferences.NetStandard.NetStandard11.SystemDiagnosticsDebug, + MetadataReferences.NetStandard.NetStandard11.SystemDiagnosticsTools, + MetadataReferences.NetStandard.NetStandard11.SystemDiagnosticsTracing, + MetadataReferences.NetStandard.NetStandard11.SystemGlobalization, + MetadataReferences.NetStandard.NetStandard11.SystemIO, + MetadataReferences.NetStandard.NetStandard11.SystemIOCompression, + MetadataReferences.NetStandard.NetStandard11.SystemLinq, + MetadataReferences.NetStandard.NetStandard11.SystemLinqExpressions, + MetadataReferences.NetStandard.NetStandard11.SystemNetHttp, + MetadataReferences.NetStandard.NetStandard11.SystemNetPrimitives, + MetadataReferences.NetStandard.NetStandard11.SystemObjectModel, + MetadataReferences.NetStandard.NetStandard11.SystemReflection, + MetadataReferences.NetStandard.NetStandard11.SystemReflectionExtensions, + MetadataReferences.NetStandard.NetStandard11.SystemReflectionPrimitives, + MetadataReferences.NetStandard.NetStandard11.SystemResourcesResourceManager, + MetadataReferences.NetStandard.NetStandard11.SystemRuntime, + MetadataReferences.NetStandard.NetStandard11.SystemRuntimeExtensions, + MetadataReferences.NetStandard.NetStandard11.SystemRuntimeInteropServices, + MetadataReferences.NetStandard.NetStandard11.SystemRuntimeInteropServicesRuntimeInformation, + MetadataReferences.NetStandard.NetStandard11.SystemRuntimeNumerics, + MetadataReferences.NetStandard.NetStandard11.SystemTextEncoding, + MetadataReferences.NetStandard.NetStandard11.SystemTextEncodingExtensions, + MetadataReferences.NetStandard.NetStandard11.SystemTextRegularExpressions, + MetadataReferences.NetStandard.NetStandard11.SystemThreading, + MetadataReferences.NetStandard.NetStandard11.SystemThreadingTasks, + MetadataReferences.NetStandard.NetStandard11.SystemXmlReaderWriter, + MetadataReferences.NetStandard.NetStandard11.SystemXmlXDocument), + ImmutableDictionary.Create>()); + } + } + + public static ReferenceAssemblies NetStandard12 + { + get + { + return new ReferenceAssemblies( + ImmutableArray.Create( + MetadataReferences.NetStandard.NetStandard12.SystemCollections, + MetadataReferences.NetStandard.NetStandard12.SystemCollectionsConcurrent, + MetadataReferences.NetStandard.NetStandard12.SystemDiagnosticsDebug, + MetadataReferences.NetStandard.NetStandard12.SystemDiagnosticsTools, + MetadataReferences.NetStandard.NetStandard12.SystemDiagnosticsTracing, + MetadataReferences.NetStandard.NetStandard12.SystemGlobalization, + MetadataReferences.NetStandard.NetStandard12.SystemIO, + MetadataReferences.NetStandard.NetStandard12.SystemIOCompression, + MetadataReferences.NetStandard.NetStandard12.SystemLinq, + MetadataReferences.NetStandard.NetStandard12.SystemLinqExpressions, + MetadataReferences.NetStandard.NetStandard12.SystemNetHttp, + MetadataReferences.NetStandard.NetStandard12.SystemNetPrimitives, + MetadataReferences.NetStandard.NetStandard12.SystemObjectModel, + MetadataReferences.NetStandard.NetStandard12.SystemReflection, + MetadataReferences.NetStandard.NetStandard12.SystemReflectionExtensions, + MetadataReferences.NetStandard.NetStandard12.SystemReflectionPrimitives, + MetadataReferences.NetStandard.NetStandard12.SystemResourcesResourceManager, + MetadataReferences.NetStandard.NetStandard12.SystemRuntime, + MetadataReferences.NetStandard.NetStandard12.SystemRuntimeExtensions, + MetadataReferences.NetStandard.NetStandard12.SystemRuntimeInteropServices, + MetadataReferences.NetStandard.NetStandard12.SystemRuntimeInteropServicesRuntimeInformation, + MetadataReferences.NetStandard.NetStandard12.SystemRuntimeNumerics, + MetadataReferences.NetStandard.NetStandard12.SystemTextEncoding, + MetadataReferences.NetStandard.NetStandard12.SystemTextEncodingExtensions, + MetadataReferences.NetStandard.NetStandard12.SystemTextRegularExpressions, + MetadataReferences.NetStandard.NetStandard12.SystemThreading, + MetadataReferences.NetStandard.NetStandard12.SystemThreadingTasks, + MetadataReferences.NetStandard.NetStandard12.SystemThreadingTimer, + MetadataReferences.NetStandard.NetStandard12.SystemXmlReaderWriter, + MetadataReferences.NetStandard.NetStandard12.SystemXmlXDocument), + ImmutableDictionary.Create>()); + } + } + + public static ReferenceAssemblies NetStandard13 + { + get + { + return new ReferenceAssemblies( + ImmutableArray.Create( + MetadataReferences.NetStandard.NetStandard13.MicrosoftWin32Primitives, + MetadataReferences.NetStandard.NetStandard13.SystemAppContext, + MetadataReferences.NetStandard.NetStandard13.SystemCollections, + MetadataReferences.NetStandard.NetStandard13.SystemCollectionsConcurrent, + MetadataReferences.NetStandard.NetStandard13.SystemConsole, + MetadataReferences.NetStandard.NetStandard13.SystemDiagnosticsDebug, + MetadataReferences.NetStandard.NetStandard13.SystemDiagnosticsTools, + MetadataReferences.NetStandard.NetStandard13.SystemDiagnosticsTracing, + MetadataReferences.NetStandard.NetStandard13.SystemGlobalization, + MetadataReferences.NetStandard.NetStandard13.SystemGlobalizationCalendars, + MetadataReferences.NetStandard.NetStandard13.SystemIO, + MetadataReferences.NetStandard.NetStandard13.SystemIOCompression, + MetadataReferences.NetStandard.NetStandard13.SystemIOCompressionZipFile, + MetadataReferences.NetStandard.NetStandard13.SystemIOFileSystem, + MetadataReferences.NetStandard.NetStandard13.SystemIOFileSystemPrimitives, + MetadataReferences.NetStandard.NetStandard13.SystemLinq, + MetadataReferences.NetStandard.NetStandard13.SystemLinqExpressions, + MetadataReferences.NetStandard.NetStandard13.SystemNetHttp, + MetadataReferences.NetStandard.NetStandard13.SystemNetPrimitives, + MetadataReferences.NetStandard.NetStandard13.SystemNetSockets, + MetadataReferences.NetStandard.NetStandard13.SystemObjectModel, + MetadataReferences.NetStandard.NetStandard13.SystemReflection, + MetadataReferences.NetStandard.NetStandard13.SystemReflectionExtensions, + MetadataReferences.NetStandard.NetStandard13.SystemReflectionPrimitives, + MetadataReferences.NetStandard.NetStandard13.SystemResourcesResourceManager, + MetadataReferences.NetStandard.NetStandard13.SystemRuntime, + MetadataReferences.NetStandard.NetStandard13.SystemRuntimeExtensions, + MetadataReferences.NetStandard.NetStandard13.SystemRuntimeHandles, + MetadataReferences.NetStandard.NetStandard13.SystemRuntimeInteropServices, + MetadataReferences.NetStandard.NetStandard13.SystemRuntimeInteropServicesRuntimeInformation, + MetadataReferences.NetStandard.NetStandard13.SystemRuntimeNumerics, + MetadataReferences.NetStandard.NetStandard13.SystemSecurityCryptographyAlgorithms, + MetadataReferences.NetStandard.NetStandard13.SystemSecurityCryptographyEncoding, + MetadataReferences.NetStandard.NetStandard13.SystemSecurityCryptographyPrimitives, + MetadataReferences.NetStandard.NetStandard13.SystemSecurityCryptographyX509Certificates, + MetadataReferences.NetStandard.NetStandard13.SystemTextEncoding, + MetadataReferences.NetStandard.NetStandard13.SystemTextEncodingExtensions, + MetadataReferences.NetStandard.NetStandard13.SystemTextRegularExpressions, + MetadataReferences.NetStandard.NetStandard13.SystemThreading, + MetadataReferences.NetStandard.NetStandard13.SystemThreadingTasks, + MetadataReferences.NetStandard.NetStandard13.SystemThreadingTimer, + MetadataReferences.NetStandard.NetStandard13.SystemXmlReaderWriter, + MetadataReferences.NetStandard.NetStandard13.SystemXmlXDocument), + ImmutableDictionary.Create>()); + } + } + + public static ReferenceAssemblies NetStandard14 + { + get + { + return new ReferenceAssemblies( + ImmutableArray.Create( + MetadataReferences.NetStandard.NetStandard14.MicrosoftWin32Primitives, + MetadataReferences.NetStandard.NetStandard14.SystemAppContext, + MetadataReferences.NetStandard.NetStandard14.SystemCollections, + MetadataReferences.NetStandard.NetStandard14.SystemCollectionsConcurrent, + MetadataReferences.NetStandard.NetStandard14.SystemConsole, + MetadataReferences.NetStandard.NetStandard14.SystemDiagnosticsDebug, + MetadataReferences.NetStandard.NetStandard14.SystemDiagnosticsTools, + MetadataReferences.NetStandard.NetStandard14.SystemDiagnosticsTracing, + MetadataReferences.NetStandard.NetStandard14.SystemGlobalization, + MetadataReferences.NetStandard.NetStandard14.SystemGlobalizationCalendars, + MetadataReferences.NetStandard.NetStandard14.SystemIO, + MetadataReferences.NetStandard.NetStandard14.SystemIOCompression, + MetadataReferences.NetStandard.NetStandard14.SystemIOCompressionZipFile, + MetadataReferences.NetStandard.NetStandard14.SystemIOFileSystem, + MetadataReferences.NetStandard.NetStandard14.SystemIOFileSystemPrimitives, + MetadataReferences.NetStandard.NetStandard14.SystemLinq, + MetadataReferences.NetStandard.NetStandard14.SystemLinqExpressions, + MetadataReferences.NetStandard.NetStandard14.SystemNetHttp, + MetadataReferences.NetStandard.NetStandard14.SystemNetPrimitives, + MetadataReferences.NetStandard.NetStandard14.SystemNetSockets, + MetadataReferences.NetStandard.NetStandard14.SystemObjectModel, + MetadataReferences.NetStandard.NetStandard14.SystemReflection, + MetadataReferences.NetStandard.NetStandard14.SystemReflectionExtensions, + MetadataReferences.NetStandard.NetStandard14.SystemReflectionPrimitives, + MetadataReferences.NetStandard.NetStandard14.SystemResourcesResourceManager, + MetadataReferences.NetStandard.NetStandard14.SystemRuntime, + MetadataReferences.NetStandard.NetStandard14.SystemRuntimeExtensions, + MetadataReferences.NetStandard.NetStandard14.SystemRuntimeHandles, + MetadataReferences.NetStandard.NetStandard14.SystemRuntimeInteropServices, + MetadataReferences.NetStandard.NetStandard14.SystemRuntimeInteropServicesRuntimeInformation, + MetadataReferences.NetStandard.NetStandard14.SystemRuntimeNumerics, + MetadataReferences.NetStandard.NetStandard14.SystemSecurityCryptographyAlgorithms, + MetadataReferences.NetStandard.NetStandard14.SystemSecurityCryptographyEncoding, + MetadataReferences.NetStandard.NetStandard14.SystemSecurityCryptographyPrimitives, + MetadataReferences.NetStandard.NetStandard14.SystemSecurityCryptographyX509Certificates, + MetadataReferences.NetStandard.NetStandard14.SystemTextEncoding, + MetadataReferences.NetStandard.NetStandard14.SystemTextEncodingExtensions, + MetadataReferences.NetStandard.NetStandard14.SystemTextRegularExpressions, + MetadataReferences.NetStandard.NetStandard14.SystemThreading, + MetadataReferences.NetStandard.NetStandard14.SystemThreadingTasks, + MetadataReferences.NetStandard.NetStandard14.SystemThreadingTimer, + MetadataReferences.NetStandard.NetStandard14.SystemXmlReaderWriter, + MetadataReferences.NetStandard.NetStandard14.SystemXmlXDocument), + ImmutableDictionary.Create>()); + } + } + + public static ReferenceAssemblies NetStandard15 + { + get + { + return new ReferenceAssemblies( + ImmutableArray.Create( + MetadataReferences.NetStandard.NetStandard15.MicrosoftWin32Primitives, + MetadataReferences.NetStandard.NetStandard15.SystemAppContext, + MetadataReferences.NetStandard.NetStandard15.SystemCollections, + MetadataReferences.NetStandard.NetStandard15.SystemCollectionsConcurrent, + MetadataReferences.NetStandard.NetStandard15.SystemConsole, + MetadataReferences.NetStandard.NetStandard15.SystemDiagnosticsDebug, + MetadataReferences.NetStandard.NetStandard15.SystemDiagnosticsTools, + MetadataReferences.NetStandard.NetStandard15.SystemDiagnosticsTracing, + MetadataReferences.NetStandard.NetStandard15.SystemGlobalization, + MetadataReferences.NetStandard.NetStandard15.SystemGlobalizationCalendars, + MetadataReferences.NetStandard.NetStandard15.SystemIO, + MetadataReferences.NetStandard.NetStandard15.SystemIOCompression, + MetadataReferences.NetStandard.NetStandard15.SystemIOCompressionZipFile, + MetadataReferences.NetStandard.NetStandard15.SystemIOFileSystem, + MetadataReferences.NetStandard.NetStandard15.SystemIOFileSystemPrimitives, + MetadataReferences.NetStandard.NetStandard15.SystemLinq, + MetadataReferences.NetStandard.NetStandard15.SystemLinqExpressions, + MetadataReferences.NetStandard.NetStandard15.SystemNetHttp, + MetadataReferences.NetStandard.NetStandard15.SystemNetPrimitives, + MetadataReferences.NetStandard.NetStandard15.SystemNetSockets, + MetadataReferences.NetStandard.NetStandard15.SystemObjectModel, + MetadataReferences.NetStandard.NetStandard15.SystemReflection, + MetadataReferences.NetStandard.NetStandard15.SystemReflectionExtensions, + MetadataReferences.NetStandard.NetStandard15.SystemReflectionPrimitives, + MetadataReferences.NetStandard.NetStandard15.SystemResourcesResourceManager, + MetadataReferences.NetStandard.NetStandard15.SystemRuntime, + MetadataReferences.NetStandard.NetStandard15.SystemRuntimeExtensions, + MetadataReferences.NetStandard.NetStandard15.SystemRuntimeHandles, + MetadataReferences.NetStandard.NetStandard15.SystemRuntimeInteropServices, + MetadataReferences.NetStandard.NetStandard15.SystemRuntimeInteropServicesRuntimeInformation, + MetadataReferences.NetStandard.NetStandard15.SystemRuntimeNumerics, + MetadataReferences.NetStandard.NetStandard15.SystemSecurityCryptographyAlgorithms, + MetadataReferences.NetStandard.NetStandard15.SystemSecurityCryptographyEncoding, + MetadataReferences.NetStandard.NetStandard15.SystemSecurityCryptographyPrimitives, + MetadataReferences.NetStandard.NetStandard15.SystemSecurityCryptographyX509Certificates, + MetadataReferences.NetStandard.NetStandard15.SystemTextEncoding, + MetadataReferences.NetStandard.NetStandard15.SystemTextEncodingExtensions, + MetadataReferences.NetStandard.NetStandard15.SystemTextRegularExpressions, + MetadataReferences.NetStandard.NetStandard15.SystemThreading, + MetadataReferences.NetStandard.NetStandard15.SystemThreadingTasks, + MetadataReferences.NetStandard.NetStandard15.SystemThreadingTimer, + MetadataReferences.NetStandard.NetStandard15.SystemXmlReaderWriter, + MetadataReferences.NetStandard.NetStandard15.SystemXmlXDocument), + ImmutableDictionary.Create>()); + } + } + + public static ReferenceAssemblies NetStandard16 + { + get + { + return new ReferenceAssemblies( + ImmutableArray.Create( + MetadataReferences.NetStandard.NetStandard16.MicrosoftWin32Primitives, + MetadataReferences.NetStandard.NetStandard16.SystemAppContext, + MetadataReferences.NetStandard.NetStandard16.SystemCollections, + MetadataReferences.NetStandard.NetStandard16.SystemCollectionsConcurrent, + MetadataReferences.NetStandard.NetStandard16.SystemConsole, + MetadataReferences.NetStandard.NetStandard16.SystemDiagnosticsDebug, + MetadataReferences.NetStandard.NetStandard16.SystemDiagnosticsTools, + MetadataReferences.NetStandard.NetStandard16.SystemDiagnosticsTracing, + MetadataReferences.NetStandard.NetStandard16.SystemGlobalization, + MetadataReferences.NetStandard.NetStandard16.SystemGlobalizationCalendars, + MetadataReferences.NetStandard.NetStandard16.SystemIO, + MetadataReferences.NetStandard.NetStandard16.SystemIOCompression, + MetadataReferences.NetStandard.NetStandard16.SystemIOCompressionZipFile, + MetadataReferences.NetStandard.NetStandard16.SystemIOFileSystem, + MetadataReferences.NetStandard.NetStandard16.SystemIOFileSystemPrimitives, + MetadataReferences.NetStandard.NetStandard16.SystemLinq, + MetadataReferences.NetStandard.NetStandard16.SystemLinqExpressions, + MetadataReferences.NetStandard.NetStandard16.SystemNetHttp, + MetadataReferences.NetStandard.NetStandard16.SystemNetPrimitives, + MetadataReferences.NetStandard.NetStandard16.SystemNetSockets, + MetadataReferences.NetStandard.NetStandard16.SystemObjectModel, + MetadataReferences.NetStandard.NetStandard16.SystemReflection, + MetadataReferences.NetStandard.NetStandard16.SystemReflectionExtensions, + MetadataReferences.NetStandard.NetStandard16.SystemReflectionPrimitives, + MetadataReferences.NetStandard.NetStandard16.SystemResourcesResourceManager, + MetadataReferences.NetStandard.NetStandard16.SystemRuntime, + MetadataReferences.NetStandard.NetStandard16.SystemRuntimeExtensions, + MetadataReferences.NetStandard.NetStandard16.SystemRuntimeHandles, + MetadataReferences.NetStandard.NetStandard16.SystemRuntimeInteropServices, + MetadataReferences.NetStandard.NetStandard16.SystemRuntimeInteropServicesRuntimeInformation, + MetadataReferences.NetStandard.NetStandard16.SystemRuntimeNumerics, + MetadataReferences.NetStandard.NetStandard16.SystemSecurityCryptographyAlgorithms, + MetadataReferences.NetStandard.NetStandard16.SystemSecurityCryptographyEncoding, + MetadataReferences.NetStandard.NetStandard16.SystemSecurityCryptographyPrimitives, + MetadataReferences.NetStandard.NetStandard16.SystemSecurityCryptographyX509Certificates, + MetadataReferences.NetStandard.NetStandard16.SystemTextEncoding, + MetadataReferences.NetStandard.NetStandard16.SystemTextEncodingExtensions, + MetadataReferences.NetStandard.NetStandard16.SystemTextRegularExpressions, + MetadataReferences.NetStandard.NetStandard16.SystemThreading, + MetadataReferences.NetStandard.NetStandard16.SystemThreadingTasks, + MetadataReferences.NetStandard.NetStandard16.SystemThreadingTimer, + MetadataReferences.NetStandard.NetStandard16.SystemXmlReaderWriter, + MetadataReferences.NetStandard.NetStandard16.SystemXmlXDocument), + ImmutableDictionary.Create>()); + } + } + + public static ReferenceAssemblies NetStandard2 + { + get + { + var referenceAssembliesPath = Path.Combine(MetadataReferences.PackagesPath, "netstandard.library", "2.0.0", "build", "netstandard2.0", "ref"); + var referenceAssemblies = Directory.GetFiles(referenceAssembliesPath, "*.dll"); + var metadataReferences = referenceAssemblies.Select(path => MetadataReferences.CreateReferenceFromFile(path)); + return new ReferenceAssemblies( + ImmutableArray.CreateRange(metadataReferences), + ImmutableDictionary.Create>()); + } + } + } + + public static class Runtime + { + public static ReferenceAssemblies Current + { + get + { + var metadataReferences = + new[] + { + typeof(object).GetTypeInfo().Assembly, + typeof(System.Diagnostics.Debug).GetTypeInfo().Assembly, + typeof(Enumerable).GetTypeInfo().Assembly, + typeof(Microsoft.VisualBasic.Strings).GetTypeInfo().Assembly, + } + .Select(assembly => assembly.Location) + .Distinct() + .Select(location => MetadataReferences.CreateReferenceFromFile(location)) + .ToImmutableArray(); + + return new ReferenceAssemblies( + metadataReferences, + ImmutableDictionary.Create>()); + } + } + } + } +} diff --git a/src/VisualStudio.Roslyn.SDK/Roslyn.SDK/ProjectTemplates/CSharp/Diagnostic/Test/DiagnosticVerifier.Helper.cs b/src/VisualStudio.Roslyn.SDK/Roslyn.SDK/ProjectTemplates/CSharp/Diagnostic/Test/DiagnosticVerifier.Helper.cs index de72e54f8d..d0ac9bdd68 100644 --- a/src/VisualStudio.Roslyn.SDK/Roslyn.SDK/ProjectTemplates/CSharp/Diagnostic/Test/DiagnosticVerifier.Helper.cs +++ b/src/VisualStudio.Roslyn.SDK/Roslyn.SDK/ProjectTemplates/CSharp/Diagnostic/Test/DiagnosticVerifier.Helper.cs @@ -15,10 +15,10 @@ namespace TestHelper /// public abstract partial class DiagnosticVerifier { - private static readonly MetadataReference CorlibReference = MetadataReference.CreateFromFile(typeof(object).Assembly.Location); - private static readonly MetadataReference SystemCoreReference = MetadataReference.CreateFromFile(typeof(Enumerable).Assembly.Location); - private static readonly MetadataReference CSharpSymbolsReference = MetadataReference.CreateFromFile(typeof(CSharpCompilation).Assembly.Location); - private static readonly MetadataReference CodeAnalysisReference = MetadataReference.CreateFromFile(typeof(Compilation).Assembly.Location); + private static readonly MetadataReference CorlibReference = CreateReferenceFromFile(typeof(object).Assembly.Location); + private static readonly MetadataReference SystemCoreReference = CreateReferenceFromFile(typeof(Enumerable).Assembly.Location); + private static readonly MetadataReference CSharpSymbolsReference = CreateReferenceFromFile(typeof(CSharpCompilation).Assembly.Location); + private static readonly MetadataReference CodeAnalysisReference = CreateReferenceFromFile(typeof(Compilation).Assembly.Location); internal static string DefaultFilePathPrefix = "Test"; internal static string CSharpDefaultFileExt = "cs"; diff --git a/tests/Microsoft.CodeAnalysis.Testing/Microsoft.CodeAnalysis.Analyzer.Testing.UnitTests/CompilerErrorTests.cs b/tests/Microsoft.CodeAnalysis.Testing/Microsoft.CodeAnalysis.Analyzer.Testing.UnitTests/CompilerErrorTests.cs index b0e0202234..2b04f1ba45 100644 --- a/tests/Microsoft.CodeAnalysis.Testing/Microsoft.CodeAnalysis.Analyzer.Testing.UnitTests/CompilerErrorTests.cs +++ b/tests/Microsoft.CodeAnalysis.Testing/Microsoft.CodeAnalysis.Analyzer.Testing.UnitTests/CompilerErrorTests.cs @@ -213,8 +213,27 @@ End Class await new VisualBasicTest { TestCode = testCode }.RunAsync(); } + [Fact(Skip = "Need to support NuGet package System.ValueTuple")] + public async Task TestCSharpValueTupleUsageNet46() + { + var testCode = @" +class TestClass { + (int x, int y) TestMethod() { return (0, 1); } +} +"; + + await new CSharpTest + { + TestState = + { + Sources = { testCode }, + }, + ReferenceAssemblies = ReferenceAssemblies.NetFramework.Net46.Default, + }.RunAsync(); + } + [Fact] - public async Task TestCSharpValueTupleUsage() + public async Task TestCSharpValueTupleUsageNet472() { var testCode = @" class TestClass { @@ -222,7 +241,11 @@ class TestClass { } "; - await new CSharpTest { TestCode = testCode }.RunAsync(); + await new CSharpTest + { + TestCode = testCode, + ReferenceAssemblies = ReferenceAssemblies.NetFramework.Net472.Default, + }.RunAsync(); } private class CSharpTest : AnalyzerTest diff --git a/tests/Microsoft.CodeAnalysis.Testing/Microsoft.CodeAnalysis.Analyzer.Testing.UnitTests/Microsoft.CodeAnalysis.Analyzer.Testing.UnitTests.csproj b/tests/Microsoft.CodeAnalysis.Testing/Microsoft.CodeAnalysis.Analyzer.Testing.UnitTests/Microsoft.CodeAnalysis.Analyzer.Testing.UnitTests.csproj index 2c38a18e93..1ae8c376e4 100644 --- a/tests/Microsoft.CodeAnalysis.Testing/Microsoft.CodeAnalysis.Analyzer.Testing.UnitTests/Microsoft.CodeAnalysis.Analyzer.Testing.UnitTests.csproj +++ b/tests/Microsoft.CodeAnalysis.Testing/Microsoft.CodeAnalysis.Analyzer.Testing.UnitTests/Microsoft.CodeAnalysis.Analyzer.Testing.UnitTests.csproj @@ -4,6 +4,12 @@ $(TestTargetFrameworks) Microsoft.CodeAnalysis.Testing + + + + + + From 88f2690abd74ed34c693759a240cf772bc62b3d3 Mon Sep 17 00:00:00 2001 From: Sam Harwell Date: Tue, 11 Jun 2019 09:31:20 -0500 Subject: [PATCH 2/7] Use NuGet to download reference assemblies on demand --- .../AnalyzerTest`1.cs | 34 +- .../MetadataReferences.cs | 914 ----------- ...osoft.CodeAnalysis.Analyzer.Testing.csproj | 32 +- .../PublicAPI.Unshipped.txt | 444 +----- .../ReferenceAssemblies.cs | 1417 +++++++---------- .../CodeFixTest`1.cs | 2 +- .../CompilerErrorTests.cs | 8 +- .../MetadataReferenceTests.cs | 387 +++++ ...Analysis.Analyzer.Testing.UnitTests.csproj | 6 - 9 files changed, 1077 insertions(+), 2167 deletions(-) create mode 100644 tests/Microsoft.CodeAnalysis.Testing/Microsoft.CodeAnalysis.Analyzer.Testing.UnitTests/MetadataReferenceTests.cs diff --git a/src/Microsoft.CodeAnalysis.Testing/Microsoft.CodeAnalysis.Analyzer.Testing/AnalyzerTest`1.cs b/src/Microsoft.CodeAnalysis.Testing/Microsoft.CodeAnalysis.Analyzer.Testing/AnalyzerTest`1.cs index f330ee0029..432441871d 100644 --- a/src/Microsoft.CodeAnalysis.Testing/Microsoft.CodeAnalysis.Analyzer.Testing/AnalyzerTest`1.cs +++ b/src/Microsoft.CodeAnalysis.Testing/Microsoft.CodeAnalysis.Analyzer.Testing/AnalyzerTest`1.cs @@ -486,9 +486,9 @@ private static bool IsInSourceFile(DiagnosticResult result, (string filename, So /// The that the task will observe. /// A collection of s that surfaced in the source code, sorted by /// . - private Task> GetSortedDiagnosticsAsync((string filename, SourceText content)[] sources, (string filename, SourceText content)[] additionalFiles, ProjectState[] additionalProjects, MetadataReference[] additionalMetadataReferences, ImmutableArray analyzers, IVerifier verifier, CancellationToken cancellationToken) + private async Task> GetSortedDiagnosticsAsync((string filename, SourceText content)[] sources, (string filename, SourceText content)[] additionalFiles, ProjectState[] additionalProjects, MetadataReference[] additionalMetadataReferences, ImmutableArray analyzers, IVerifier verifier, CancellationToken cancellationToken) { - return GetSortedDiagnosticsAsync(GetSolution(sources, additionalFiles, additionalProjects, additionalMetadataReferences, verifier), analyzers, CompilerDiagnostics, cancellationToken); + return await GetSortedDiagnosticsAsync(await GetSolutionAsync(sources, additionalFiles, additionalProjects, additionalMetadataReferences, verifier, cancellationToken), analyzers, CompilerDiagnostics, cancellationToken); } /// @@ -560,12 +560,13 @@ protected virtual AnalyzerOptions GetAnalyzerOptions(Project project) /// Additional projects to include in the solution. /// Additional metadata references to include in the project. /// The verifier to use for test assertions. + /// The that the task will observe. /// A solution containing a project with the specified sources and additional files. - private Solution GetSolution((string filename, SourceText content)[] sources, (string filename, SourceText content)[] additionalFiles, ProjectState[] additionalProjects, MetadataReference[] additionalMetadataReferences, IVerifier verifier) + private async Task GetSolutionAsync((string filename, SourceText content)[] sources, (string filename, SourceText content)[] additionalFiles, ProjectState[] additionalProjects, MetadataReference[] additionalMetadataReferences, IVerifier verifier, CancellationToken cancellationToken) { verifier.LanguageIsSupported(Language); - var project = CreateProject(sources, additionalFiles, additionalProjects, additionalMetadataReferences, Language); + var project = await CreateProjectAsync(sources, additionalFiles, additionalProjects, additionalMetadataReferences, Language, cancellationToken); var documents = project.Documents.ToArray(); verifier.Equal(sources.Length, documents.Length, "Amount of sources did not match amount of Documents created"); @@ -577,7 +578,7 @@ private Solution GetSolution((string filename, SourceText content)[] sources, (s /// Create a project using the input strings as sources. /// /// - /// This method first creates a by calling , and then + /// This method first creates a by calling , and then /// applies compilation options to the project by calling . /// /// Classes in the form of strings. @@ -586,11 +587,12 @@ private Solution GetSolution((string filename, SourceText content)[] sources, (s /// Additional metadata references to include in the project. /// The language the source classes are in. Values may be taken from the /// class. + /// The that the task will observe. /// A created out of the s created from the source /// strings. - protected Project CreateProject((string filename, SourceText content)[] sources, (string filename, SourceText content)[] additionalFiles, ProjectState[] additionalProjects, MetadataReference[] additionalMetadataReferences, string language) + protected async Task CreateProjectAsync((string filename, SourceText content)[] sources, (string filename, SourceText content)[] additionalFiles, ProjectState[] additionalProjects, MetadataReference[] additionalMetadataReferences, string language, CancellationToken cancellationToken) { - var project = CreateProjectImpl(sources, additionalFiles, additionalProjects, additionalMetadataReferences, language); + var project = await CreateProjectImplAsync(sources, additionalFiles, additionalProjects, additionalMetadataReferences, language, cancellationToken); return ApplyCompilationOptions(project); } @@ -603,15 +605,16 @@ protected Project CreateProject((string filename, SourceText content)[] sources, /// Additional metadata references to include in the project. /// The language the source classes are in. Values may be taken from the /// class. + /// The that the task will observe. /// A created out of the s created from the source /// strings. - protected virtual Project CreateProjectImpl((string filename, SourceText content)[] sources, (string filename, SourceText content)[] additionalFiles, ProjectState[] additionalProjects, MetadataReference[] additionalMetadataReferences, string language) + protected virtual async Task CreateProjectImplAsync((string filename, SourceText content)[] sources, (string filename, SourceText content)[] additionalFiles, ProjectState[] additionalProjects, MetadataReference[] additionalMetadataReferences, string language, CancellationToken cancellationToken) { var fileNamePrefix = DefaultFilePathPrefix; var fileExt = DefaultFileExt; var projectId = ProjectId.CreateNewId(debugName: DefaultTestProjectName); - var solution = CreateSolution(projectId, language); + var solution = await CreateSolutionAsync(projectId, language, cancellationToken); foreach (var projectState in additionalProjects) { @@ -657,8 +660,9 @@ protected virtual Project CreateProjectImpl((string filename, SourceText content /// /// The project identifier to use. /// The language for which the solution is being created. + /// The that the task will observe. /// The created solution. - protected virtual Solution CreateSolution(ProjectId projectId, string language) + protected virtual async Task CreateSolutionAsync(ProjectId projectId, string language, CancellationToken cancellationToken) { var compilationOptions = CreateCompilationOptions(); @@ -668,13 +672,17 @@ protected virtual Solution CreateSolution(ProjectId projectId, string language) xmlReferenceResolver.XmlReferences.Add(xmlReference.Key, xmlReference.Value); } - compilationOptions = compilationOptions.WithXmlReferenceResolver(xmlReferenceResolver); + compilationOptions = compilationOptions + .WithXmlReferenceResolver(xmlReferenceResolver) + .WithAssemblyIdentityComparer(ReferenceAssemblies.AssemblyIdentityComparer); var solution = CreateWorkspace() .CurrentSolution .AddProject(projectId, DefaultTestProjectName, DefaultTestProjectName, language) - .WithProjectCompilationOptions(projectId, compilationOptions) - .AddMetadataReferences(projectId, ReferenceAssemblies.GetMetadataReferences(language)); + .WithProjectCompilationOptions(projectId, compilationOptions); + + var metadataReferences = await ReferenceAssemblies.ResolveAsync(language, cancellationToken); + solution = solution.AddMetadataReferences(projectId, metadataReferences); foreach (var transform in OptionsTransforms) { diff --git a/src/Microsoft.CodeAnalysis.Testing/Microsoft.CodeAnalysis.Analyzer.Testing/MetadataReferences.cs b/src/Microsoft.CodeAnalysis.Testing/Microsoft.CodeAnalysis.Analyzer.Testing/MetadataReferences.cs index 872e7d99cc..96bc03a822 100644 --- a/src/Microsoft.CodeAnalysis.Testing/Microsoft.CodeAnalysis.Analyzer.Testing/MetadataReferences.cs +++ b/src/Microsoft.CodeAnalysis.Testing/Microsoft.CodeAnalysis.Analyzer.Testing/MetadataReferences.cs @@ -1,11 +1,9 @@ // Copyright (c) Microsoft. All Rights Reserved. Licensed under the Apache License, Version 2.0. See License.txt in the project root for license information. using System; -using System.Collections.Immutable; using System.IO; using System.Linq.Expressions; using System.Reflection; -using System.Runtime.CompilerServices; using Microsoft.CodeAnalysis; namespace Microsoft.CodeAnalysis.Testing @@ -39,922 +37,10 @@ static MetadataReferences() s_createDocumentationProvider = createDocumentationProvider; } -#if NETSTANDARD1_5 - internal static string PackagesPath - { - get - { - var nugetPackages = Environment.GetEnvironmentVariable("NUGET_PACKAGES"); - if (!string.IsNullOrEmpty(nugetPackages)) - { - return nugetPackages; - } - - var profile = Environment.GetEnvironmentVariable("USERPROFILE"); - if (!Directory.Exists(profile)) - { - throw new PlatformNotSupportedException("Reference assemblies are not supported for .NET Standard 1.x"); - } - - return Path.Combine(profile, ".nuget", "packages"); - } - } -#else - internal static string PackagesPath - { - get - { - var nugetPackages = Environment.GetEnvironmentVariable("NUGET_PACKAGES"); - if (!string.IsNullOrEmpty(nugetPackages)) - { - return nugetPackages; - } - - return Path.Combine(Environment.GetFolderPath(Environment.SpecialFolder.UserProfile), ".nuget", "packages"); - } - } -#endif - internal static MetadataReference CreateReferenceFromFile(string path) { var documentationFile = Path.ChangeExtension(path, ".xml"); return MetadataReference.CreateFromFile(path, documentation: s_createDocumentationProvider(documentationFile)); } - - public static class NetFramework - { - public static class Net20 - { - private static string AssemblyPath => Path.Combine(PackagesPath, "microsoft.netframework.referenceassemblies.net20", "1.0.0-preview.1", "build", ".NETFramework", "v2.0"); - - public static MetadataReference Mscorlib => CreateReferenceFromFile(Path.Combine(AssemblyPath, "mscorlib.dll")); - - public static MetadataReference MicrosoftVisualBasic => CreateReferenceFromFile(Path.Combine(AssemblyPath, "Microsoft.VisualBasic.dll")); - - public static MetadataReference System => CreateReferenceFromFile(Path.Combine(AssemblyPath, "System.dll")); - - public static MetadataReference SystemData => CreateReferenceFromFile(Path.Combine(AssemblyPath, "System.Data.dll")); - - public static MetadataReference SystemDrawing => CreateReferenceFromFile(Path.Combine(AssemblyPath, "System.Drawing.dll")); - - public static MetadataReference SystemWindowsForms => CreateReferenceFromFile(Path.Combine(AssemblyPath, "System.Windows.Forms.dll")); - - public static MetadataReference SystemXml => CreateReferenceFromFile(Path.Combine(AssemblyPath, "System.Xml.dll")); - } - - public static class Net40 - { - private static string AssemblyPath => Path.Combine(PackagesPath, "microsoft.netframework.referenceassemblies.net40", "1.0.0-preview.1", "build", ".NETFramework", "v4.0"); - - public static MetadataReference Mscorlib => CreateReferenceFromFile(Path.Combine(AssemblyPath, "mscorlib.dll")); - - public static MetadataReference MicrosoftCSharp => CreateReferenceFromFile(Path.Combine(AssemblyPath, "Microsoft.CSharp.dll")); - - public static MetadataReference MicrosoftVisualBasic => CreateReferenceFromFile(Path.Combine(AssemblyPath, "Microsoft.VisualBasic.dll")); - - public static MetadataReference PresentationCore => CreateReferenceFromFile(Path.Combine(AssemblyPath, "PresentationCore.dll")); - - public static MetadataReference PresentationFramework => CreateReferenceFromFile(Path.Combine(AssemblyPath, "PresentationFramework.dll")); - - public static MetadataReference System => CreateReferenceFromFile(Path.Combine(AssemblyPath, "System.dll")); - - public static MetadataReference SystemCore => CreateReferenceFromFile(Path.Combine(AssemblyPath, "System.Core.dll")); - - public static MetadataReference SystemData => CreateReferenceFromFile(Path.Combine(AssemblyPath, "System.Data.dll")); - - public static MetadataReference SystemDataDataSetExtensions => CreateReferenceFromFile(Path.Combine(AssemblyPath, "System.Data.DataSetExtensions.dll")); - - public static MetadataReference SystemDeployment => CreateReferenceFromFile(Path.Combine(AssemblyPath, "System.Deployment.dll")); - - public static MetadataReference SystemDrawing => CreateReferenceFromFile(Path.Combine(AssemblyPath, "System.Drawing.dll")); - - public static MetadataReference SystemWindowsForms => CreateReferenceFromFile(Path.Combine(AssemblyPath, "System.Windows.Forms.dll")); - - public static MetadataReference SystemXaml => CreateReferenceFromFile(Path.Combine(AssemblyPath, "System.Xaml.dll")); - - public static MetadataReference SystemXml => CreateReferenceFromFile(Path.Combine(AssemblyPath, "System.Xml.dll")); - - public static MetadataReference SystemXmlLinq => CreateReferenceFromFile(Path.Combine(AssemblyPath, "System.Xml.Linq.dll")); - - public static MetadataReference WindowsBase => CreateReferenceFromFile(Path.Combine(AssemblyPath, "WindowsBase.dll")); - } - - public static class Net45 - { - } - - public static class Net451 - { - } - - public static class Net452 - { - } - - public static class Net46 - { - private static string AssemblyPath => Path.Combine(PackagesPath, "microsoft.netframework.referenceassemblies.net46", "1.0.0-preview.1", "build", ".NETFramework", "v4.6"); - - public static MetadataReference Mscorlib => CreateReferenceFromFile(Path.Combine(AssemblyPath, "mscorlib.dll")); - - public static MetadataReference MicrosoftCSharp => CreateReferenceFromFile(Path.Combine(AssemblyPath, "Microsoft.CSharp.dll")); - - public static MetadataReference MicrosoftVisualBasic => CreateReferenceFromFile(Path.Combine(AssemblyPath, "Microsoft.VisualBasic.dll")); - - public static MetadataReference PresentationCore => CreateReferenceFromFile(Path.Combine(AssemblyPath, "PresentationCore.dll")); - - public static MetadataReference PresentationFramework => CreateReferenceFromFile(Path.Combine(AssemblyPath, "PresentationFramework.dll")); - - public static MetadataReference System => CreateReferenceFromFile(Path.Combine(AssemblyPath, "System.dll")); - - public static MetadataReference SystemCore => CreateReferenceFromFile(Path.Combine(AssemblyPath, "System.Core.dll")); - - public static MetadataReference SystemData => CreateReferenceFromFile(Path.Combine(AssemblyPath, "System.Data.dll")); - - public static MetadataReference SystemDataDataSetExtensions => CreateReferenceFromFile(Path.Combine(AssemblyPath, "System.Data.DataSetExtensions.dll")); - - public static MetadataReference SystemDeployment => CreateReferenceFromFile(Path.Combine(AssemblyPath, "System.Deployment.dll")); - - public static MetadataReference SystemDrawing => CreateReferenceFromFile(Path.Combine(AssemblyPath, "System.Drawing.dll")); - - public static MetadataReference SystemNetHttp => CreateReferenceFromFile(Path.Combine(AssemblyPath, "System.Net.Http.dll")); - - public static MetadataReference SystemWindowsForms => CreateReferenceFromFile(Path.Combine(AssemblyPath, "System.Windows.Forms.dll")); - - public static MetadataReference SystemXaml => CreateReferenceFromFile(Path.Combine(AssemblyPath, "System.Xaml.dll")); - - public static MetadataReference SystemXml => CreateReferenceFromFile(Path.Combine(AssemblyPath, "System.Xml.dll")); - - public static MetadataReference SystemXmlLinq => CreateReferenceFromFile(Path.Combine(AssemblyPath, "System.Xml.Linq.dll")); - - public static MetadataReference WindowsBase => CreateReferenceFromFile(Path.Combine(AssemblyPath, "WindowsBase.dll")); - } - - public static class Net461 - { - private static string AssemblyPath => Path.Combine(PackagesPath, "microsoft.netframework.referenceassemblies.net461", "1.0.0-preview.1", "build", ".NETFramework", "v4.6.1"); - - public static MetadataReference Mscorlib => CreateReferenceFromFile(Path.Combine(AssemblyPath, "mscorlib.dll")); - - public static MetadataReference MicrosoftCSharp => CreateReferenceFromFile(Path.Combine(AssemblyPath, "Microsoft.CSharp.dll")); - - public static MetadataReference MicrosoftVisualBasic => CreateReferenceFromFile(Path.Combine(AssemblyPath, "Microsoft.VisualBasic.dll")); - - public static MetadataReference PresentationCore => CreateReferenceFromFile(Path.Combine(AssemblyPath, "PresentationCore.dll")); - - public static MetadataReference PresentationFramework => CreateReferenceFromFile(Path.Combine(AssemblyPath, "PresentationFramework.dll")); - - public static MetadataReference System => CreateReferenceFromFile(Path.Combine(AssemblyPath, "System.dll")); - - public static MetadataReference SystemCore => CreateReferenceFromFile(Path.Combine(AssemblyPath, "System.Core.dll")); - - public static MetadataReference SystemData => CreateReferenceFromFile(Path.Combine(AssemblyPath, "System.Data.dll")); - - public static MetadataReference SystemDataDataSetExtensions => CreateReferenceFromFile(Path.Combine(AssemblyPath, "System.Data.DataSetExtensions.dll")); - - public static MetadataReference SystemDeployment => CreateReferenceFromFile(Path.Combine(AssemblyPath, "System.Deployment.dll")); - - public static MetadataReference SystemDrawing => CreateReferenceFromFile(Path.Combine(AssemblyPath, "System.Drawing.dll")); - - public static MetadataReference SystemNetHttp => CreateReferenceFromFile(Path.Combine(AssemblyPath, "System.Net.Http.dll")); - - public static MetadataReference SystemWindowsForms => CreateReferenceFromFile(Path.Combine(AssemblyPath, "System.Windows.Forms.dll")); - - public static MetadataReference SystemXaml => CreateReferenceFromFile(Path.Combine(AssemblyPath, "System.Xaml.dll")); - - public static MetadataReference SystemXml => CreateReferenceFromFile(Path.Combine(AssemblyPath, "System.Xml.dll")); - - public static MetadataReference SystemXmlLinq => CreateReferenceFromFile(Path.Combine(AssemblyPath, "System.Xml.Linq.dll")); - - public static MetadataReference WindowsBase => CreateReferenceFromFile(Path.Combine(AssemblyPath, "WindowsBase.dll")); - } - - public static class Net462 - { - private static string AssemblyPath => Path.Combine(PackagesPath, "microsoft.netframework.referenceassemblies.net462", "1.0.0-preview.1", "build", ".NETFramework", "v4.6.2"); - - public static MetadataReference Mscorlib => CreateReferenceFromFile(Path.Combine(AssemblyPath, "mscorlib.dll")); - - public static MetadataReference MicrosoftCSharp => CreateReferenceFromFile(Path.Combine(AssemblyPath, "Microsoft.CSharp.dll")); - - public static MetadataReference MicrosoftVisualBasic => CreateReferenceFromFile(Path.Combine(AssemblyPath, "Microsoft.VisualBasic.dll")); - - public static MetadataReference PresentationCore => CreateReferenceFromFile(Path.Combine(AssemblyPath, "PresentationCore.dll")); - - public static MetadataReference PresentationFramework => CreateReferenceFromFile(Path.Combine(AssemblyPath, "PresentationFramework.dll")); - - public static MetadataReference System => CreateReferenceFromFile(Path.Combine(AssemblyPath, "System.dll")); - - public static MetadataReference SystemCore => CreateReferenceFromFile(Path.Combine(AssemblyPath, "System.Core.dll")); - - public static MetadataReference SystemData => CreateReferenceFromFile(Path.Combine(AssemblyPath, "System.Data.dll")); - - public static MetadataReference SystemDataDataSetExtensions => CreateReferenceFromFile(Path.Combine(AssemblyPath, "System.Data.DataSetExtensions.dll")); - - public static MetadataReference SystemDeployment => CreateReferenceFromFile(Path.Combine(AssemblyPath, "System.Deployment.dll")); - - public static MetadataReference SystemDrawing => CreateReferenceFromFile(Path.Combine(AssemblyPath, "System.Drawing.dll")); - - public static MetadataReference SystemNetHttp => CreateReferenceFromFile(Path.Combine(AssemblyPath, "System.Net.Http.dll")); - - public static MetadataReference SystemWindowsForms => CreateReferenceFromFile(Path.Combine(AssemblyPath, "System.Windows.Forms.dll")); - - public static MetadataReference SystemXaml => CreateReferenceFromFile(Path.Combine(AssemblyPath, "System.Xaml.dll")); - - public static MetadataReference SystemXml => CreateReferenceFromFile(Path.Combine(AssemblyPath, "System.Xml.dll")); - - public static MetadataReference SystemXmlLinq => CreateReferenceFromFile(Path.Combine(AssemblyPath, "System.Xml.Linq.dll")); - - public static MetadataReference WindowsBase => CreateReferenceFromFile(Path.Combine(AssemblyPath, "WindowsBase.dll")); - } - - public static class Net47 - { - private static string AssemblyPath => Path.Combine(PackagesPath, "microsoft.netframework.referenceassemblies.net47", "1.0.0-preview.1", "build", ".NETFramework", "v4.7"); - - public static MetadataReference Mscorlib => CreateReferenceFromFile(Path.Combine(AssemblyPath, "mscorlib.dll")); - - public static MetadataReference MicrosoftCSharp => CreateReferenceFromFile(Path.Combine(AssemblyPath, "Microsoft.CSharp.dll")); - - public static MetadataReference MicrosoftVisualBasic => CreateReferenceFromFile(Path.Combine(AssemblyPath, "Microsoft.VisualBasic.dll")); - - public static MetadataReference PresentationCore => CreateReferenceFromFile(Path.Combine(AssemblyPath, "PresentationCore.dll")); - - public static MetadataReference PresentationFramework => CreateReferenceFromFile(Path.Combine(AssemblyPath, "PresentationFramework.dll")); - - public static MetadataReference System => CreateReferenceFromFile(Path.Combine(AssemblyPath, "System.dll")); - - public static MetadataReference SystemCore => CreateReferenceFromFile(Path.Combine(AssemblyPath, "System.Core.dll")); - - public static MetadataReference SystemData => CreateReferenceFromFile(Path.Combine(AssemblyPath, "System.Data.dll")); - - public static MetadataReference SystemDataDataSetExtensions => CreateReferenceFromFile(Path.Combine(AssemblyPath, "System.Data.DataSetExtensions.dll")); - - public static MetadataReference SystemDeployment => CreateReferenceFromFile(Path.Combine(AssemblyPath, "System.Deployment.dll")); - - public static MetadataReference SystemDrawing => CreateReferenceFromFile(Path.Combine(AssemblyPath, "System.Drawing.dll")); - - public static MetadataReference SystemNetHttp => CreateReferenceFromFile(Path.Combine(AssemblyPath, "System.Net.Http.dll")); - - public static MetadataReference SystemWindowsForms => CreateReferenceFromFile(Path.Combine(AssemblyPath, "System.Windows.Forms.dll")); - - public static MetadataReference SystemXaml => CreateReferenceFromFile(Path.Combine(AssemblyPath, "System.Xaml.dll")); - - public static MetadataReference SystemXml => CreateReferenceFromFile(Path.Combine(AssemblyPath, "System.Xml.dll")); - - public static MetadataReference SystemXmlLinq => CreateReferenceFromFile(Path.Combine(AssemblyPath, "System.Xml.Linq.dll")); - - public static MetadataReference WindowsBase => CreateReferenceFromFile(Path.Combine(AssemblyPath, "WindowsBase.dll")); - } - - public static class Net471 - { - private static string AssemblyPath => Path.Combine(PackagesPath, "microsoft.netframework.referenceassemblies.net471", "1.0.0-preview.1", "build", ".NETFramework", "v4.7.1"); - - public static MetadataReference Mscorlib => CreateReferenceFromFile(Path.Combine(AssemblyPath, "mscorlib.dll")); - - public static MetadataReference MicrosoftCSharp => CreateReferenceFromFile(Path.Combine(AssemblyPath, "Microsoft.CSharp.dll")); - - public static MetadataReference MicrosoftVisualBasic => CreateReferenceFromFile(Path.Combine(AssemblyPath, "Microsoft.VisualBasic.dll")); - - public static MetadataReference PresentationCore => CreateReferenceFromFile(Path.Combine(AssemblyPath, "PresentationCore.dll")); - - public static MetadataReference PresentationFramework => CreateReferenceFromFile(Path.Combine(AssemblyPath, "PresentationFramework.dll")); - - public static MetadataReference System => CreateReferenceFromFile(Path.Combine(AssemblyPath, "System.dll")); - - public static MetadataReference SystemCore => CreateReferenceFromFile(Path.Combine(AssemblyPath, "System.Core.dll")); - - public static MetadataReference SystemData => CreateReferenceFromFile(Path.Combine(AssemblyPath, "System.Data.dll")); - - public static MetadataReference SystemDataDataSetExtensions => CreateReferenceFromFile(Path.Combine(AssemblyPath, "System.Data.DataSetExtensions.dll")); - - public static MetadataReference SystemDeployment => CreateReferenceFromFile(Path.Combine(AssemblyPath, "System.Deployment.dll")); - - public static MetadataReference SystemDrawing => CreateReferenceFromFile(Path.Combine(AssemblyPath, "System.Drawing.dll")); - - public static MetadataReference SystemNetHttp => CreateReferenceFromFile(Path.Combine(AssemblyPath, "System.Net.Http.dll")); - - public static MetadataReference SystemWindowsForms => CreateReferenceFromFile(Path.Combine(AssemblyPath, "System.Windows.Forms.dll")); - - public static MetadataReference SystemXaml => CreateReferenceFromFile(Path.Combine(AssemblyPath, "System.Xaml.dll")); - - public static MetadataReference SystemXml => CreateReferenceFromFile(Path.Combine(AssemblyPath, "System.Xml.dll")); - - public static MetadataReference SystemXmlLinq => CreateReferenceFromFile(Path.Combine(AssemblyPath, "System.Xml.Linq.dll")); - - public static MetadataReference WindowsBase => CreateReferenceFromFile(Path.Combine(AssemblyPath, "WindowsBase.dll")); - } - - public static class Net472 - { - private static string AssemblyPath => Path.Combine(PackagesPath, "microsoft.netframework.referenceassemblies.net472", "1.0.0-preview.1", "build", ".NETFramework", "v4.7.2"); - - public static MetadataReference Mscorlib => CreateReferenceFromFile(Path.Combine(AssemblyPath, "mscorlib.dll")); - - public static MetadataReference MicrosoftCSharp => CreateReferenceFromFile(Path.Combine(AssemblyPath, "Microsoft.CSharp.dll")); - - public static MetadataReference MicrosoftVisualBasic => CreateReferenceFromFile(Path.Combine(AssemblyPath, "Microsoft.VisualBasic.dll")); - - public static MetadataReference PresentationCore => CreateReferenceFromFile(Path.Combine(AssemblyPath, "PresentationCore.dll")); - - public static MetadataReference PresentationFramework => CreateReferenceFromFile(Path.Combine(AssemblyPath, "PresentationFramework.dll")); - - public static MetadataReference System => CreateReferenceFromFile(Path.Combine(AssemblyPath, "System.dll")); - - public static MetadataReference SystemCore => CreateReferenceFromFile(Path.Combine(AssemblyPath, "System.Core.dll")); - - public static MetadataReference SystemData => CreateReferenceFromFile(Path.Combine(AssemblyPath, "System.Data.dll")); - - public static MetadataReference SystemDataDataSetExtensions => CreateReferenceFromFile(Path.Combine(AssemblyPath, "System.Data.DataSetExtensions.dll")); - - public static MetadataReference SystemDeployment => CreateReferenceFromFile(Path.Combine(AssemblyPath, "System.Deployment.dll")); - - public static MetadataReference SystemDrawing => CreateReferenceFromFile(Path.Combine(AssemblyPath, "System.Drawing.dll")); - - public static MetadataReference SystemNetHttp => CreateReferenceFromFile(Path.Combine(AssemblyPath, "System.Net.Http.dll")); - - public static MetadataReference SystemWindowsForms => CreateReferenceFromFile(Path.Combine(AssemblyPath, "System.Windows.Forms.dll")); - - public static MetadataReference SystemXaml => CreateReferenceFromFile(Path.Combine(AssemblyPath, "System.Xaml.dll")); - - public static MetadataReference SystemXml => CreateReferenceFromFile(Path.Combine(AssemblyPath, "System.Xml.dll")); - - public static MetadataReference SystemXmlLinq => CreateReferenceFromFile(Path.Combine(AssemblyPath, "System.Xml.Linq.dll")); - - public static MetadataReference WindowsBase => CreateReferenceFromFile(Path.Combine(AssemblyPath, "WindowsBase.dll")); - } - - public static class Net48 - { - } - } - - public static class NetStandard - { - public static class NetStandard10 - { - public static MetadataReference SystemCollections => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.collections", "4.3.0", "ref", "netstandard1.0", "System.Collections.dll")); - - public static MetadataReference SystemDiagnosticsDebug => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.diagnostics.debug", "4.3.0", "ref", "netstandard1.0", "System.Diagnostics.Debug.dll")); - - public static MetadataReference SystemDiagnosticsTools => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.diagnostics.tools", "4.3.0", "ref", "netstandard1.0", "System.Diagnostics.Tools.dll")); - - public static MetadataReference SystemGlobalization => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.globalization", "4.3.0", "ref", "netstandard1.0", "System.Globalization.dll")); - - public static MetadataReference SystemIO => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.io", "4.3.0", "ref", "netstandard1.0", "System.IO.dll")); - - public static MetadataReference SystemLinq => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.linq", "4.3.0", "ref", "netstandard1.0", "System.Linq.dll")); - - public static MetadataReference SystemLinqExpressions => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.linq.expressions", "4.3.0", "ref", "netstandard1.0", "System.Linq.Expressions.dll")); - - public static MetadataReference SystemNetPrimitives => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.net.primitives", "4.3.0", "ref", "netstandard1.0", "System.Net.Primitives.dll")); - - public static MetadataReference SystemObjectModel => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.objectmodel", "4.3.0", "ref", "netstandard1.0", "System.ObjectModel.dll")); - - public static MetadataReference SystemReflection => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.reflection", "4.3.0", "ref", "netstandard1.0", "System.Reflection.dll")); - - public static MetadataReference SystemReflectionExtensions => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.reflection.extensions", "4.3.0", "ref", "netstandard1.0", "System.Reflection.Extensions.dll")); - - public static MetadataReference SystemReflectionPrimitives => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.reflection.primitives", "4.3.0", "ref", "netstandard1.0", "System.Reflection.Primitives.dll")); - - public static MetadataReference SystemResourcesResourceManager => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.resources.resourcemanager", "4.3.0", "ref", "netstandard1.0", "System.Resources.ResourceManager.dll")); - - public static MetadataReference SystemRuntime => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.runtime", "4.3.0", "ref", "netstandard1.0", "System.Runtime.dll")); - - public static MetadataReference SystemRuntimeExtensions => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.runtime.extensions", "4.3.0", "ref", "netstandard1.0", "System.Runtime.Extensions.dll")); - - public static MetadataReference SystemTextEncoding => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.text.encoding", "4.3.0", "ref", "netstandard1.0", "System.Text.Encoding.dll")); - - public static MetadataReference SystemTextEncodingExtensions => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.text.encoding.extensions", "4.3.0", "ref", "netstandard1.0", "System.Text.Encoding.Extensions.dll")); - - public static MetadataReference SystemTextRegularExpressions => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.text.regularexpressions", "4.3.0", "ref", "netstandard1.0", "System.Text.RegularExpressions.dll")); - - public static MetadataReference SystemThreading => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.threading", "4.3.0", "ref", "netstandard1.0", "System.Threading.dll")); - - public static MetadataReference SystemThreadingTasks => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.threading.tasks", "4.3.0", "ref", "netstandard1.0", "System.Threading.Tasks.dll")); - - public static MetadataReference SystemXmlReaderWriter => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.xml.readerwriter", "4.3.0", "ref", "netstandard1.0", "System.Xml.ReaderWriter.dll")); - - public static MetadataReference SystemXmlXDocument => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.xml.xdocument", "4.3.0", "ref", "netstandard1.0", "System.Xml.XDocument.dll")); - } - - public static class NetStandard11 - { - public static MetadataReference SystemCollections => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.collections", "4.3.0", "ref", "netstandard1.0", "System.Collections.dll")); - - public static MetadataReference SystemCollectionsConcurrent => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.collections.concurrent", "4.3.0", "ref", "netstandard1.1", "System.Collections.Concurrent.dll")); - - public static MetadataReference SystemDiagnosticsDebug => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.diagnostics.debug", "4.3.0", "ref", "netstandard1.0", "System.Diagnostics.Debug.dll")); - - public static MetadataReference SystemDiagnosticsTools => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.diagnostics.tools", "4.3.0", "ref", "netstandard1.0", "System.Diagnostics.Tools.dll")); - - public static MetadataReference SystemDiagnosticsTracing => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.diagnostics.tracing", "4.3.0", "ref", "netstandard1.1", "System.Diagnostics.Tracing.dll")); - - public static MetadataReference SystemGlobalization => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.globalization", "4.3.0", "ref", "netstandard1.0", "System.Globalization.dll")); - - public static MetadataReference SystemIO => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.io", "4.3.0", "ref", "netstandard1.0", "System.IO.dll")); - - public static MetadataReference SystemIOCompression => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.io.compression", "4.3.0", "ref", "netstandard1.1", "System.IO.Compression.dll")); - - public static MetadataReference SystemLinq => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.linq", "4.3.0", "ref", "netstandard1.0", "System.Linq.dll")); - - public static MetadataReference SystemLinqExpressions => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.linq.expressions", "4.3.0", "ref", "netstandard1.0", "System.Linq.Expressions.dll")); - - public static MetadataReference SystemNetHttp => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.net.http", "4.3.0", "ref", "netstandard1.1", "System.Net.Http.dll")); - - public static MetadataReference SystemNetPrimitives => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.net.primitives", "4.3.0", "ref", "netstandard1.1", "System.Net.Primitives.dll")); - - public static MetadataReference SystemObjectModel => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.objectmodel", "4.3.0", "ref", "netstandard1.0", "System.ObjectModel.dll")); - - public static MetadataReference SystemReflection => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.reflection", "4.3.0", "ref", "netstandard1.0", "System.Reflection.dll")); - - public static MetadataReference SystemReflectionExtensions => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.reflection.extensions", "4.3.0", "ref", "netstandard1.0", "System.Reflection.Extensions.dll")); - - public static MetadataReference SystemReflectionPrimitives => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.reflection.primitives", "4.3.0", "ref", "netstandard1.0", "System.Reflection.Primitives.dll")); - - public static MetadataReference SystemResourcesResourceManager => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.resources.resourcemanager", "4.3.0", "ref", "netstandard1.0", "System.Resources.ResourceManager.dll")); - - public static MetadataReference SystemRuntime => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.runtime", "4.3.0", "ref", "netstandard1.0", "System.Runtime.dll")); - - public static MetadataReference SystemRuntimeExtensions => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.runtime.extensions", "4.3.0", "ref", "netstandard1.0", "System.Runtime.Extensions.dll")); - - public static MetadataReference SystemRuntimeInteropServices => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.runtime.interopservices", "4.3.0", "ref", "netstandard1.1", "System.Runtime.InteropServices.dll")); - - public static MetadataReference SystemRuntimeInteropServicesRuntimeInformation => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.runtime.interopservices.runtimeinformation", "4.3.0", "ref", "netstandard1.1", "System.Runtime.InteropServices.RuntimeInformation.dll")); - - public static MetadataReference SystemRuntimeNumerics => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.runtime.numerics", "4.3.0", "ref", "netstandard1.1", "System.Runtime.Numerics.dll")); - - public static MetadataReference SystemTextEncoding => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.text.encoding", "4.3.0", "ref", "netstandard1.0", "System.Text.Encoding.dll")); - - public static MetadataReference SystemTextEncodingExtensions => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.text.encoding.extensions", "4.3.0", "ref", "netstandard1.0", "System.Text.Encoding.Extensions.dll")); - - public static MetadataReference SystemTextRegularExpressions => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.text.regularexpressions", "4.3.0", "ref", "netstandard1.0", "System.Text.RegularExpressions.dll")); - - public static MetadataReference SystemThreading => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.threading", "4.3.0", "ref", "netstandard1.0", "System.Threading.dll")); - - public static MetadataReference SystemThreadingTasks => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.threading.tasks", "4.3.0", "ref", "netstandard1.0", "System.Threading.Tasks.dll")); - - public static MetadataReference SystemXmlReaderWriter => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.xml.readerwriter", "4.3.0", "ref", "netstandard1.0", "System.Xml.ReaderWriter.dll")); - - public static MetadataReference SystemXmlXDocument => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.xml.xdocument", "4.3.0", "ref", "netstandard1.0", "System.Xml.XDocument.dll")); - } - - public static class NetStandard12 - { - public static MetadataReference SystemCollections => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.collections", "4.3.0", "ref", "netstandard1.0", "System.Collections.dll")); - - public static MetadataReference SystemCollectionsConcurrent => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.collections.concurrent", "4.3.0", "ref", "netstandard1.1", "System.Collections.Concurrent.dll")); - - public static MetadataReference SystemDiagnosticsDebug => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.diagnostics.debug", "4.3.0", "ref", "netstandard1.0", "System.Diagnostics.Debug.dll")); - - public static MetadataReference SystemDiagnosticsTools => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.diagnostics.tools", "4.3.0", "ref", "netstandard1.0", "System.Diagnostics.Tools.dll")); - - public static MetadataReference SystemDiagnosticsTracing => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.diagnostics.tracing", "4.3.0", "ref", "netstandard1.2", "System.Diagnostics.Tracing.dll")); - - public static MetadataReference SystemGlobalization => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.globalization", "4.3.0", "ref", "netstandard1.0", "System.Globalization.dll")); - - public static MetadataReference SystemIO => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.io", "4.3.0", "ref", "netstandard1.0", "System.IO.dll")); - - public static MetadataReference SystemIOCompression => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.io.compression", "4.3.0", "ref", "netstandard1.1", "System.IO.Compression.dll")); - - public static MetadataReference SystemLinq => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.linq", "4.3.0", "ref", "netstandard1.0", "System.Linq.dll")); - - public static MetadataReference SystemLinqExpressions => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.linq.expressions", "4.3.0", "ref", "netstandard1.0", "System.Linq.Expressions.dll")); - - public static MetadataReference SystemNetHttp => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.net.http", "4.3.0", "ref", "netstandard1.1", "System.Net.Http.dll")); - - public static MetadataReference SystemNetPrimitives => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.net.primitives", "4.3.0", "ref", "netstandard1.1", "System.Net.Primitives.dll")); - - public static MetadataReference SystemObjectModel => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.objectmodel", "4.3.0", "ref", "netstandard1.0", "System.ObjectModel.dll")); - - public static MetadataReference SystemReflection => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.reflection", "4.3.0", "ref", "netstandard1.0", "System.Reflection.dll")); - - public static MetadataReference SystemReflectionExtensions => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.reflection.extensions", "4.3.0", "ref", "netstandard1.0", "System.Reflection.Extensions.dll")); - - public static MetadataReference SystemReflectionPrimitives => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.reflection.primitives", "4.3.0", "ref", "netstandard1.0", "System.Reflection.Primitives.dll")); - - public static MetadataReference SystemResourcesResourceManager => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.resources.resourcemanager", "4.3.0", "ref", "netstandard1.0", "System.Resources.ResourceManager.dll")); - - public static MetadataReference SystemRuntime => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.runtime", "4.3.0", "ref", "netstandard1.2", "System.Runtime.dll")); - - public static MetadataReference SystemRuntimeExtensions => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.runtime.extensions", "4.3.0", "ref", "netstandard1.0", "System.Runtime.Extensions.dll")); - - public static MetadataReference SystemRuntimeInteropServices => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.runtime.interopservices", "4.3.0", "ref", "netstandard1.2", "System.Runtime.InteropServices.dll")); - - public static MetadataReference SystemRuntimeInteropServicesRuntimeInformation => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.runtime.interopservices.runtimeinformation", "4.3.0", "ref", "netstandard1.1", "System.Runtime.InteropServices.RuntimeInformation.dll")); - - public static MetadataReference SystemRuntimeNumerics => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.runtime.numerics", "4.3.0", "ref", "netstandard1.1", "System.Runtime.Numerics.dll")); - - public static MetadataReference SystemTextEncoding => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.text.encoding", "4.3.0", "ref", "netstandard1.0", "System.Text.Encoding.dll")); - - public static MetadataReference SystemTextEncodingExtensions => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.text.encoding.extensions", "4.3.0", "ref", "netstandard1.0", "System.Text.Encoding.Extensions.dll")); - - public static MetadataReference SystemTextRegularExpressions => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.text.regularexpressions", "4.3.0", "ref", "netstandard1.0", "System.Text.RegularExpressions.dll")); - - public static MetadataReference SystemThreading => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.threading", "4.3.0", "ref", "netstandard1.0", "System.Threading.dll")); - - public static MetadataReference SystemThreadingTasks => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.threading.tasks", "4.3.0", "ref", "netstandard1.0", "System.Threading.Tasks.dll")); - - public static MetadataReference SystemThreadingTimer => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.threading.timer", "4.3.0", "ref", "netstandard1.2", "System.Threading.Timer.dll")); - - public static MetadataReference SystemXmlReaderWriter => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.xml.readerwriter", "4.3.0", "ref", "netstandard1.0", "System.Xml.ReaderWriter.dll")); - - public static MetadataReference SystemXmlXDocument => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.xml.xdocument", "4.3.0", "ref", "netstandard1.0", "System.Xml.XDocument.dll")); - } - - public static class NetStandard13 - { - public static MetadataReference MicrosoftWin32Primitives => CreateReferenceFromFile(Path.Combine(PackagesPath, "microsoft.win32.primitives", "4.3.0", "ref", "netstandard1.3", "Microsoft.Win32.Primitives.dll")); - - public static MetadataReference SystemAppContext => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.appcontext", "4.3.0", "ref", "netstandard1.3", "System.AppContext.dll")); - - public static MetadataReference SystemCollections => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.collections", "4.3.0", "ref", "netstandard1.3", "System.Collections.dll")); - - public static MetadataReference SystemCollectionsConcurrent => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.collections.concurrent", "4.3.0", "ref", "netstandard1.3", "System.Collections.Concurrent.dll")); - - public static MetadataReference SystemConsole => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.console", "4.3.0", "ref", "netstandard1.3", "System.Console.dll")); - - public static MetadataReference SystemDiagnosticsDebug => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.diagnostics.debug", "4.3.0", "ref", "netstandard1.3", "System.Diagnostics.Debug.dll")); - - public static MetadataReference SystemDiagnosticsTools => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.diagnostics.tools", "4.3.0", "ref", "netstandard1.0", "System.Diagnostics.Tools.dll")); - - public static MetadataReference SystemDiagnosticsTracing => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.diagnostics.tracing", "4.3.0", "ref", "netstandard1.3", "System.Diagnostics.Tracing.dll")); - - public static MetadataReference SystemGlobalization => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.globalization", "4.3.0", "ref", "netstandard1.3", "System.Globalization.dll")); - - public static MetadataReference SystemGlobalizationCalendars => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.globalization.calendars", "4.3.0", "ref", "netstandard1.3", "System.Globalization.Calendars.dll")); - - public static MetadataReference SystemIO => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.io", "4.3.0", "ref", "netstandard1.3", "System.IO.dll")); - - public static MetadataReference SystemIOCompression => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.io.compression", "4.3.0", "ref", "netstandard1.3", "System.IO.Compression.dll")); - - public static MetadataReference SystemIOCompressionZipFile => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.io.compression.zipfile", "4.3.0", "ref", "netstandard1.3", "System.IO.Compression.ZipFile.dll")); - - public static MetadataReference SystemIOFileSystem => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.io.filesystem", "4.3.0", "ref", "netstandard1.3", "System.IO.FileSystem.dll")); - - public static MetadataReference SystemIOFileSystemPrimitives => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.io.filesystem.primitives", "4.3.0", "ref", "netstandard1.3", "System.IO.FileSystem.Primitives.dll")); - - public static MetadataReference SystemLinq => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.linq", "4.3.0", "ref", "netstandard1.0", "System.Linq.dll")); - - public static MetadataReference SystemLinqExpressions => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.linq.expressions", "4.3.0", "ref", "netstandard1.3", "System.Linq.Expressions.dll")); - - public static MetadataReference SystemNetHttp => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.net.http", "4.3.0", "ref", "netstandard1.3", "System.Net.Http.dll")); - - public static MetadataReference SystemNetPrimitives => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.net.primitives", "4.3.0", "ref", "netstandard1.3", "System.Net.Primitives.dll")); - - public static MetadataReference SystemNetSockets => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.net.sockets", "4.3.0", "ref", "netstandard1.3", "System.Net.Sockets.dll")); - - public static MetadataReference SystemObjectModel => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.objectmodel", "4.3.0", "ref", "netstandard1.3", "System.ObjectModel.dll")); - - public static MetadataReference SystemReflection => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.reflection", "4.3.0", "ref", "netstandard1.3", "System.Reflection.dll")); - - public static MetadataReference SystemReflectionExtensions => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.reflection.extensions", "4.3.0", "ref", "netstandard1.0", "System.Reflection.Extensions.dll")); - - public static MetadataReference SystemReflectionPrimitives => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.reflection.primitives", "4.3.0", "ref", "netstandard1.0", "System.Reflection.Primitives.dll")); - - public static MetadataReference SystemResourcesResourceManager => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.resources.resourcemanager", "4.3.0", "ref", "netstandard1.0", "System.Resources.ResourceManager.dll")); - - public static MetadataReference SystemRuntime => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.runtime", "4.3.0", "ref", "netstandard1.3", "System.Runtime.dll")); - - public static MetadataReference SystemRuntimeExtensions => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.runtime.extensions", "4.3.0", "ref", "netstandard1.3", "System.Runtime.Extensions.dll")); - - public static MetadataReference SystemRuntimeHandles => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.runtime.handles", "4.3.0", "ref", "netstandard1.3", "System.Runtime.Handles.dll")); - - public static MetadataReference SystemRuntimeInteropServices => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.runtime.interopservices", "4.3.0", "ref", "netstandard1.3", "System.Runtime.InteropServices.dll")); - - public static MetadataReference SystemRuntimeInteropServicesRuntimeInformation => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.runtime.interopservices.runtimeinformation", "4.3.0", "ref", "netstandard1.1", "System.Runtime.InteropServices.RuntimeInformation.dll")); - - public static MetadataReference SystemRuntimeNumerics => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.runtime.numerics", "4.3.0", "ref", "netstandard1.1", "System.Runtime.Numerics.dll")); - - public static MetadataReference SystemSecurityCryptographyAlgorithms => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.security.cryptography.algorithms", "4.3.0", "ref", "netstandard1.3", "System.Security.Cryptography.Algorithms.dll")); - - public static MetadataReference SystemSecurityCryptographyEncoding => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.security.cryptography.encoding", "4.3.0", "ref", "netstandard1.3", "System.Security.Cryptography.Encoding.dll")); - - public static MetadataReference SystemSecurityCryptographyPrimitives => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.security.cryptography.primitives", "4.3.0", "ref", "netstandard1.3", "System.Security.Cryptography.Primitives.dll")); - - public static MetadataReference SystemSecurityCryptographyX509Certificates => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.security.cryptography.x509certificates", "4.3.0", "ref", "netstandard1.3", "System.Security.Cryptography.X509Certificates.dll")); - - public static MetadataReference SystemTextEncoding => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.text.encoding", "4.3.0", "ref", "netstandard1.3", "System.Text.Encoding.dll")); - - public static MetadataReference SystemTextEncodingExtensions => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.text.encoding.extensions", "4.3.0", "ref", "netstandard1.3", "System.Text.Encoding.Extensions.dll")); - - public static MetadataReference SystemTextRegularExpressions => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.text.regularexpressions", "4.3.0", "ref", "netstandard1.3", "System.Text.RegularExpressions.dll")); - - public static MetadataReference SystemThreading => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.threading", "4.3.0", "ref", "netstandard1.3", "System.Threading.dll")); - - public static MetadataReference SystemThreadingTasks => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.threading.tasks", "4.3.0", "ref", "netstandard1.3", "System.Threading.Tasks.dll")); - - public static MetadataReference SystemThreadingTimer => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.threading.timer", "4.3.0", "ref", "netstandard1.2", "System.Threading.Timer.dll")); - - public static MetadataReference SystemXmlReaderWriter => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.xml.readerwriter", "4.3.0", "ref", "netstandard1.3", "System.Xml.ReaderWriter.dll")); - - public static MetadataReference SystemXmlXDocument => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.xml.xdocument", "4.3.0", "ref", "netstandard1.3", "System.Xml.XDocument.dll")); - } - - public static class NetStandard14 - { - public static MetadataReference MicrosoftWin32Primitives => CreateReferenceFromFile(Path.Combine(PackagesPath, "microsoft.win32.primitives", "4.3.0", "ref", "netstandard1.3", "Microsoft.Win32.Primitives.dll")); - - public static MetadataReference SystemAppContext => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.appcontext", "4.3.0", "ref", "netstandard1.3", "System.AppContext.dll")); - - public static MetadataReference SystemCollections => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.collections", "4.3.0", "ref", "netstandard1.3", "System.Collections.dll")); - - public static MetadataReference SystemCollectionsConcurrent => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.collections.concurrent", "4.3.0", "ref", "netstandard1.3", "System.Collections.Concurrent.dll")); - - public static MetadataReference SystemConsole => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.console", "4.3.0", "ref", "netstandard1.3", "System.Console.dll")); - - public static MetadataReference SystemDiagnosticsDebug => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.diagnostics.debug", "4.3.0", "ref", "netstandard1.3", "System.Diagnostics.Debug.dll")); - - public static MetadataReference SystemDiagnosticsTools => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.diagnostics.tools", "4.3.0", "ref", "netstandard1.0", "System.Diagnostics.Tools.dll")); - - public static MetadataReference SystemDiagnosticsTracing => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.diagnostics.tracing", "4.3.0", "ref", "netstandard1.3", "System.Diagnostics.Tracing.dll")); - - public static MetadataReference SystemGlobalization => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.globalization", "4.3.0", "ref", "netstandard1.3", "System.Globalization.dll")); - - public static MetadataReference SystemGlobalizationCalendars => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.globalization.calendars", "4.3.0", "ref", "netstandard1.3", "System.Globalization.Calendars.dll")); - - public static MetadataReference SystemIO => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.io", "4.3.0", "ref", "netstandard1.3", "System.IO.dll")); - - public static MetadataReference SystemIOCompression => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.io.compression", "4.3.0", "ref", "netstandard1.3", "System.IO.Compression.dll")); - - public static MetadataReference SystemIOCompressionZipFile => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.io.compression.zipfile", "4.3.0", "ref", "netstandard1.3", "System.IO.Compression.ZipFile.dll")); - - public static MetadataReference SystemIOFileSystem => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.io.filesystem", "4.3.0", "ref", "netstandard1.3", "System.IO.FileSystem.dll")); - - public static MetadataReference SystemIOFileSystemPrimitives => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.io.filesystem.primitives", "4.3.0", "ref", "netstandard1.3", "System.IO.FileSystem.Primitives.dll")); - - public static MetadataReference SystemLinq => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.linq", "4.3.0", "ref", "netstandard1.0", "System.Linq.dll")); - - public static MetadataReference SystemLinqExpressions => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.linq.expressions", "4.3.0", "ref", "netstandard1.3", "System.Linq.Expressions.dll")); - - public static MetadataReference SystemNetHttp => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.net.http", "4.3.0", "ref", "netstandard1.3", "System.Net.Http.dll")); - - public static MetadataReference SystemNetPrimitives => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.net.primitives", "4.3.0", "ref", "netstandard1.3", "System.Net.Primitives.dll")); - - public static MetadataReference SystemNetSockets => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.net.sockets", "4.3.0", "ref", "netstandard1.3", "System.Net.Sockets.dll")); - - public static MetadataReference SystemObjectModel => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.objectmodel", "4.3.0", "ref", "netstandard1.3", "System.ObjectModel.dll")); - - public static MetadataReference SystemReflection => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.reflection", "4.3.0", "ref", "netstandard1.3", "System.Reflection.dll")); - - public static MetadataReference SystemReflectionExtensions => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.reflection.extensions", "4.3.0", "ref", "netstandard1.0", "System.Reflection.Extensions.dll")); - - public static MetadataReference SystemReflectionPrimitives => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.reflection.primitives", "4.3.0", "ref", "netstandard1.0", "System.Reflection.Primitives.dll")); - - public static MetadataReference SystemResourcesResourceManager => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.resources.resourcemanager", "4.3.0", "ref", "netstandard1.0", "System.Resources.ResourceManager.dll")); - - public static MetadataReference SystemRuntime => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.runtime", "4.3.0", "ref", "netstandard1.3", "System.Runtime.dll")); - - public static MetadataReference SystemRuntimeExtensions => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.runtime.extensions", "4.3.0", "ref", "netstandard1.3", "System.Runtime.Extensions.dll")); - - public static MetadataReference SystemRuntimeHandles => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.runtime.handles", "4.3.0", "ref", "netstandard1.3", "System.Runtime.Handles.dll")); - - public static MetadataReference SystemRuntimeInteropServices => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.runtime.interopservices", "4.3.0", "ref", "netstandard1.3", "System.Runtime.InteropServices.dll")); - - public static MetadataReference SystemRuntimeInteropServicesRuntimeInformation => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.runtime.interopservices.runtimeinformation", "4.3.0", "ref", "netstandard1.1", "System.Runtime.InteropServices.RuntimeInformation.dll")); - - public static MetadataReference SystemRuntimeNumerics => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.runtime.numerics", "4.3.0", "ref", "netstandard1.1", "System.Runtime.Numerics.dll")); - - public static MetadataReference SystemSecurityCryptographyAlgorithms => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.security.cryptography.algorithms", "4.3.0", "ref", "netstandard1.4", "System.Security.Cryptography.Algorithms.dll")); - - public static MetadataReference SystemSecurityCryptographyEncoding => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.security.cryptography.encoding", "4.3.0", "ref", "netstandard1.3", "System.Security.Cryptography.Encoding.dll")); - - public static MetadataReference SystemSecurityCryptographyPrimitives => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.security.cryptography.primitives", "4.3.0", "ref", "netstandard1.3", "System.Security.Cryptography.Primitives.dll")); - - public static MetadataReference SystemSecurityCryptographyX509Certificates => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.security.cryptography.x509certificates", "4.3.0", "ref", "netstandard1.4", "System.Security.Cryptography.X509Certificates.dll")); - - public static MetadataReference SystemTextEncoding => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.text.encoding", "4.3.0", "ref", "netstandard1.3", "System.Text.Encoding.dll")); - - public static MetadataReference SystemTextEncodingExtensions => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.text.encoding.extensions", "4.3.0", "ref", "netstandard1.3", "System.Text.Encoding.Extensions.dll")); - - public static MetadataReference SystemTextRegularExpressions => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.text.regularexpressions", "4.3.0", "ref", "netstandard1.3", "System.Text.RegularExpressions.dll")); - - public static MetadataReference SystemThreading => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.threading", "4.3.0", "ref", "netstandard1.3", "System.Threading.dll")); - - public static MetadataReference SystemThreadingTasks => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.threading.tasks", "4.3.0", "ref", "netstandard1.3", "System.Threading.Tasks.dll")); - - public static MetadataReference SystemThreadingTimer => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.threading.timer", "4.3.0", "ref", "netstandard1.2", "System.Threading.Timer.dll")); - - public static MetadataReference SystemXmlReaderWriter => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.xml.readerwriter", "4.3.0", "ref", "netstandard1.3", "System.Xml.ReaderWriter.dll")); - - public static MetadataReference SystemXmlXDocument => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.xml.xdocument", "4.3.0", "ref", "netstandard1.3", "System.Xml.XDocument.dll")); - } - - public static class NetStandard15 - { - public static MetadataReference MicrosoftWin32Primitives => CreateReferenceFromFile(Path.Combine(PackagesPath, "microsoft.win32.primitives", "4.3.0", "ref", "netstandard1.3", "Microsoft.Win32.Primitives.dll")); - - public static MetadataReference SystemAppContext => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.appcontext", "4.3.0", "ref", "netstandard1.3", "System.AppContext.dll")); - - public static MetadataReference SystemCollections => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.collections", "4.3.0", "ref", "netstandard1.3", "System.Collections.dll")); - - public static MetadataReference SystemCollectionsConcurrent => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.collections.concurrent", "4.3.0", "ref", "netstandard1.3", "System.Collections.Concurrent.dll")); - - public static MetadataReference SystemConsole => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.console", "4.3.0", "ref", "netstandard1.3", "System.Console.dll")); - - public static MetadataReference SystemDiagnosticsDebug => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.diagnostics.debug", "4.3.0", "ref", "netstandard1.3", "System.Diagnostics.Debug.dll")); - - public static MetadataReference SystemDiagnosticsTools => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.diagnostics.tools", "4.3.0", "ref", "netstandard1.0", "System.Diagnostics.Tools.dll")); - - public static MetadataReference SystemDiagnosticsTracing => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.diagnostics.tracing", "4.3.0", "ref", "netstandard1.5", "System.Diagnostics.Tracing.dll")); - - public static MetadataReference SystemGlobalization => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.globalization", "4.3.0", "ref", "netstandard1.3", "System.Globalization.dll")); - - public static MetadataReference SystemGlobalizationCalendars => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.globalization.calendars", "4.3.0", "ref", "netstandard1.3", "System.Globalization.Calendars.dll")); - - public static MetadataReference SystemIO => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.io", "4.3.0", "ref", "netstandard1.5", "System.IO.dll")); - - public static MetadataReference SystemIOCompression => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.io.compression", "4.3.0", "ref", "netstandard1.3", "System.IO.Compression.dll")); - - public static MetadataReference SystemIOCompressionZipFile => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.io.compression.zipfile", "4.3.0", "ref", "netstandard1.3", "System.IO.Compression.ZipFile.dll")); - - public static MetadataReference SystemIOFileSystem => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.io.filesystem", "4.3.0", "ref", "netstandard1.3", "System.IO.FileSystem.dll")); - - public static MetadataReference SystemIOFileSystemPrimitives => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.io.filesystem.primitives", "4.3.0", "ref", "netstandard1.3", "System.IO.FileSystem.Primitives.dll")); - - public static MetadataReference SystemLinq => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.linq", "4.3.0", "ref", "netstandard1.0", "System.Linq.dll")); - - public static MetadataReference SystemLinqExpressions => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.linq.expressions", "4.3.0", "ref", "netstandard1.3", "System.Linq.Expressions.dll")); - - public static MetadataReference SystemNetHttp => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.net.http", "4.3.0", "ref", "netstandard1.3", "System.Net.Http.dll")); - - public static MetadataReference SystemNetPrimitives => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.net.primitives", "4.3.0", "ref", "netstandard1.3", "System.Net.Primitives.dll")); - - public static MetadataReference SystemNetSockets => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.net.sockets", "4.3.0", "ref", "netstandard1.3", "System.Net.Sockets.dll")); - - public static MetadataReference SystemObjectModel => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.objectmodel", "4.3.0", "ref", "netstandard1.3", "System.ObjectModel.dll")); - - public static MetadataReference SystemReflection => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.reflection", "4.3.0", "ref", "netstandard1.3", "System.Reflection.dll")); - - public static MetadataReference SystemReflectionExtensions => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.reflection.extensions", "4.3.0", "ref", "netstandard1.0", "System.Reflection.Extensions.dll")); - - public static MetadataReference SystemReflectionPrimitives => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.reflection.primitives", "4.3.0", "ref", "netstandard1.0", "System.Reflection.Primitives.dll")); - - public static MetadataReference SystemResourcesResourceManager => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.resources.resourcemanager", "4.3.0", "ref", "netstandard1.0", "System.Resources.ResourceManager.dll")); - - public static MetadataReference SystemRuntime => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.runtime", "4.3.0", "ref", "netstandard1.5", "System.Runtime.dll")); - - public static MetadataReference SystemRuntimeExtensions => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.runtime.extensions", "4.3.0", "ref", "netstandard1.5", "System.Runtime.Extensions.dll")); - - public static MetadataReference SystemRuntimeHandles => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.runtime.handles", "4.3.0", "ref", "netstandard1.3", "System.Runtime.Handles.dll")); - - public static MetadataReference SystemRuntimeInteropServices => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.runtime.interopservices", "4.3.0", "ref", "netstandard1.5", "System.Runtime.InteropServices.dll")); - - public static MetadataReference SystemRuntimeInteropServicesRuntimeInformation => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.runtime.interopservices.runtimeinformation", "4.3.0", "ref", "netstandard1.1", "System.Runtime.InteropServices.RuntimeInformation.dll")); - - public static MetadataReference SystemRuntimeNumerics => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.runtime.numerics", "4.3.0", "ref", "netstandard1.1", "System.Runtime.Numerics.dll")); - - public static MetadataReference SystemSecurityCryptographyAlgorithms => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.security.cryptography.algorithms", "4.3.0", "ref", "netstandard1.4", "System.Security.Cryptography.Algorithms.dll")); - - public static MetadataReference SystemSecurityCryptographyEncoding => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.security.cryptography.encoding", "4.3.0", "ref", "netstandard1.3", "System.Security.Cryptography.Encoding.dll")); - - public static MetadataReference SystemSecurityCryptographyPrimitives => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.security.cryptography.primitives", "4.3.0", "ref", "netstandard1.3", "System.Security.Cryptography.Primitives.dll")); - - public static MetadataReference SystemSecurityCryptographyX509Certificates => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.security.cryptography.x509certificates", "4.3.0", "ref", "netstandard1.4", "System.Security.Cryptography.X509Certificates.dll")); - - public static MetadataReference SystemTextEncoding => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.text.encoding", "4.3.0", "ref", "netstandard1.3", "System.Text.Encoding.dll")); - - public static MetadataReference SystemTextEncodingExtensions => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.text.encoding.extensions", "4.3.0", "ref", "netstandard1.3", "System.Text.Encoding.Extensions.dll")); - - public static MetadataReference SystemTextRegularExpressions => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.text.regularexpressions", "4.3.0", "ref", "netstandard1.3", "System.Text.RegularExpressions.dll")); - - public static MetadataReference SystemThreading => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.threading", "4.3.0", "ref", "netstandard1.3", "System.Threading.dll")); - - public static MetadataReference SystemThreadingTasks => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.threading.tasks", "4.3.0", "ref", "netstandard1.3", "System.Threading.Tasks.dll")); - - public static MetadataReference SystemThreadingTimer => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.threading.timer", "4.3.0", "ref", "netstandard1.2", "System.Threading.Timer.dll")); - - public static MetadataReference SystemXmlReaderWriter => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.xml.readerwriter", "4.3.0", "ref", "netstandard1.3", "System.Xml.ReaderWriter.dll")); - - public static MetadataReference SystemXmlXDocument => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.xml.xdocument", "4.3.0", "ref", "netstandard1.3", "System.Xml.XDocument.dll")); - } - - public static class NetStandard16 - { - public static MetadataReference MicrosoftWin32Primitives => CreateReferenceFromFile(Path.Combine(PackagesPath, "microsoft.win32.primitives", "4.3.0", "ref", "netstandard1.3", "Microsoft.Win32.Primitives.dll")); - - public static MetadataReference SystemAppContext => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.appcontext", "4.3.0", "ref", "netstandard1.6", "System.AppContext.dll")); - - public static MetadataReference SystemCollections => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.collections", "4.3.0", "ref", "netstandard1.3", "System.Collections.dll")); - - public static MetadataReference SystemCollectionsConcurrent => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.collections.concurrent", "4.3.0", "ref", "netstandard1.3", "System.Collections.Concurrent.dll")); - - public static MetadataReference SystemConsole => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.console", "4.3.0", "ref", "netstandard1.3", "System.Console.dll")); - - public static MetadataReference SystemDiagnosticsDebug => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.diagnostics.debug", "4.3.0", "ref", "netstandard1.3", "System.Diagnostics.Debug.dll")); - - public static MetadataReference SystemDiagnosticsTools => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.diagnostics.tools", "4.3.0", "ref", "netstandard1.0", "System.Diagnostics.Tools.dll")); - - public static MetadataReference SystemDiagnosticsTracing => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.diagnostics.tracing", "4.3.0", "ref", "netstandard1.5", "System.Diagnostics.Tracing.dll")); - - public static MetadataReference SystemGlobalization => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.globalization", "4.3.0", "ref", "netstandard1.3", "System.Globalization.dll")); - - public static MetadataReference SystemGlobalizationCalendars => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.globalization.calendars", "4.3.0", "ref", "netstandard1.3", "System.Globalization.Calendars.dll")); - - public static MetadataReference SystemIO => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.io", "4.3.0", "ref", "netstandard1.5", "System.IO.dll")); - - public static MetadataReference SystemIOCompression => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.io.compression", "4.3.0", "ref", "netstandard1.3", "System.IO.Compression.dll")); - - public static MetadataReference SystemIOCompressionZipFile => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.io.compression.zipfile", "4.3.0", "ref", "netstandard1.3", "System.IO.Compression.ZipFile.dll")); - - public static MetadataReference SystemIOFileSystem => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.io.filesystem", "4.3.0", "ref", "netstandard1.3", "System.IO.FileSystem.dll")); - - public static MetadataReference SystemIOFileSystemPrimitives => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.io.filesystem.primitives", "4.3.0", "ref", "netstandard1.3", "System.IO.FileSystem.Primitives.dll")); - - public static MetadataReference SystemLinq => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.linq", "4.3.0", "ref", "netstandard1.6", "System.Linq.dll")); - - public static MetadataReference SystemLinqExpressions => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.linq.expressions", "4.3.0", "ref", "netstandard1.6", "System.Linq.Expressions.dll")); - - public static MetadataReference SystemNetHttp => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.net.http", "4.3.0", "ref", "netstandard1.3", "System.Net.Http.dll")); - - public static MetadataReference SystemNetPrimitives => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.net.primitives", "4.3.0", "ref", "netstandard1.3", "System.Net.Primitives.dll")); - - public static MetadataReference SystemNetSockets => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.net.sockets", "4.3.0", "ref", "netstandard1.3", "System.Net.Sockets.dll")); - - public static MetadataReference SystemObjectModel => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.objectmodel", "4.3.0", "ref", "netstandard1.3", "System.ObjectModel.dll")); - - public static MetadataReference SystemReflection => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.reflection", "4.3.0", "ref", "netstandard1.3", "System.Reflection.dll")); - - public static MetadataReference SystemReflectionExtensions => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.reflection.extensions", "4.3.0", "ref", "netstandard1.0", "System.Reflection.Extensions.dll")); - - public static MetadataReference SystemReflectionPrimitives => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.reflection.primitives", "4.3.0", "ref", "netstandard1.0", "System.Reflection.Primitives.dll")); - - public static MetadataReference SystemResourcesResourceManager => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.resources.resourcemanager", "4.3.0", "ref", "netstandard1.0", "System.Resources.ResourceManager.dll")); - - public static MetadataReference SystemRuntime => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.runtime", "4.3.0", "ref", "netstandard1.5", "System.Runtime.dll")); - - public static MetadataReference SystemRuntimeExtensions => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.runtime.extensions", "4.3.0", "ref", "netstandard1.5", "System.Runtime.Extensions.dll")); - - public static MetadataReference SystemRuntimeHandles => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.runtime.handles", "4.3.0", "ref", "netstandard1.3", "System.Runtime.Handles.dll")); - - public static MetadataReference SystemRuntimeInteropServices => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.runtime.interopservices", "4.3.0", "ref", "netstandard1.5", "System.Runtime.InteropServices.dll")); - - public static MetadataReference SystemRuntimeInteropServicesRuntimeInformation => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.runtime.interopservices.runtimeinformation", "4.3.0", "ref", "netstandard1.1", "System.Runtime.InteropServices.RuntimeInformation.dll")); - - public static MetadataReference SystemRuntimeNumerics => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.runtime.numerics", "4.3.0", "ref", "netstandard1.1", "System.Runtime.Numerics.dll")); - - public static MetadataReference SystemSecurityCryptographyAlgorithms => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.security.cryptography.algorithms", "4.3.0", "ref", "netstandard1.6", "System.Security.Cryptography.Algorithms.dll")); - - public static MetadataReference SystemSecurityCryptographyEncoding => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.security.cryptography.encoding", "4.3.0", "ref", "netstandard1.3", "System.Security.Cryptography.Encoding.dll")); - - public static MetadataReference SystemSecurityCryptographyPrimitives => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.security.cryptography.primitives", "4.3.0", "ref", "netstandard1.3", "System.Security.Cryptography.Primitives.dll")); - - public static MetadataReference SystemSecurityCryptographyX509Certificates => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.security.cryptography.x509certificates", "4.3.0", "ref", "netstandard1.4", "System.Security.Cryptography.X509Certificates.dll")); - - public static MetadataReference SystemTextEncoding => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.text.encoding", "4.3.0", "ref", "netstandard1.3", "System.Text.Encoding.dll")); - - public static MetadataReference SystemTextEncodingExtensions => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.text.encoding.extensions", "4.3.0", "ref", "netstandard1.3", "System.Text.Encoding.Extensions.dll")); - - public static MetadataReference SystemTextRegularExpressions => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.text.regularexpressions", "4.3.0", "ref", "netstandard1.6", "System.Text.RegularExpressions.dll")); - - public static MetadataReference SystemThreading => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.threading", "4.3.0", "ref", "netstandard1.3", "System.Threading.dll")); - - public static MetadataReference SystemThreadingTasks => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.threading.tasks", "4.3.0", "ref", "netstandard1.3", "System.Threading.Tasks.dll")); - - public static MetadataReference SystemThreadingTimer => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.threading.timer", "4.3.0", "ref", "netstandard1.2", "System.Threading.Timer.dll")); - - public static MetadataReference SystemXmlReaderWriter => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.xml.readerwriter", "4.3.0", "ref", "netstandard1.3", "System.Xml.ReaderWriter.dll")); - - public static MetadataReference SystemXmlXDocument => CreateReferenceFromFile(Path.Combine(PackagesPath, "system.xml.xdocument", "4.3.0", "ref", "netstandard1.3", "System.Xml.XDocument.dll")); - } - - public static class NetStandard20 - { - private static string AssemblyPath => Path.Combine(PackagesPath, "netstandard.library", "2.0.0", "build", "netstandard2.0", "ref"); - - public static MetadataReference Netstandard => CreateReferenceFromFile(Path.Combine(AssemblyPath, "netstandard.dll")); - } - } - - public static class Runtime - { - private static MetadataReference? _microsoftVisualBasicReference; - - public static MetadataReference MicrosoftCodeAnalysis { get; } = CreateReferenceFromFile(typeof(Compilation).GetTypeInfo().Assembly.Location); - - public static MetadataReference MicrosoftVisualBasic - { - [MethodImpl(MethodImplOptions.NoInlining)] - get - { - if (_microsoftVisualBasicReference is null) - { - try - { - _microsoftVisualBasicReference = CreateReferenceFromFile(typeof(Microsoft.VisualBasic.Strings).GetTypeInfo().Assembly.Location); - } - catch (Exception e) - { - throw new PlatformNotSupportedException("Microsoft.VisualBasic is not supported on this platform", e); - } - } - - return _microsoftVisualBasicReference; - } - } - - public static MetadataReference SystemCollectionsImmutable { get; } = CreateReferenceFromFile(typeof(ImmutableArray).GetTypeInfo().Assembly.Location); - } } } diff --git a/src/Microsoft.CodeAnalysis.Testing/Microsoft.CodeAnalysis.Analyzer.Testing/Microsoft.CodeAnalysis.Analyzer.Testing.csproj b/src/Microsoft.CodeAnalysis.Testing/Microsoft.CodeAnalysis.Analyzer.Testing/Microsoft.CodeAnalysis.Analyzer.Testing.csproj index 648759321a..a07693507c 100644 --- a/src/Microsoft.CodeAnalysis.Testing/Microsoft.CodeAnalysis.Analyzer.Testing/Microsoft.CodeAnalysis.Analyzer.Testing.csproj +++ b/src/Microsoft.CodeAnalysis.Testing/Microsoft.CodeAnalysis.Analyzer.Testing/Microsoft.CodeAnalysis.Analyzer.Testing.csproj @@ -1,7 +1,7 @@  - netstandard1.5;netstandard2.0;net452 + netstandard1.5;netstandard2.0;net452;net46;net472 Microsoft.CodeAnalysis.Analyzer.Testing Microsoft.CodeAnalysis.Testing @@ -13,12 +13,42 @@ Roslyn Analyzer Test Framework Common + + + + 4.5.3 + + + + + 4.9.4 + + + + + 4.6.4 + + + + + 5.3.1 + + + + + + + + + + + diff --git a/src/Microsoft.CodeAnalysis.Testing/Microsoft.CodeAnalysis.Analyzer.Testing/PublicAPI.Unshipped.txt b/src/Microsoft.CodeAnalysis.Testing/Microsoft.CodeAnalysis.Analyzer.Testing/PublicAPI.Unshipped.txt index 29bcd95def..dec843f49d 100644 --- a/src/Microsoft.CodeAnalysis.Testing/Microsoft.CodeAnalysis.Analyzer.Testing/PublicAPI.Unshipped.txt +++ b/src/Microsoft.CodeAnalysis.Testing/Microsoft.CodeAnalysis.Analyzer.Testing/PublicAPI.Unshipped.txt @@ -2,7 +2,7 @@ Microsoft.CodeAnalysis.Testing.AnalyzerTest Microsoft.CodeAnalysis.Testing.AnalyzerTest.AnalyzerTest() -> void Microsoft.CodeAnalysis.Testing.AnalyzerTest.CompilerDiagnostics.get -> Microsoft.CodeAnalysis.Testing.CompilerDiagnostics Microsoft.CodeAnalysis.Testing.AnalyzerTest.CompilerDiagnostics.set -> void -Microsoft.CodeAnalysis.Testing.AnalyzerTest.CreateProject((string filename, Microsoft.CodeAnalysis.Text.SourceText content)[] sources, (string filename, Microsoft.CodeAnalysis.Text.SourceText content)[] additionalFiles, Microsoft.CodeAnalysis.Testing.ProjectState[] additionalProjects, Microsoft.CodeAnalysis.MetadataReference[] additionalMetadataReferences, string language) -> Microsoft.CodeAnalysis.Project +Microsoft.CodeAnalysis.Testing.AnalyzerTest.CreateProjectAsync((string filename, Microsoft.CodeAnalysis.Text.SourceText content)[] sources, (string filename, Microsoft.CodeAnalysis.Text.SourceText content)[] additionalFiles, Microsoft.CodeAnalysis.Testing.ProjectState[] additionalProjects, Microsoft.CodeAnalysis.MetadataReference[] additionalMetadataReferences, string language, System.Threading.CancellationToken cancellationToken) -> System.Threading.Tasks.Task Microsoft.CodeAnalysis.Testing.AnalyzerTest.DisabledDiagnostics.get -> System.Collections.Generic.List Microsoft.CodeAnalysis.Testing.AnalyzerTest.ExpectedDiagnostics.get -> System.Collections.Generic.List Microsoft.CodeAnalysis.Testing.AnalyzerTest.GetSortedDiagnosticsAsync(Microsoft.CodeAnalysis.Solution solution, System.Collections.Immutable.ImmutableArray analyzers, Microsoft.CodeAnalysis.Testing.CompilerDiagnostics compilerDiagnostics, System.Threading.CancellationToken cancellationToken) -> System.Threading.Tasks.Task> @@ -90,29 +90,6 @@ Microsoft.CodeAnalysis.Testing.MetadataReferenceCollection.Add(System.Reflection Microsoft.CodeAnalysis.Testing.MetadataReferenceCollection.Add(string path) -> void Microsoft.CodeAnalysis.Testing.MetadataReferenceCollection.MetadataReferenceCollection() -> void Microsoft.CodeAnalysis.Testing.MetadataReferences -Microsoft.CodeAnalysis.Testing.MetadataReferences.NetFramework -Microsoft.CodeAnalysis.Testing.MetadataReferences.NetFramework.Net20 -Microsoft.CodeAnalysis.Testing.MetadataReferences.NetFramework.Net40 -Microsoft.CodeAnalysis.Testing.MetadataReferences.NetFramework.Net45 -Microsoft.CodeAnalysis.Testing.MetadataReferences.NetFramework.Net451 -Microsoft.CodeAnalysis.Testing.MetadataReferences.NetFramework.Net452 -Microsoft.CodeAnalysis.Testing.MetadataReferences.NetFramework.Net46 -Microsoft.CodeAnalysis.Testing.MetadataReferences.NetFramework.Net461 -Microsoft.CodeAnalysis.Testing.MetadataReferences.NetFramework.Net462 -Microsoft.CodeAnalysis.Testing.MetadataReferences.NetFramework.Net47 -Microsoft.CodeAnalysis.Testing.MetadataReferences.NetFramework.Net471 -Microsoft.CodeAnalysis.Testing.MetadataReferences.NetFramework.Net472 -Microsoft.CodeAnalysis.Testing.MetadataReferences.NetFramework.Net48 -Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard -Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard10 -Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard11 -Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard12 -Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard13 -Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard14 -Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard15 -Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard16 -Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard20 -Microsoft.CodeAnalysis.Testing.MetadataReferences.Runtime Microsoft.CodeAnalysis.Testing.ProjectState Microsoft.CodeAnalysis.Testing.ProjectState.AdditionalReferences.get -> Microsoft.CodeAnalysis.Testing.MetadataReferenceCollection Microsoft.CodeAnalysis.Testing.ProjectState.AssemblyName.get -> string @@ -120,7 +97,12 @@ Microsoft.CodeAnalysis.Testing.ProjectState.Name.get -> string Microsoft.CodeAnalysis.Testing.ProjectState.ProjectState(string name, string defaultPrefix, string defaultExtension) -> void Microsoft.CodeAnalysis.Testing.ProjectState.Sources.get -> Microsoft.CodeAnalysis.Testing.SourceFileList Microsoft.CodeAnalysis.Testing.ReferenceAssemblies -Microsoft.CodeAnalysis.Testing.ReferenceAssemblies.LanguageSpecificReferences.get -> System.Collections.Immutable.ImmutableDictionary> +Microsoft.CodeAnalysis.Testing.ReferenceAssemblies.AddAssemblies(System.Collections.Immutable.ImmutableArray assemblies) -> Microsoft.CodeAnalysis.Testing.ReferenceAssemblies +Microsoft.CodeAnalysis.Testing.ReferenceAssemblies.AddLanguageSpecificAssemblies(string language, System.Collections.Immutable.ImmutableArray assemblies) -> Microsoft.CodeAnalysis.Testing.ReferenceAssemblies +Microsoft.CodeAnalysis.Testing.ReferenceAssemblies.AddPackages(System.Collections.Immutable.ImmutableArray packages) -> Microsoft.CodeAnalysis.Testing.ReferenceAssemblies +Microsoft.CodeAnalysis.Testing.ReferenceAssemblies.Assemblies.get -> System.Collections.Immutable.ImmutableArray +Microsoft.CodeAnalysis.Testing.ReferenceAssemblies.AssemblyIdentityComparer.get -> Microsoft.CodeAnalysis.AssemblyIdentityComparer +Microsoft.CodeAnalysis.Testing.ReferenceAssemblies.LanguageSpecificAssemblies.get -> System.Collections.Immutable.ImmutableDictionary> Microsoft.CodeAnalysis.Testing.ReferenceAssemblies.NetCore Microsoft.CodeAnalysis.Testing.ReferenceAssemblies.NetFramework Microsoft.CodeAnalysis.Testing.ReferenceAssemblies.NetFramework.Net20 @@ -136,9 +118,18 @@ Microsoft.CodeAnalysis.Testing.ReferenceAssemblies.NetFramework.Net471 Microsoft.CodeAnalysis.Testing.ReferenceAssemblies.NetFramework.Net472 Microsoft.CodeAnalysis.Testing.ReferenceAssemblies.NetFramework.Net48 Microsoft.CodeAnalysis.Testing.ReferenceAssemblies.NetStandard -Microsoft.CodeAnalysis.Testing.ReferenceAssemblies.ReferenceAssemblies(System.Collections.Immutable.ImmutableArray references, System.Collections.Immutable.ImmutableDictionary> languageSpecificReferences) -> void -Microsoft.CodeAnalysis.Testing.ReferenceAssemblies.References.get -> System.Collections.Immutable.ImmutableArray -Microsoft.CodeAnalysis.Testing.ReferenceAssemblies.Runtime +Microsoft.CodeAnalysis.Testing.ReferenceAssemblies.Packages.get -> System.Collections.Immutable.ImmutableArray +Microsoft.CodeAnalysis.Testing.ReferenceAssemblies.ReferenceAssemblies(string targetFramework) -> void +Microsoft.CodeAnalysis.Testing.ReferenceAssemblies.ReferenceAssemblies(string targetFramework, NuGet.Packaging.Core.PackageIdentity referenceAssemblyPackage, System.Collections.Immutable.ImmutableArray relativePaths) -> void +Microsoft.CodeAnalysis.Testing.ReferenceAssemblies.ReferenceAssemblyPackage.get -> NuGet.Packaging.Core.PackageIdentity +Microsoft.CodeAnalysis.Testing.ReferenceAssemblies.RelativePaths.get -> System.Collections.Immutable.ImmutableArray +Microsoft.CodeAnalysis.Testing.ReferenceAssemblies.ResolveAsync(string language, System.Threading.CancellationToken cancellationToken) -> System.Threading.Tasks.Task> +Microsoft.CodeAnalysis.Testing.ReferenceAssemblies.TargetFramework.get -> string +Microsoft.CodeAnalysis.Testing.ReferenceAssemblies.WithAssemblies(System.Collections.Immutable.ImmutableArray assemblies) -> Microsoft.CodeAnalysis.Testing.ReferenceAssemblies +Microsoft.CodeAnalysis.Testing.ReferenceAssemblies.WithAssemblyIdentityComparer(Microsoft.CodeAnalysis.AssemblyIdentityComparer assemblyIdentityComparer) -> Microsoft.CodeAnalysis.Testing.ReferenceAssemblies +Microsoft.CodeAnalysis.Testing.ReferenceAssemblies.WithLanguageSpecificAssemblies(System.Collections.Immutable.ImmutableDictionary> languageSpecificAssemblies) -> Microsoft.CodeAnalysis.Testing.ReferenceAssemblies +Microsoft.CodeAnalysis.Testing.ReferenceAssemblies.WithLanguageSpecificAssemblies(string language, System.Collections.Immutable.ImmutableArray assemblies) -> Microsoft.CodeAnalysis.Testing.ReferenceAssemblies +Microsoft.CodeAnalysis.Testing.ReferenceAssemblies.WithPackages(System.Collections.Immutable.ImmutableArray packages) -> Microsoft.CodeAnalysis.Testing.ReferenceAssemblies Microsoft.CodeAnalysis.Testing.SolutionState Microsoft.CodeAnalysis.Testing.SolutionState.AdditionalFiles.get -> Microsoft.CodeAnalysis.Testing.SourceFileCollection Microsoft.CodeAnalysis.Testing.SolutionState.AdditionalFilesFactories.get -> System.Collections.Generic.List>> @@ -185,391 +176,11 @@ static Microsoft.CodeAnalysis.Testing.AnalyzerVerifier Microsoft.CodeAnalysis.Testing.DiagnosticResult static Microsoft.CodeAnalysis.Testing.DiagnosticResult.CompilerWarning(string identifier) -> Microsoft.CodeAnalysis.Testing.DiagnosticResult static Microsoft.CodeAnalysis.Testing.IVerifierExtensions.EqualOrDiff(this Microsoft.CodeAnalysis.Testing.IVerifier verifier, string expected, string actual, string message = null) -> void -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetFramework.Net20.MicrosoftVisualBasic.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetFramework.Net20.Mscorlib.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetFramework.Net20.System.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetFramework.Net20.SystemData.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetFramework.Net20.SystemDrawing.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetFramework.Net20.SystemWindowsForms.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetFramework.Net20.SystemXml.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetFramework.Net40.MicrosoftCSharp.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetFramework.Net40.MicrosoftVisualBasic.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetFramework.Net40.Mscorlib.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetFramework.Net40.PresentationCore.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetFramework.Net40.PresentationFramework.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetFramework.Net40.System.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetFramework.Net40.SystemCore.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetFramework.Net40.SystemData.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetFramework.Net40.SystemDataDataSetExtensions.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetFramework.Net40.SystemDeployment.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetFramework.Net40.SystemDrawing.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetFramework.Net40.SystemWindowsForms.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetFramework.Net40.SystemXaml.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetFramework.Net40.SystemXml.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetFramework.Net40.SystemXmlLinq.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetFramework.Net40.WindowsBase.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetFramework.Net46.MicrosoftCSharp.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetFramework.Net46.MicrosoftVisualBasic.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetFramework.Net46.Mscorlib.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetFramework.Net46.PresentationCore.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetFramework.Net46.PresentationFramework.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetFramework.Net46.System.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetFramework.Net46.SystemCore.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetFramework.Net46.SystemData.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetFramework.Net46.SystemDataDataSetExtensions.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetFramework.Net46.SystemDeployment.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetFramework.Net46.SystemDrawing.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetFramework.Net46.SystemNetHttp.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetFramework.Net46.SystemWindowsForms.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetFramework.Net46.SystemXaml.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetFramework.Net46.SystemXml.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetFramework.Net46.SystemXmlLinq.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetFramework.Net46.WindowsBase.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetFramework.Net461.MicrosoftCSharp.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetFramework.Net461.MicrosoftVisualBasic.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetFramework.Net461.Mscorlib.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetFramework.Net461.PresentationCore.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetFramework.Net461.PresentationFramework.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetFramework.Net461.System.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetFramework.Net461.SystemCore.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetFramework.Net461.SystemData.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetFramework.Net461.SystemDataDataSetExtensions.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetFramework.Net461.SystemDeployment.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetFramework.Net461.SystemDrawing.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetFramework.Net461.SystemNetHttp.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetFramework.Net461.SystemWindowsForms.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetFramework.Net461.SystemXaml.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetFramework.Net461.SystemXml.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetFramework.Net461.SystemXmlLinq.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetFramework.Net461.WindowsBase.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetFramework.Net462.MicrosoftCSharp.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetFramework.Net462.MicrosoftVisualBasic.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetFramework.Net462.Mscorlib.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetFramework.Net462.PresentationCore.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetFramework.Net462.PresentationFramework.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetFramework.Net462.System.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetFramework.Net462.SystemCore.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetFramework.Net462.SystemData.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetFramework.Net462.SystemDataDataSetExtensions.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetFramework.Net462.SystemDeployment.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetFramework.Net462.SystemDrawing.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetFramework.Net462.SystemNetHttp.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetFramework.Net462.SystemWindowsForms.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetFramework.Net462.SystemXaml.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetFramework.Net462.SystemXml.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetFramework.Net462.SystemXmlLinq.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetFramework.Net462.WindowsBase.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetFramework.Net47.MicrosoftCSharp.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetFramework.Net47.MicrosoftVisualBasic.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetFramework.Net47.Mscorlib.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetFramework.Net47.PresentationCore.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetFramework.Net47.PresentationFramework.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetFramework.Net47.System.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetFramework.Net47.SystemCore.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetFramework.Net47.SystemData.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetFramework.Net47.SystemDataDataSetExtensions.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetFramework.Net47.SystemDeployment.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetFramework.Net47.SystemDrawing.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetFramework.Net47.SystemNetHttp.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetFramework.Net47.SystemWindowsForms.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetFramework.Net47.SystemXaml.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetFramework.Net47.SystemXml.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetFramework.Net47.SystemXmlLinq.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetFramework.Net47.WindowsBase.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetFramework.Net471.MicrosoftCSharp.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetFramework.Net471.MicrosoftVisualBasic.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetFramework.Net471.Mscorlib.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetFramework.Net471.PresentationCore.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetFramework.Net471.PresentationFramework.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetFramework.Net471.System.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetFramework.Net471.SystemCore.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetFramework.Net471.SystemData.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetFramework.Net471.SystemDataDataSetExtensions.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetFramework.Net471.SystemDeployment.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetFramework.Net471.SystemDrawing.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetFramework.Net471.SystemNetHttp.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetFramework.Net471.SystemWindowsForms.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetFramework.Net471.SystemXaml.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetFramework.Net471.SystemXml.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetFramework.Net471.SystemXmlLinq.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetFramework.Net471.WindowsBase.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetFramework.Net472.MicrosoftCSharp.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetFramework.Net472.MicrosoftVisualBasic.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetFramework.Net472.Mscorlib.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetFramework.Net472.PresentationCore.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetFramework.Net472.PresentationFramework.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetFramework.Net472.System.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetFramework.Net472.SystemCore.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetFramework.Net472.SystemData.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetFramework.Net472.SystemDataDataSetExtensions.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetFramework.Net472.SystemDeployment.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetFramework.Net472.SystemDrawing.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetFramework.Net472.SystemNetHttp.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetFramework.Net472.SystemWindowsForms.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetFramework.Net472.SystemXaml.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetFramework.Net472.SystemXml.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetFramework.Net472.SystemXmlLinq.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetFramework.Net472.WindowsBase.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard10.SystemCollections.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard10.SystemDiagnosticsDebug.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard10.SystemDiagnosticsTools.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard10.SystemGlobalization.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard10.SystemIO.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard10.SystemLinq.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard10.SystemLinqExpressions.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard10.SystemNetPrimitives.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard10.SystemObjectModel.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard10.SystemReflection.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard10.SystemReflectionExtensions.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard10.SystemReflectionPrimitives.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard10.SystemResourcesResourceManager.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard10.SystemRuntime.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard10.SystemRuntimeExtensions.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard10.SystemTextEncoding.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard10.SystemTextEncodingExtensions.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard10.SystemTextRegularExpressions.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard10.SystemThreading.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard10.SystemThreadingTasks.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard10.SystemXmlReaderWriter.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard10.SystemXmlXDocument.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard11.SystemCollections.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard11.SystemCollectionsConcurrent.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard11.SystemDiagnosticsDebug.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard11.SystemDiagnosticsTools.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard11.SystemDiagnosticsTracing.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard11.SystemGlobalization.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard11.SystemIO.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard11.SystemIOCompression.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard11.SystemLinq.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard11.SystemLinqExpressions.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard11.SystemNetHttp.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard11.SystemNetPrimitives.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard11.SystemObjectModel.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard11.SystemReflection.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard11.SystemReflectionExtensions.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard11.SystemReflectionPrimitives.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard11.SystemResourcesResourceManager.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard11.SystemRuntime.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard11.SystemRuntimeExtensions.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard11.SystemRuntimeInteropServices.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard11.SystemRuntimeInteropServicesRuntimeInformation.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard11.SystemRuntimeNumerics.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard11.SystemTextEncoding.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard11.SystemTextEncodingExtensions.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard11.SystemTextRegularExpressions.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard11.SystemThreading.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard11.SystemThreadingTasks.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard11.SystemXmlReaderWriter.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard11.SystemXmlXDocument.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard12.SystemCollections.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard12.SystemCollectionsConcurrent.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard12.SystemDiagnosticsDebug.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard12.SystemDiagnosticsTools.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard12.SystemDiagnosticsTracing.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard12.SystemGlobalization.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard12.SystemIO.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard12.SystemIOCompression.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard12.SystemLinq.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard12.SystemLinqExpressions.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard12.SystemNetHttp.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard12.SystemNetPrimitives.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard12.SystemObjectModel.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard12.SystemReflection.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard12.SystemReflectionExtensions.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard12.SystemReflectionPrimitives.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard12.SystemResourcesResourceManager.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard12.SystemRuntime.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard12.SystemRuntimeExtensions.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard12.SystemRuntimeInteropServices.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard12.SystemRuntimeInteropServicesRuntimeInformation.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard12.SystemRuntimeNumerics.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard12.SystemTextEncoding.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard12.SystemTextEncodingExtensions.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard12.SystemTextRegularExpressions.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard12.SystemThreading.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard12.SystemThreadingTasks.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard12.SystemThreadingTimer.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard12.SystemXmlReaderWriter.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard12.SystemXmlXDocument.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard13.MicrosoftWin32Primitives.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard13.SystemAppContext.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard13.SystemCollections.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard13.SystemCollectionsConcurrent.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard13.SystemConsole.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard13.SystemDiagnosticsDebug.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard13.SystemDiagnosticsTools.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard13.SystemDiagnosticsTracing.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard13.SystemGlobalization.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard13.SystemGlobalizationCalendars.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard13.SystemIO.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard13.SystemIOCompression.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard13.SystemIOCompressionZipFile.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard13.SystemIOFileSystem.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard13.SystemIOFileSystemPrimitives.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard13.SystemLinq.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard13.SystemLinqExpressions.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard13.SystemNetHttp.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard13.SystemNetPrimitives.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard13.SystemNetSockets.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard13.SystemObjectModel.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard13.SystemReflection.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard13.SystemReflectionExtensions.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard13.SystemReflectionPrimitives.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard13.SystemResourcesResourceManager.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard13.SystemRuntime.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard13.SystemRuntimeExtensions.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard13.SystemRuntimeHandles.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard13.SystemRuntimeInteropServices.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard13.SystemRuntimeInteropServicesRuntimeInformation.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard13.SystemRuntimeNumerics.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard13.SystemSecurityCryptographyAlgorithms.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard13.SystemSecurityCryptographyEncoding.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard13.SystemSecurityCryptographyPrimitives.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard13.SystemSecurityCryptographyX509Certificates.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard13.SystemTextEncoding.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard13.SystemTextEncodingExtensions.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard13.SystemTextRegularExpressions.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard13.SystemThreading.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard13.SystemThreadingTasks.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard13.SystemThreadingTimer.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard13.SystemXmlReaderWriter.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard13.SystemXmlXDocument.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard14.MicrosoftWin32Primitives.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard14.SystemAppContext.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard14.SystemCollections.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard14.SystemCollectionsConcurrent.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard14.SystemConsole.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard14.SystemDiagnosticsDebug.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard14.SystemDiagnosticsTools.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard14.SystemDiagnosticsTracing.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard14.SystemGlobalization.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard14.SystemGlobalizationCalendars.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard14.SystemIO.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard14.SystemIOCompression.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard14.SystemIOCompressionZipFile.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard14.SystemIOFileSystem.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard14.SystemIOFileSystemPrimitives.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard14.SystemLinq.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard14.SystemLinqExpressions.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard14.SystemNetHttp.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard14.SystemNetPrimitives.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard14.SystemNetSockets.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard14.SystemObjectModel.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard14.SystemReflection.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard14.SystemReflectionExtensions.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard14.SystemReflectionPrimitives.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard14.SystemResourcesResourceManager.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard14.SystemRuntime.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard14.SystemRuntimeExtensions.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard14.SystemRuntimeHandles.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard14.SystemRuntimeInteropServices.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard14.SystemRuntimeInteropServicesRuntimeInformation.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard14.SystemRuntimeNumerics.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard14.SystemSecurityCryptographyAlgorithms.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard14.SystemSecurityCryptographyEncoding.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard14.SystemSecurityCryptographyPrimitives.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard14.SystemSecurityCryptographyX509Certificates.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard14.SystemTextEncoding.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard14.SystemTextEncodingExtensions.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard14.SystemTextRegularExpressions.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard14.SystemThreading.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard14.SystemThreadingTasks.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard14.SystemThreadingTimer.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard14.SystemXmlReaderWriter.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard14.SystemXmlXDocument.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard15.MicrosoftWin32Primitives.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard15.SystemAppContext.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard15.SystemCollections.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard15.SystemCollectionsConcurrent.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard15.SystemConsole.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard15.SystemDiagnosticsDebug.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard15.SystemDiagnosticsTools.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard15.SystemDiagnosticsTracing.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard15.SystemGlobalization.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard15.SystemGlobalizationCalendars.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard15.SystemIO.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard15.SystemIOCompression.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard15.SystemIOCompressionZipFile.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard15.SystemIOFileSystem.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard15.SystemIOFileSystemPrimitives.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard15.SystemLinq.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard15.SystemLinqExpressions.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard15.SystemNetHttp.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard15.SystemNetPrimitives.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard15.SystemNetSockets.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard15.SystemObjectModel.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard15.SystemReflection.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard15.SystemReflectionExtensions.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard15.SystemReflectionPrimitives.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard15.SystemResourcesResourceManager.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard15.SystemRuntime.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard15.SystemRuntimeExtensions.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard15.SystemRuntimeHandles.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard15.SystemRuntimeInteropServices.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard15.SystemRuntimeInteropServicesRuntimeInformation.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard15.SystemRuntimeNumerics.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard15.SystemSecurityCryptographyAlgorithms.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard15.SystemSecurityCryptographyEncoding.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard15.SystemSecurityCryptographyPrimitives.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard15.SystemSecurityCryptographyX509Certificates.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard15.SystemTextEncoding.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard15.SystemTextEncodingExtensions.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard15.SystemTextRegularExpressions.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard15.SystemThreading.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard15.SystemThreadingTasks.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard15.SystemThreadingTimer.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard15.SystemXmlReaderWriter.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard15.SystemXmlXDocument.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard16.MicrosoftWin32Primitives.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard16.SystemAppContext.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard16.SystemCollections.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard16.SystemCollectionsConcurrent.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard16.SystemConsole.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard16.SystemDiagnosticsDebug.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard16.SystemDiagnosticsTools.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard16.SystemDiagnosticsTracing.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard16.SystemGlobalization.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard16.SystemGlobalizationCalendars.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard16.SystemIO.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard16.SystemIOCompression.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard16.SystemIOCompressionZipFile.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard16.SystemIOFileSystem.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard16.SystemIOFileSystemPrimitives.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard16.SystemLinq.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard16.SystemLinqExpressions.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard16.SystemNetHttp.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard16.SystemNetPrimitives.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard16.SystemNetSockets.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard16.SystemObjectModel.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard16.SystemReflection.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard16.SystemReflectionExtensions.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard16.SystemReflectionPrimitives.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard16.SystemResourcesResourceManager.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard16.SystemRuntime.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard16.SystemRuntimeExtensions.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard16.SystemRuntimeHandles.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard16.SystemRuntimeInteropServices.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard16.SystemRuntimeInteropServicesRuntimeInformation.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard16.SystemRuntimeNumerics.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard16.SystemSecurityCryptographyAlgorithms.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard16.SystemSecurityCryptographyEncoding.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard16.SystemSecurityCryptographyPrimitives.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard16.SystemSecurityCryptographyX509Certificates.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard16.SystemTextEncoding.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard16.SystemTextEncodingExtensions.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard16.SystemTextRegularExpressions.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard16.SystemThreading.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard16.SystemThreadingTasks.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard16.SystemThreadingTimer.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard16.SystemXmlReaderWriter.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard16.SystemXmlXDocument.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.NetStandard.NetStandard20.Netstandard.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.Runtime.MicrosoftCodeAnalysis.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.Runtime.MicrosoftVisualBasic.get -> Microsoft.CodeAnalysis.MetadataReference -static Microsoft.CodeAnalysis.Testing.MetadataReferences.Runtime.SystemCollectionsImmutable.get -> Microsoft.CodeAnalysis.MetadataReference static Microsoft.CodeAnalysis.Testing.ReferenceAssemblies.Default.get -> Microsoft.CodeAnalysis.Testing.ReferenceAssemblies -static Microsoft.CodeAnalysis.Testing.ReferenceAssemblies.NetCore.NetCore10.get -> Microsoft.CodeAnalysis.Testing.ReferenceAssemblies -static Microsoft.CodeAnalysis.Testing.ReferenceAssemblies.NetCore.NetCore20.get -> Microsoft.CodeAnalysis.Testing.ReferenceAssemblies +static Microsoft.CodeAnalysis.Testing.ReferenceAssemblies.NetCore.NetCoreApp10.get -> Microsoft.CodeAnalysis.Testing.ReferenceAssemblies +static Microsoft.CodeAnalysis.Testing.ReferenceAssemblies.NetCore.NetCoreApp11.get -> Microsoft.CodeAnalysis.Testing.ReferenceAssemblies +static Microsoft.CodeAnalysis.Testing.ReferenceAssemblies.NetCore.NetCoreApp20.get -> Microsoft.CodeAnalysis.Testing.ReferenceAssemblies +static Microsoft.CodeAnalysis.Testing.ReferenceAssemblies.NetCore.NetCoreApp21.get -> Microsoft.CodeAnalysis.Testing.ReferenceAssemblies static Microsoft.CodeAnalysis.Testing.ReferenceAssemblies.NetFramework.Net20.Default.get -> Microsoft.CodeAnalysis.Testing.ReferenceAssemblies static Microsoft.CodeAnalysis.Testing.ReferenceAssemblies.NetFramework.Net20.WindowsForms.get -> Microsoft.CodeAnalysis.Testing.ReferenceAssemblies static Microsoft.CodeAnalysis.Testing.ReferenceAssemblies.NetFramework.Net40.Default.get -> Microsoft.CodeAnalysis.Testing.ReferenceAssemblies @@ -612,8 +223,7 @@ static Microsoft.CodeAnalysis.Testing.ReferenceAssemblies.NetStandard.NetStandar static Microsoft.CodeAnalysis.Testing.ReferenceAssemblies.NetStandard.NetStandard14.get -> Microsoft.CodeAnalysis.Testing.ReferenceAssemblies static Microsoft.CodeAnalysis.Testing.ReferenceAssemblies.NetStandard.NetStandard15.get -> Microsoft.CodeAnalysis.Testing.ReferenceAssemblies static Microsoft.CodeAnalysis.Testing.ReferenceAssemblies.NetStandard.NetStandard16.get -> Microsoft.CodeAnalysis.Testing.ReferenceAssemblies -static Microsoft.CodeAnalysis.Testing.ReferenceAssemblies.NetStandard.NetStandard2.get -> Microsoft.CodeAnalysis.Testing.ReferenceAssemblies -static Microsoft.CodeAnalysis.Testing.ReferenceAssemblies.Runtime.Current.get -> Microsoft.CodeAnalysis.Testing.ReferenceAssemblies +static Microsoft.CodeAnalysis.Testing.ReferenceAssemblies.NetStandard.NetStandard20.get -> Microsoft.CodeAnalysis.Testing.ReferenceAssemblies static Microsoft.CodeAnalysis.Testing.TestFileMarkupParser.CreateTestFile(string code, System.Collections.Generic.IDictionary> spans, int? cursor) -> string static Microsoft.CodeAnalysis.Testing.TestFileMarkupParser.CreateTestFile(string code, System.Collections.Generic.IList spans, int? cursor) -> string static Microsoft.CodeAnalysis.Testing.TestFileMarkupParser.CreateTestFile(string code, int cursor) -> string @@ -631,8 +241,8 @@ static Microsoft.CodeAnalysis.Testing.TestFileMarkupParser.GetSpans(string input static Microsoft.CodeAnalysis.Testing.TestFileMarkupParser.GetSpans(string input, out string output, out System.Collections.Generic.IList spans) -> void static readonly Microsoft.CodeAnalysis.Testing.DiagnosticResult.EmptyDiagnosticResults -> Microsoft.CodeAnalysis.Testing.DiagnosticResult[] virtual Microsoft.CodeAnalysis.Testing.AnalyzerTest.ApplyCompilationOptions(Microsoft.CodeAnalysis.Project project) -> Microsoft.CodeAnalysis.Project -virtual Microsoft.CodeAnalysis.Testing.AnalyzerTest.CreateProjectImpl((string filename, Microsoft.CodeAnalysis.Text.SourceText content)[] sources, (string filename, Microsoft.CodeAnalysis.Text.SourceText content)[] additionalFiles, Microsoft.CodeAnalysis.Testing.ProjectState[] additionalProjects, Microsoft.CodeAnalysis.MetadataReference[] additionalMetadataReferences, string language) -> Microsoft.CodeAnalysis.Project -virtual Microsoft.CodeAnalysis.Testing.AnalyzerTest.CreateSolution(Microsoft.CodeAnalysis.ProjectId projectId, string language) -> Microsoft.CodeAnalysis.Solution +virtual Microsoft.CodeAnalysis.Testing.AnalyzerTest.CreateProjectImplAsync((string filename, Microsoft.CodeAnalysis.Text.SourceText content)[] sources, (string filename, Microsoft.CodeAnalysis.Text.SourceText content)[] additionalFiles, Microsoft.CodeAnalysis.Testing.ProjectState[] additionalProjects, Microsoft.CodeAnalysis.MetadataReference[] additionalMetadataReferences, string language, System.Threading.CancellationToken cancellationToken) -> System.Threading.Tasks.Task +virtual Microsoft.CodeAnalysis.Testing.AnalyzerTest.CreateSolutionAsync(Microsoft.CodeAnalysis.ProjectId projectId, string language, System.Threading.CancellationToken cancellationToken) -> System.Threading.Tasks.Task virtual Microsoft.CodeAnalysis.Testing.AnalyzerTest.CreateWorkspace() -> Microsoft.CodeAnalysis.AdhocWorkspace virtual Microsoft.CodeAnalysis.Testing.AnalyzerTest.DefaultFilePath.get -> string virtual Microsoft.CodeAnalysis.Testing.AnalyzerTest.DefaultFilePathPrefix.get -> string @@ -649,4 +259,4 @@ virtual Microsoft.CodeAnalysis.Testing.DefaultVerifier.LanguageIsSupported(strin virtual Microsoft.CodeAnalysis.Testing.DefaultVerifier.NotEmpty(string collectionName, System.Collections.Generic.IEnumerable collection) -> void virtual Microsoft.CodeAnalysis.Testing.DefaultVerifier.PushContext(string context) -> Microsoft.CodeAnalysis.Testing.IVerifier virtual Microsoft.CodeAnalysis.Testing.DefaultVerifier.SequenceEqual(System.Collections.Generic.IEnumerable expected, System.Collections.Generic.IEnumerable actual, System.Collections.Generic.IEqualityComparer equalityComparer = null, string message = null) -> void -virtual Microsoft.CodeAnalysis.Testing.DefaultVerifier.True(bool assert, string message = null) -> void +virtual Microsoft.CodeAnalysis.Testing.DefaultVerifier.True(bool assert, string message = null) -> void \ No newline at end of file diff --git a/src/Microsoft.CodeAnalysis.Testing/Microsoft.CodeAnalysis.Analyzer.Testing/ReferenceAssemblies.cs b/src/Microsoft.CodeAnalysis.Testing/Microsoft.CodeAnalysis.Analyzer.Testing/ReferenceAssemblies.cs index 7e731e6410..5e2415997b 100644 --- a/src/Microsoft.CodeAnalysis.Testing/Microsoft.CodeAnalysis.Analyzer.Testing/ReferenceAssemblies.cs +++ b/src/Microsoft.CodeAnalysis.Testing/Microsoft.CodeAnalysis.Analyzer.Testing/ReferenceAssemblies.cs @@ -6,17 +6,69 @@ using System.IO; using System.Linq; using System.Reflection; +using System.Threading; +using System.Threading.Tasks; +using NuGet.Common; +using NuGet.Configuration; +using NuGet.Frameworks; +using NuGet.Packaging; +using NuGet.Packaging.Core; +using NuGet.Protocol; +using NuGet.Protocol.Core.Types; +using NuGet.Resolver; +using NuGet.Versioning; + +#if NET46 || NET472 || NETSTANDARD +using NuGet.Packaging.Signing; +#endif namespace Microsoft.CodeAnalysis.Testing { public sealed class ReferenceAssemblies { - public ReferenceAssemblies( - ImmutableArray references, - ImmutableDictionary> languageSpecificReferences) + private const string ReferenceAssembliesPackageVersion = "1.0.0-preview.2"; + private static readonly SemaphoreSlim Semaphore = new SemaphoreSlim(1); + + private readonly Dictionary> _references + = new Dictionary>(); + + public ReferenceAssemblies(string targetFramework) + { + TargetFramework = targetFramework ?? throw new ArgumentNullException(nameof(targetFramework)); + AssemblyIdentityComparer = AssemblyIdentityComparer.Default; + RelativePaths = ImmutableArray.Empty; + Assemblies = ImmutableArray.Empty; + LanguageSpecificAssemblies = ImmutableDictionary>.Empty; + Packages = ImmutableArray.Empty; + } + + public ReferenceAssemblies(string targetFramework, PackageIdentity referenceAssemblyPackage, ImmutableArray relativePaths) + { + TargetFramework = targetFramework ?? throw new ArgumentNullException(nameof(targetFramework)); + AssemblyIdentityComparer = AssemblyIdentityComparer.Default; + ReferenceAssemblyPackage = referenceAssemblyPackage ?? throw new ArgumentNullException(nameof(referenceAssemblyPackage)); + RelativePaths = relativePaths.IsDefault ? ImmutableArray.Empty : relativePaths; + Assemblies = ImmutableArray.Empty; + LanguageSpecificAssemblies = ImmutableDictionary>.Empty; + Packages = ImmutableArray.Empty; + } + + private ReferenceAssemblies( + string targetFramework, + AssemblyIdentityComparer assemblyIdentityComparer, + PackageIdentity? referenceAssemblyPackage, + ImmutableArray relativePaths, + ImmutableArray assemblies, + ImmutableDictionary> languageSpecificAssemblies, + ImmutableArray packages) { - References = references; - LanguageSpecificReferences = languageSpecificReferences; + TargetFramework = targetFramework; + AssemblyIdentityComparer = assemblyIdentityComparer; + ReferenceAssemblyPackage = referenceAssemblyPackage; + RelativePaths = relativePaths.IsDefault ? ImmutableArray.Empty : relativePaths; + Assemblies = assemblies.IsDefault ? ImmutableArray.Empty : assemblies; + LanguageSpecificAssemblies = languageSpecificAssemblies; + Packages = packages.IsDefault ? ImmutableArray.Empty : packages; } public static ReferenceAssemblies Default @@ -26,940 +78,678 @@ public static ReferenceAssemblies Default #if NETSTANDARD1_5 return NetStandard.NetStandard15; #elif NETSTANDARD2_0 - return NetStandard.NetStandard2; -#else + return NetStandard.NetStandard20; +#elif NET452 + return NetFramework.Net452.Default; +#elif NET46 return NetFramework.Net46.Default; +#elif NET472 + return NetFramework.Net472.Default; #endif } } - public ImmutableArray References { get; } + public string TargetFramework { get; } - public ImmutableDictionary> LanguageSpecificReferences { get; } + public AssemblyIdentityComparer AssemblyIdentityComparer { get; } -#if false - public string ReferenceAssembliesPath { get; } + public PackageIdentity? ReferenceAssemblyPackage { get; } - public string FacadeAssembliesPath { get; } -#endif + public ImmutableArray RelativePaths { get; } + + public ImmutableArray Assemblies { get; } + + public ImmutableDictionary> LanguageSpecificAssemblies { get; } - internal IEnumerable GetMetadataReferences(string language) + public ImmutableArray Packages { get; } + + public ReferenceAssemblies WithAssemblyIdentityComparer(AssemblyIdentityComparer assemblyIdentityComparer) + => new ReferenceAssemblies(TargetFramework, assemblyIdentityComparer, ReferenceAssemblyPackage, RelativePaths, Assemblies, LanguageSpecificAssemblies, Packages); + + public ReferenceAssemblies WithAssemblies(ImmutableArray assemblies) + => new ReferenceAssemblies(TargetFramework, AssemblyIdentityComparer, ReferenceAssemblyPackage, RelativePaths, assemblies, LanguageSpecificAssemblies, Packages); + + public ReferenceAssemblies AddAssemblies(ImmutableArray assemblies) + => WithAssemblies(Assemblies.AddRange(assemblies)); + + public ReferenceAssemblies WithLanguageSpecificAssemblies(ImmutableDictionary> languageSpecificAssemblies) + => new ReferenceAssemblies(TargetFramework, AssemblyIdentityComparer, ReferenceAssemblyPackage, RelativePaths, Assemblies, languageSpecificAssemblies, Packages); + + public ReferenceAssemblies WithLanguageSpecificAssemblies(string language, ImmutableArray assemblies) + => WithLanguageSpecificAssemblies(LanguageSpecificAssemblies.SetItem(language, assemblies)); + + public ReferenceAssemblies AddLanguageSpecificAssemblies(string language, ImmutableArray assemblies) { - if (LanguageSpecificReferences.TryGetValue(language, out var perLanguageReferences)) + if (!LanguageSpecificAssemblies.TryGetValue(language, out var existing)) { - return References.Concat(perLanguageReferences); + existing = ImmutableArray.Empty; } - return References; + return WithLanguageSpecificAssemblies(language, existing.AddRange(assemblies)); } - public static class NetFramework + public ReferenceAssemblies WithPackages(ImmutableArray packages) + => new ReferenceAssemblies(TargetFramework, AssemblyIdentityComparer, ReferenceAssemblyPackage, RelativePaths, Assemblies, LanguageSpecificAssemblies, packages); + + public ReferenceAssemblies AddPackages(ImmutableArray packages) + => WithPackages(Packages.AddRange(packages)); + + public async Task> ResolveAsync(string? language, CancellationToken cancellationToken) { - public static class Net20 + if (language is object) { - public static ReferenceAssemblies Default - { - get - { - return new ReferenceAssemblies( - ImmutableArray.Create( - MetadataReferences.NetFramework.Net20.Mscorlib, - MetadataReferences.NetFramework.Net20.System, - MetadataReferences.NetFramework.Net20.SystemData, - MetadataReferences.NetFramework.Net20.SystemXml), - ImmutableDictionary.Create>() - .Add(LanguageNames.VisualBasic, ImmutableArray.Create(MetadataReferences.NetFramework.Net20.MicrosoftVisualBasic))); - } - } - - public static ReferenceAssemblies WindowsForms + if (LanguageSpecificAssemblies.IsEmpty + || !LanguageSpecificAssemblies.TryGetValue(language, out var languageSpecificAssemblies) + || languageSpecificAssemblies.IsEmpty) { - get - { - return new ReferenceAssemblies( - ImmutableArray.Create( - MetadataReferences.NetFramework.Net20.Mscorlib, - MetadataReferences.NetFramework.Net20.System, - MetadataReferences.NetFramework.Net20.SystemData, - MetadataReferences.NetFramework.Net20.SystemDrawing, - MetadataReferences.NetFramework.Net20.SystemWindowsForms, - MetadataReferences.NetFramework.Net20.SystemXml), - ImmutableDictionary.Create>() - .Add(LanguageNames.VisualBasic, ImmutableArray.Create(MetadataReferences.NetFramework.Net20.MicrosoftVisualBasic))); - } + return await ResolveAsync(null, cancellationToken); } } - public static class Net40 + language ??= string.Empty; + lock (_references) { - public static ReferenceAssemblies Default + if (_references.TryGetValue(language, out var references)) { - get - { - return new ReferenceAssemblies( - ImmutableArray.Create( - MetadataReferences.NetFramework.Net40.Mscorlib, - MetadataReferences.NetFramework.Net40.System, - MetadataReferences.NetFramework.Net40.SystemCore, - MetadataReferences.NetFramework.Net40.SystemData, - MetadataReferences.NetFramework.Net40.SystemDataDataSetExtensions, - MetadataReferences.NetFramework.Net40.SystemXml, - MetadataReferences.NetFramework.Net40.SystemXmlLinq), - ImmutableDictionary.Create>() - .Add(LanguageNames.CSharp, ImmutableArray.Create(MetadataReferences.NetFramework.Net40.MicrosoftCSharp)) - .Add(LanguageNames.VisualBasic, ImmutableArray.Create(MetadataReferences.NetFramework.Net40.MicrosoftVisualBasic))); - } + return references; } + } - public static ReferenceAssemblies WindowsForms + await Semaphore.WaitAsync(cancellationToken); + try + { + lock (_references) { - get + if (_references.TryGetValue(language, out var references)) { - return new ReferenceAssemblies( - ImmutableArray.Create( - MetadataReferences.NetFramework.Net40.Mscorlib, - MetadataReferences.NetFramework.Net40.System, - MetadataReferences.NetFramework.Net40.SystemCore, - MetadataReferences.NetFramework.Net40.SystemData, - MetadataReferences.NetFramework.Net40.SystemDataDataSetExtensions, - MetadataReferences.NetFramework.Net40.SystemDeployment, - MetadataReferences.NetFramework.Net40.SystemDrawing, - MetadataReferences.NetFramework.Net40.SystemWindowsForms, - MetadataReferences.NetFramework.Net40.SystemXml, - MetadataReferences.NetFramework.Net40.SystemXmlLinq), - ImmutableDictionary.Create>() - .Add(LanguageNames.CSharp, ImmutableArray.Create(MetadataReferences.NetFramework.Net40.MicrosoftCSharp)) - .Add(LanguageNames.VisualBasic, ImmutableArray.Create(MetadataReferences.NetFramework.Net40.MicrosoftVisualBasic))); + return references; } } - public static ReferenceAssemblies Wpf + var computedReferences = await ResolveCoreAsync(language, cancellationToken); + lock (_references) { - get - { - return new ReferenceAssemblies( - ImmutableArray.Create( - MetadataReferences.NetFramework.Net40.Mscorlib, - MetadataReferences.NetFramework.Net40.PresentationCore, - MetadataReferences.NetFramework.Net40.PresentationFramework, - MetadataReferences.NetFramework.Net40.System, - MetadataReferences.NetFramework.Net40.SystemCore, - MetadataReferences.NetFramework.Net40.SystemData, - MetadataReferences.NetFramework.Net40.SystemDataDataSetExtensions, - MetadataReferences.NetFramework.Net40.SystemXaml, - MetadataReferences.NetFramework.Net40.SystemXml, - MetadataReferences.NetFramework.Net40.SystemXmlLinq, - MetadataReferences.NetFramework.Net40.WindowsBase), - ImmutableDictionary.Create>() - .Add(LanguageNames.CSharp, ImmutableArray.Create(MetadataReferences.NetFramework.Net40.MicrosoftCSharp)) - .Add(LanguageNames.VisualBasic, ImmutableArray.Create(MetadataReferences.NetFramework.Net40.MicrosoftVisualBasic))); - } + _references.Add(language, computedReferences); } - } - public static class Net45 - { - public static ReferenceAssemblies Default => throw new NotImplementedException(); - - public static ReferenceAssemblies WindowsForms => throw new NotImplementedException(); - - public static ReferenceAssemblies Wpf => throw new NotImplementedException(); + return computedReferences; } - - public static class Net451 + finally { - public static ReferenceAssemblies Default => throw new NotImplementedException(); - - public static ReferenceAssemblies WindowsForms => throw new NotImplementedException(); - - public static ReferenceAssemblies Wpf => throw new NotImplementedException(); + Semaphore.Release(); } + } - public static class Net452 + /// + private async Task> ResolveCoreAsync(string language, CancellationToken cancellationToken) + { + var settings = Settings.LoadDefaultSettings(root: null); +#pragma warning disable CS0618 // Type or member is obsolete + var sourceRepositoryProvider = new SourceRepositoryProvider(settings, Repository.Provider.GetCoreV3()); +#pragma warning restore CS0618 // Type or member is obsolete + var targetFramework = NuGetFramework.ParseFolder(TargetFramework); + var logger = NullLogger.Instance; + + using (var cacheContext = new SourceCacheContext()) { - public static ReferenceAssemblies Default => throw new NotImplementedException(); - - public static ReferenceAssemblies WindowsForms => throw new NotImplementedException(); + var repositories = sourceRepositoryProvider.GetRepositories().ToImmutableArray(); + var dependencies = ImmutableDictionary.CreateBuilder(PackageIdentityComparer.Default); - public static ReferenceAssemblies Wpf => throw new NotImplementedException(); - } - - public static class Net46 - { - public static ReferenceAssemblies Default + if (ReferenceAssemblyPackage is object) { - get - { - return new ReferenceAssemblies( - ImmutableArray.Create( - MetadataReferences.NetFramework.Net46.Mscorlib, - MetadataReferences.NetFramework.Net46.System, - MetadataReferences.NetFramework.Net46.SystemCore, - MetadataReferences.NetFramework.Net46.SystemData, - MetadataReferences.NetFramework.Net46.SystemDataDataSetExtensions, - MetadataReferences.NetFramework.Net46.SystemNetHttp, - MetadataReferences.NetFramework.Net46.SystemXml, - MetadataReferences.NetFramework.Net46.SystemXmlLinq), - ImmutableDictionary.Create>() - .Add(LanguageNames.CSharp, ImmutableArray.Create(MetadataReferences.NetFramework.Net46.MicrosoftCSharp)) - .Add(LanguageNames.VisualBasic, ImmutableArray.Create(MetadataReferences.NetFramework.Net46.MicrosoftVisualBasic))); - } + await GetPackageDependenciesAsync(ReferenceAssemblyPackage, targetFramework, repositories, cacheContext, logger, dependencies, cancellationToken); } - public static ReferenceAssemblies WindowsForms + foreach (var packageIdentity in Packages) { - get - { - return new ReferenceAssemblies( - ImmutableArray.Create( - MetadataReferences.NetFramework.Net46.Mscorlib, - MetadataReferences.NetFramework.Net46.System, - MetadataReferences.NetFramework.Net46.SystemCore, - MetadataReferences.NetFramework.Net46.SystemData, - MetadataReferences.NetFramework.Net46.SystemDataDataSetExtensions, - MetadataReferences.NetFramework.Net46.SystemDeployment, - MetadataReferences.NetFramework.Net46.SystemDrawing, - MetadataReferences.NetFramework.Net46.SystemNetHttp, - MetadataReferences.NetFramework.Net46.SystemWindowsForms, - MetadataReferences.NetFramework.Net46.SystemXml, - MetadataReferences.NetFramework.Net46.SystemXmlLinq), - ImmutableDictionary.Create>() - .Add(LanguageNames.CSharp, ImmutableArray.Create(MetadataReferences.NetFramework.Net46.MicrosoftCSharp)) - .Add(LanguageNames.VisualBasic, ImmutableArray.Create(MetadataReferences.NetFramework.Net46.MicrosoftVisualBasic))); - } + await GetPackageDependenciesAsync(packageIdentity, targetFramework, repositories, cacheContext, logger, dependencies, cancellationToken); } - public static ReferenceAssemblies Wpf - { - get - { - return new ReferenceAssemblies( - ImmutableArray.Create( - MetadataReferences.NetFramework.Net46.Mscorlib, - MetadataReferences.NetFramework.Net46.PresentationCore, - MetadataReferences.NetFramework.Net46.PresentationFramework, - MetadataReferences.NetFramework.Net46.System, - MetadataReferences.NetFramework.Net46.SystemCore, - MetadataReferences.NetFramework.Net46.SystemData, - MetadataReferences.NetFramework.Net46.SystemDataDataSetExtensions, - MetadataReferences.NetFramework.Net46.SystemNetHttp, - MetadataReferences.NetFramework.Net46.SystemXaml, - MetadataReferences.NetFramework.Net46.SystemXml, - MetadataReferences.NetFramework.Net46.SystemXmlLinq, - MetadataReferences.NetFramework.Net46.WindowsBase), - ImmutableDictionary.Create>() - .Add(LanguageNames.CSharp, ImmutableArray.Create(MetadataReferences.NetFramework.Net46.MicrosoftCSharp)) - .Add(LanguageNames.VisualBasic, ImmutableArray.Create(MetadataReferences.NetFramework.Net46.MicrosoftVisualBasic))); - } - } - } + var availablePackages = dependencies.ToImmutable(); - public static class Net461 - { - public static ReferenceAssemblies Default + var packagesToInstall = new List(); + if (ReferenceAssemblyPackage is object) { - get - { - return new ReferenceAssemblies( - ImmutableArray.Create( - MetadataReferences.NetFramework.Net461.Mscorlib, - MetadataReferences.NetFramework.Net461.System, - MetadataReferences.NetFramework.Net461.SystemCore, - MetadataReferences.NetFramework.Net461.SystemData, - MetadataReferences.NetFramework.Net461.SystemDataDataSetExtensions, - MetadataReferences.NetFramework.Net461.SystemNetHttp, - MetadataReferences.NetFramework.Net461.SystemXml, - MetadataReferences.NetFramework.Net461.SystemXmlLinq), - ImmutableDictionary.Create>() - .Add(LanguageNames.CSharp, ImmutableArray.Create(MetadataReferences.NetFramework.Net461.MicrosoftCSharp)) - .Add(LanguageNames.VisualBasic, ImmutableArray.Create(MetadataReferences.NetFramework.Net461.MicrosoftVisualBasic))); - } + packagesToInstall.Add(ReferenceAssemblyPackage); } - public static ReferenceAssemblies WindowsForms + if (!Packages.IsEmpty) { - get - { - return new ReferenceAssemblies( - ImmutableArray.Create( - MetadataReferences.NetFramework.Net461.Mscorlib, - MetadataReferences.NetFramework.Net461.System, - MetadataReferences.NetFramework.Net461.SystemCore, - MetadataReferences.NetFramework.Net461.SystemData, - MetadataReferences.NetFramework.Net461.SystemDataDataSetExtensions, - MetadataReferences.NetFramework.Net461.SystemDeployment, - MetadataReferences.NetFramework.Net461.SystemDrawing, - MetadataReferences.NetFramework.Net461.SystemNetHttp, - MetadataReferences.NetFramework.Net461.SystemWindowsForms, - MetadataReferences.NetFramework.Net461.SystemXml, - MetadataReferences.NetFramework.Net461.SystemXmlLinq), - ImmutableDictionary.Create>() - .Add(LanguageNames.CSharp, ImmutableArray.Create(MetadataReferences.NetFramework.Net461.MicrosoftCSharp)) - .Add(LanguageNames.VisualBasic, ImmutableArray.Create(MetadataReferences.NetFramework.Net461.MicrosoftVisualBasic))); - } - } + var resolverContext = new PackageResolverContext( + DependencyBehavior.Lowest, + Packages.Select(package => package.Id), + Enumerable.Empty(), + Enumerable.Empty(), + Enumerable.Empty(), + availablePackages.Values, + sourceRepositoryProvider.GetRepositories().Select(repository => repository.PackageSource), + logger); + var resolver = new PackageResolver(); - public static ReferenceAssemblies Wpf - { - get - { - return new ReferenceAssemblies( - ImmutableArray.Create( - MetadataReferences.NetFramework.Net461.Mscorlib, - MetadataReferences.NetFramework.Net461.PresentationCore, - MetadataReferences.NetFramework.Net461.PresentationFramework, - MetadataReferences.NetFramework.Net461.System, - MetadataReferences.NetFramework.Net461.SystemCore, - MetadataReferences.NetFramework.Net461.SystemData, - MetadataReferences.NetFramework.Net461.SystemDataDataSetExtensions, - MetadataReferences.NetFramework.Net461.SystemNetHttp, - MetadataReferences.NetFramework.Net461.SystemXaml, - MetadataReferences.NetFramework.Net461.SystemXml, - MetadataReferences.NetFramework.Net461.SystemXmlLinq, - MetadataReferences.NetFramework.Net461.WindowsBase), - ImmutableDictionary.Create>() - .Add(LanguageNames.CSharp, ImmutableArray.Create(MetadataReferences.NetFramework.Net461.MicrosoftCSharp)) - .Add(LanguageNames.VisualBasic, ImmutableArray.Create(MetadataReferences.NetFramework.Net461.MicrosoftVisualBasic))); - } + packagesToInstall.AddRange(resolver.Resolve(resolverContext, cancellationToken)); } - } - public static class Net462 - { - public static ReferenceAssemblies Default + var globalPathResolver = new PackagePathResolver(SettingsUtility.GetGlobalPackagesFolder(settings)); + var localPathResolver = new PackagePathResolver(Path.GetFullPath("packages")); +#if NET452 + var packageExtractionContext = new PackageExtractionContext(logger); +#elif NET46 || NET472 || NETSTANDARD2_0 + var packageExtractionContext = new PackageExtractionContext( + PackageSaveMode.Defaultv3, + XmlDocFileSaveMode.None, + ClientPolicyContext.GetClientPolicy(settings, logger), + logger); +#elif NETSTANDARD1_5 + var packageExtractionContext = new PackageExtractionContext( + PackageSaveMode.Defaultv3, + XmlDocFileSaveMode.None, + logger, + new PackageSignatureVerifier( + SignatureVerificationProviderFactory.GetSignatureVerificationProviders(), + SignedPackageVerifierSettings.Default)); +#else +#error The current target framework is not supported. +#endif + + var frameworkReducer = new FrameworkReducer(); + + var resolvedAssemblies = new HashSet(); + foreach (var packageToInstall in packagesToInstall) { - get + PackageReaderBase packageReader; + var installedPath = GetInstalledPath(localPathResolver, packageToInstall) + ?? GetInstalledPath(globalPathResolver, packageToInstall); + if (installedPath is null) { - return new ReferenceAssemblies( - ImmutableArray.Create( - MetadataReferences.NetFramework.Net462.Mscorlib, - MetadataReferences.NetFramework.Net462.System, - MetadataReferences.NetFramework.Net462.SystemCore, - MetadataReferences.NetFramework.Net462.SystemData, - MetadataReferences.NetFramework.Net462.SystemDataDataSetExtensions, - MetadataReferences.NetFramework.Net462.SystemNetHttp, - MetadataReferences.NetFramework.Net462.SystemXml, - MetadataReferences.NetFramework.Net462.SystemXmlLinq), - ImmutableDictionary.Create>() - .Add(LanguageNames.CSharp, ImmutableArray.Create(MetadataReferences.NetFramework.Net462.MicrosoftCSharp)) - .Add(LanguageNames.VisualBasic, ImmutableArray.Create(MetadataReferences.NetFramework.Net462.MicrosoftVisualBasic))); - } - } + var downloadResource = await availablePackages[packageToInstall].Source.GetResourceAsync(cancellationToken); + var downloadResult = await downloadResource.GetDownloadResourceResultAsync( + packageToInstall, + new PackageDownloadContext(cacheContext), + SettingsUtility.GetGlobalPackagesFolder(settings), + logger, + cancellationToken); + + if (!PackageIdentityComparer.Default.Equals(packageToInstall, ReferenceAssemblyPackage) + && !downloadResult.PackageReader.GetItems(PackagingConstants.Folders.Lib).Any() + && !downloadResult.PackageReader.GetItems(PackagingConstants.Folders.Ref).Any()) + { + // This package has no compile time impact + continue; + } - public static ReferenceAssemblies WindowsForms - { - get + await PackageExtractor.ExtractPackageAsync( +#if !NET452 && !NETSTANDARD1_5 +#pragma warning disable SA1114 // Parameter list should follow declaration + downloadResult.PackageSource, +#pragma warning restore SA1114 // Parameter list should follow declaration +#endif + downloadResult.PackageStream, + localPathResolver, + packageExtractionContext, + cancellationToken); + + installedPath = localPathResolver.GetInstalledPath(packageToInstall); + packageReader = downloadResult.PackageReader; + } + else { - return new ReferenceAssemblies( - ImmutableArray.Create( - MetadataReferences.NetFramework.Net462.Mscorlib, - MetadataReferences.NetFramework.Net462.System, - MetadataReferences.NetFramework.Net462.SystemCore, - MetadataReferences.NetFramework.Net462.SystemData, - MetadataReferences.NetFramework.Net462.SystemDataDataSetExtensions, - MetadataReferences.NetFramework.Net462.SystemDeployment, - MetadataReferences.NetFramework.Net462.SystemDrawing, - MetadataReferences.NetFramework.Net462.SystemNetHttp, - MetadataReferences.NetFramework.Net462.SystemWindowsForms, - MetadataReferences.NetFramework.Net462.SystemXml, - MetadataReferences.NetFramework.Net462.SystemXmlLinq), - ImmutableDictionary.Create>() - .Add(LanguageNames.CSharp, ImmutableArray.Create(MetadataReferences.NetFramework.Net462.MicrosoftCSharp)) - .Add(LanguageNames.VisualBasic, ImmutableArray.Create(MetadataReferences.NetFramework.Net462.MicrosoftVisualBasic))); + packageReader = new PackageFolderReader(installedPath); } - } - public static ReferenceAssemblies Wpf - { - get + var libItems = await packageReader.GetLibItemsAsync(cancellationToken); + var nearestLib = frameworkReducer.GetNearest(targetFramework, libItems.Select(x => x.TargetFramework)); + var frameworkItems = await packageReader.GetFrameworkItemsAsync(cancellationToken); + var nearestFramework = frameworkReducer.GetNearest(targetFramework, frameworkItems.Select(x => x.TargetFramework)); + var refItems = await packageReader.GetItemsAsync(PackagingConstants.Folders.Ref, cancellationToken); + var nearestRef = frameworkReducer.GetNearest(targetFramework, refItems.Select(x => x.TargetFramework)); + if (nearestRef is object) { - return new ReferenceAssemblies( - ImmutableArray.Create( - MetadataReferences.NetFramework.Net462.Mscorlib, - MetadataReferences.NetFramework.Net462.PresentationCore, - MetadataReferences.NetFramework.Net462.PresentationFramework, - MetadataReferences.NetFramework.Net462.System, - MetadataReferences.NetFramework.Net462.SystemCore, - MetadataReferences.NetFramework.Net462.SystemData, - MetadataReferences.NetFramework.Net462.SystemDataDataSetExtensions, - MetadataReferences.NetFramework.Net462.SystemNetHttp, - MetadataReferences.NetFramework.Net462.SystemXaml, - MetadataReferences.NetFramework.Net462.SystemXml, - MetadataReferences.NetFramework.Net462.SystemXmlLinq, - MetadataReferences.NetFramework.Net462.WindowsBase), - ImmutableDictionary.Create>() - .Add(LanguageNames.CSharp, ImmutableArray.Create(MetadataReferences.NetFramework.Net462.MicrosoftCSharp)) - .Add(LanguageNames.VisualBasic, ImmutableArray.Create(MetadataReferences.NetFramework.Net462.MicrosoftVisualBasic))); - } - } - } + var nearestRefItems = refItems.Single(x => x.TargetFramework == nearestRef); + foreach (var item in nearestRefItems.Items) + { + if (!string.Equals(Path.GetExtension(item), ".dll", StringComparison.OrdinalIgnoreCase)) + { + continue; + } - public static class Net47 - { - public static ReferenceAssemblies Default - { - get + resolvedAssemblies.Add(Path.Combine(installedPath, item)); + } + } + else if (nearestLib is object) { - return new ReferenceAssemblies( - ImmutableArray.Create( - MetadataReferences.NetFramework.Net47.Mscorlib, - MetadataReferences.NetFramework.Net47.System, - MetadataReferences.NetFramework.Net47.SystemCore, - MetadataReferences.NetFramework.Net47.SystemData, - MetadataReferences.NetFramework.Net47.SystemDataDataSetExtensions, - MetadataReferences.NetFramework.Net47.SystemNetHttp, - MetadataReferences.NetFramework.Net47.SystemXml, - MetadataReferences.NetFramework.Net47.SystemXmlLinq), - ImmutableDictionary.Create>() - .Add(LanguageNames.CSharp, ImmutableArray.Create(MetadataReferences.NetFramework.Net47.MicrosoftCSharp)) - .Add(LanguageNames.VisualBasic, ImmutableArray.Create(MetadataReferences.NetFramework.Net47.MicrosoftVisualBasic))); + var nearestLibItems = libItems.Single(x => x.TargetFramework == nearestLib); + foreach (var item in nearestLibItems.Items) + { + if (!string.Equals(Path.GetExtension(item), ".dll", StringComparison.OrdinalIgnoreCase)) + { + continue; + } + + resolvedAssemblies.Add(Path.Combine(installedPath, item)); + } } - } - public static ReferenceAssemblies WindowsForms - { - get + if (nearestFramework is object) { - return new ReferenceAssemblies( - ImmutableArray.Create( - MetadataReferences.NetFramework.Net47.Mscorlib, - MetadataReferences.NetFramework.Net47.System, - MetadataReferences.NetFramework.Net47.SystemCore, - MetadataReferences.NetFramework.Net47.SystemData, - MetadataReferences.NetFramework.Net47.SystemDataDataSetExtensions, - MetadataReferences.NetFramework.Net47.SystemDeployment, - MetadataReferences.NetFramework.Net47.SystemDrawing, - MetadataReferences.NetFramework.Net47.SystemNetHttp, - MetadataReferences.NetFramework.Net47.SystemWindowsForms, - MetadataReferences.NetFramework.Net47.SystemXml, - MetadataReferences.NetFramework.Net47.SystemXmlLinq), - ImmutableDictionary.Create>() - .Add(LanguageNames.CSharp, ImmutableArray.Create(MetadataReferences.NetFramework.Net47.MicrosoftCSharp)) - .Add(LanguageNames.VisualBasic, ImmutableArray.Create(MetadataReferences.NetFramework.Net47.MicrosoftVisualBasic))); + var nearestFrameworkItems = frameworkItems.Single(x => x.TargetFramework == nearestFramework); + foreach (var item in nearestFrameworkItems.Items) + { + foreach (var relativePath in RelativePaths) + { + var installedFrameworkPath = localPathResolver.GetInstalledPath(ReferenceAssemblyPackage) + ?? globalPathResolver.GetInstalledPath(ReferenceAssemblyPackage); + if (File.Exists(Path.Combine(installedFrameworkPath, relativePath, item + ".dll"))) + { + resolvedAssemblies.Add(Path.GetFullPath(Path.Combine(installedFrameworkPath, relativePath, item + ".dll"))); + break; + } + } + } } } - public static ReferenceAssemblies Wpf + foreach (var assembly in Assemblies) { - get + foreach (var relativePath in RelativePaths) { - return new ReferenceAssemblies( - ImmutableArray.Create( - MetadataReferences.NetFramework.Net47.Mscorlib, - MetadataReferences.NetFramework.Net47.PresentationCore, - MetadataReferences.NetFramework.Net47.PresentationFramework, - MetadataReferences.NetFramework.Net47.System, - MetadataReferences.NetFramework.Net47.SystemCore, - MetadataReferences.NetFramework.Net47.SystemData, - MetadataReferences.NetFramework.Net47.SystemDataDataSetExtensions, - MetadataReferences.NetFramework.Net47.SystemNetHttp, - MetadataReferences.NetFramework.Net47.SystemXaml, - MetadataReferences.NetFramework.Net47.SystemXml, - MetadataReferences.NetFramework.Net47.SystemXmlLinq, - MetadataReferences.NetFramework.Net47.WindowsBase), - ImmutableDictionary.Create>() - .Add(LanguageNames.CSharp, ImmutableArray.Create(MetadataReferences.NetFramework.Net47.MicrosoftCSharp)) - .Add(LanguageNames.VisualBasic, ImmutableArray.Create(MetadataReferences.NetFramework.Net47.MicrosoftVisualBasic))); + var installedPath = localPathResolver.GetInstalledPath(ReferenceAssemblyPackage) + ?? globalPathResolver.GetInstalledPath(ReferenceAssemblyPackage); + if (File.Exists(Path.Combine(installedPath, relativePath, assembly + ".dll"))) + { + resolvedAssemblies.Add(Path.GetFullPath(Path.Combine(installedPath, relativePath, assembly + ".dll"))); + break; + } } } - } - public static class Net471 - { - public static ReferenceAssemblies Default + if (LanguageSpecificAssemblies.TryGetValue(language, out var languageSpecificAssemblies)) { - get + foreach (var assembly in languageSpecificAssemblies) { - return new ReferenceAssemblies( - ImmutableArray.Create( - MetadataReferences.NetFramework.Net471.Mscorlib, - MetadataReferences.NetFramework.Net471.System, - MetadataReferences.NetFramework.Net471.SystemCore, - MetadataReferences.NetFramework.Net471.SystemData, - MetadataReferences.NetFramework.Net471.SystemDataDataSetExtensions, - MetadataReferences.NetFramework.Net471.SystemNetHttp, - MetadataReferences.NetFramework.Net471.SystemXml, - MetadataReferences.NetFramework.Net471.SystemXmlLinq), - ImmutableDictionary.Create>() - .Add(LanguageNames.CSharp, ImmutableArray.Create(MetadataReferences.NetFramework.Net471.MicrosoftCSharp)) - .Add(LanguageNames.VisualBasic, ImmutableArray.Create(MetadataReferences.NetFramework.Net471.MicrosoftVisualBasic))); + foreach (var relativePath in RelativePaths) + { + var installedPath = localPathResolver.GetInstalledPath(ReferenceAssemblyPackage) + ?? globalPathResolver.GetInstalledPath(ReferenceAssemblyPackage); + if (File.Exists(Path.Combine(installedPath, relativePath, assembly + ".dll"))) + { + resolvedAssemblies.Add(Path.GetFullPath(Path.Combine(installedPath, relativePath, assembly + ".dll"))); + break; + } + } } } - public static ReferenceAssemblies WindowsForms + return resolvedAssemblies.Select(MetadataReferences.CreateReferenceFromFile).ToImmutableArray(); + + static string? GetInstalledPath(PackagePathResolver resolver, PackageIdentity id) { - get + try { - return new ReferenceAssemblies( - ImmutableArray.Create( - MetadataReferences.NetFramework.Net471.Mscorlib, - MetadataReferences.NetFramework.Net471.System, - MetadataReferences.NetFramework.Net471.SystemCore, - MetadataReferences.NetFramework.Net471.SystemData, - MetadataReferences.NetFramework.Net471.SystemDataDataSetExtensions, - MetadataReferences.NetFramework.Net471.SystemDeployment, - MetadataReferences.NetFramework.Net471.SystemDrawing, - MetadataReferences.NetFramework.Net471.SystemNetHttp, - MetadataReferences.NetFramework.Net471.SystemWindowsForms, - MetadataReferences.NetFramework.Net471.SystemXml, - MetadataReferences.NetFramework.Net471.SystemXmlLinq), - ImmutableDictionary.Create>() - .Add(LanguageNames.CSharp, ImmutableArray.Create(MetadataReferences.NetFramework.Net471.MicrosoftCSharp)) - .Add(LanguageNames.VisualBasic, ImmutableArray.Create(MetadataReferences.NetFramework.Net471.MicrosoftVisualBasic))); + return resolver.GetInstalledPath(id); } - } - - public static ReferenceAssemblies Wpf - { - get + catch (PathTooLongException) { - return new ReferenceAssemblies( - ImmutableArray.Create( - MetadataReferences.NetFramework.Net471.Mscorlib, - MetadataReferences.NetFramework.Net471.PresentationCore, - MetadataReferences.NetFramework.Net471.PresentationFramework, - MetadataReferences.NetFramework.Net471.System, - MetadataReferences.NetFramework.Net471.SystemCore, - MetadataReferences.NetFramework.Net471.SystemData, - MetadataReferences.NetFramework.Net471.SystemDataDataSetExtensions, - MetadataReferences.NetFramework.Net471.SystemNetHttp, - MetadataReferences.NetFramework.Net471.SystemXaml, - MetadataReferences.NetFramework.Net471.SystemXml, - MetadataReferences.NetFramework.Net471.SystemXmlLinq, - MetadataReferences.NetFramework.Net471.WindowsBase), - ImmutableDictionary.Create>() - .Add(LanguageNames.CSharp, ImmutableArray.Create(MetadataReferences.NetFramework.Net471.MicrosoftCSharp)) - .Add(LanguageNames.VisualBasic, ImmutableArray.Create(MetadataReferences.NetFramework.Net471.MicrosoftVisualBasic))); + return null; } } } + } - public static class Net472 + private static async Task GetPackageDependenciesAsync( + PackageIdentity packageIdentity, + NuGetFramework targetFramework, + ImmutableArray repositories, + SourceCacheContext cacheContext, + ILogger logger, + ImmutableDictionary.Builder dependencies, + CancellationToken cancellationToken) + { + if (dependencies.ContainsKey(packageIdentity)) { - public static ReferenceAssemblies Default - { - get - { - return new ReferenceAssemblies( - ImmutableArray.Create( - MetadataReferences.NetFramework.Net472.Mscorlib, - MetadataReferences.NetFramework.Net472.System, - MetadataReferences.NetFramework.Net472.SystemCore, - MetadataReferences.NetFramework.Net472.SystemData, - MetadataReferences.NetFramework.Net472.SystemDataDataSetExtensions, - MetadataReferences.NetFramework.Net472.SystemNetHttp, - MetadataReferences.NetFramework.Net472.SystemXml, - MetadataReferences.NetFramework.Net472.SystemXmlLinq), - ImmutableDictionary.Create>() - .Add(LanguageNames.CSharp, ImmutableArray.Create(MetadataReferences.NetFramework.Net472.MicrosoftCSharp)) - .Add(LanguageNames.VisualBasic, ImmutableArray.Create(MetadataReferences.NetFramework.Net472.MicrosoftVisualBasic))); - } - } + return; + } - public static ReferenceAssemblies WindowsForms + foreach (var sourceRepository in repositories) + { + var dependencyInfoResource = await sourceRepository.GetResourceAsync(cancellationToken); + var dependencyInfo = await dependencyInfoResource.ResolvePackage( + packageIdentity, + targetFramework, +#if !NET452 + cacheContext, +#endif + logger, + cancellationToken); + if (dependencyInfo is null) { - get - { - return new ReferenceAssemblies( - ImmutableArray.Create( - MetadataReferences.NetFramework.Net472.Mscorlib, - MetadataReferences.NetFramework.Net472.System, - MetadataReferences.NetFramework.Net472.SystemCore, - MetadataReferences.NetFramework.Net472.SystemData, - MetadataReferences.NetFramework.Net472.SystemDataDataSetExtensions, - MetadataReferences.NetFramework.Net472.SystemDeployment, - MetadataReferences.NetFramework.Net472.SystemDrawing, - MetadataReferences.NetFramework.Net472.SystemNetHttp, - MetadataReferences.NetFramework.Net472.SystemWindowsForms, - MetadataReferences.NetFramework.Net472.SystemXml, - MetadataReferences.NetFramework.Net472.SystemXmlLinq), - ImmutableDictionary.Create>() - .Add(LanguageNames.CSharp, ImmutableArray.Create(MetadataReferences.NetFramework.Net472.MicrosoftCSharp)) - .Add(LanguageNames.VisualBasic, ImmutableArray.Create(MetadataReferences.NetFramework.Net472.MicrosoftVisualBasic))); - } + continue; } - public static ReferenceAssemblies Wpf + dependencies.Add(packageIdentity, dependencyInfo); + foreach (var dependency in dependencyInfo.Dependencies) { - get - { - return new ReferenceAssemblies( - ImmutableArray.Create( - MetadataReferences.NetFramework.Net472.Mscorlib, - MetadataReferences.NetFramework.Net472.PresentationCore, - MetadataReferences.NetFramework.Net472.PresentationFramework, - MetadataReferences.NetFramework.Net472.System, - MetadataReferences.NetFramework.Net472.SystemCore, - MetadataReferences.NetFramework.Net472.SystemData, - MetadataReferences.NetFramework.Net472.SystemDataDataSetExtensions, - MetadataReferences.NetFramework.Net472.SystemNetHttp, - MetadataReferences.NetFramework.Net472.SystemXaml, - MetadataReferences.NetFramework.Net472.SystemXml, - MetadataReferences.NetFramework.Net472.SystemXmlLinq, - MetadataReferences.NetFramework.Net472.WindowsBase), - ImmutableDictionary.Create>() - .Add(LanguageNames.CSharp, ImmutableArray.Create(MetadataReferences.NetFramework.Net472.MicrosoftCSharp)) - .Add(LanguageNames.VisualBasic, ImmutableArray.Create(MetadataReferences.NetFramework.Net472.MicrosoftVisualBasic))); - } + await GetPackageDependenciesAsync(new PackageIdentity(dependency.Id, dependency.VersionRange.MinVersion), targetFramework, repositories, cacheContext, logger, dependencies, cancellationToken); } + + break; } + } - public static class Net48 + public static class NetFramework + { + public static class Net20 { - public static ReferenceAssemblies Default => throw new NotImplementedException(); - - public static ReferenceAssemblies WindowsForms => throw new NotImplementedException(); + public static ReferenceAssemblies Default { get; } + = new ReferenceAssemblies( + "net20", + new PackageIdentity( + "Microsoft.NETFramework.ReferenceAssemblies.net20", + NuGetVersion.Parse(ReferenceAssembliesPackageVersion)), + ImmutableArray.Create(@"build\.NETFramework\v2.0")) + .WithAssemblyIdentityComparer(DesktopAssemblyIdentityComparer.Default) + .AddAssemblies(ImmutableArray.Create("mscorlib", "System", "System.Data", "System.Xml")) + .AddLanguageSpecificAssemblies(LanguageNames.VisualBasic, ImmutableArray.Create("Microsoft.VisualBasic")); + + public static ReferenceAssemblies WindowsForms { get; } + = Default.AddAssemblies(ImmutableArray.Create("System.Drawing", "System.Windows.Forms")); + } - public static ReferenceAssemblies Wpf => throw new NotImplementedException(); + public static class Net40 + { + public static ReferenceAssemblies Default { get; } + = new ReferenceAssemblies( + "net40", + new PackageIdentity( + "Microsoft.NETFramework.ReferenceAssemblies.net40", + NuGetVersion.Parse(ReferenceAssembliesPackageVersion)), + ImmutableArray.Create(@"build\.NETFramework\v4.0")) + .WithAssemblyIdentityComparer(DesktopAssemblyIdentityComparer.Default) + .AddAssemblies(ImmutableArray.Create("mscorlib", "System", "System.Core", "System.Data", "System.Data.DataSetExtensions", "System.Xml", "System.Xml.Linq")) + .AddLanguageSpecificAssemblies(LanguageNames.CSharp, ImmutableArray.Create("Microsoft.CSharp")) + .AddLanguageSpecificAssemblies(LanguageNames.VisualBasic, ImmutableArray.Create("Microsoft.VisualBasic")); + + public static ReferenceAssemblies WindowsForms { get; } + = Default.AddAssemblies(ImmutableArray.Create("System.Deployment", "System.Drawing", "System.Windows.Forms")); + + public static ReferenceAssemblies Wpf { get; } + = Default.AddAssemblies(ImmutableArray.Create("PresentationCore", "PresentationFramework", "System.Xaml", "WindowsBase")); } - } - public static class NetCore - { - public static ReferenceAssemblies NetCore10 => throw new NotImplementedException(); + public static class Net45 + { + public static ReferenceAssemblies Default { get; } + = new ReferenceAssemblies( + "net45", + new PackageIdentity( + "Microsoft.NETFramework.ReferenceAssemblies.net45", + NuGetVersion.Parse(ReferenceAssembliesPackageVersion)), + ImmutableArray.Create(@"build\.NETFramework\v4.5", @"build\.NETFramework\v4.5\Facades")) + .WithAssemblyIdentityComparer(DesktopAssemblyIdentityComparer.Default) + .AddAssemblies(ImmutableArray.Create("mscorlib", "System", "System.Core", "System.Data", "System.Data.DataSetExtensions", "System.Net.Http", "System.Xml", "System.Xml.Linq")) + .AddLanguageSpecificAssemblies(LanguageNames.CSharp, ImmutableArray.Create("Microsoft.CSharp")) + .AddLanguageSpecificAssemblies(LanguageNames.VisualBasic, ImmutableArray.Create("Microsoft.VisualBasic")); + + public static ReferenceAssemblies WindowsForms { get; } + = Default.AddAssemblies(ImmutableArray.Create("System.Deployment", "System.Drawing", "System.Windows.Forms")); + + public static ReferenceAssemblies Wpf { get; } + = Default.AddAssemblies(ImmutableArray.Create("PresentationCore", "PresentationFramework", "System.Xaml", "WindowsBase")); + } - public static ReferenceAssemblies NetCore20 => throw new NotImplementedException(); - } + public static class Net451 + { + public static ReferenceAssemblies Default { get; } + = new ReferenceAssemblies( + "net451", + new PackageIdentity( + "Microsoft.NETFramework.ReferenceAssemblies.net451", + NuGetVersion.Parse(ReferenceAssembliesPackageVersion)), + ImmutableArray.Create(@"build\.NETFramework\v4.5.1", @"build\.NETFramework\v4.5.1\Facades")) + .WithAssemblyIdentityComparer(DesktopAssemblyIdentityComparer.Default) + .AddAssemblies(ImmutableArray.Create("mscorlib", "System", "System.Core", "System.Data", "System.Data.DataSetExtensions", "System.Net.Http", "System.Xml", "System.Xml.Linq")) + .AddLanguageSpecificAssemblies(LanguageNames.CSharp, ImmutableArray.Create("Microsoft.CSharp")) + .AddLanguageSpecificAssemblies(LanguageNames.VisualBasic, ImmutableArray.Create("Microsoft.VisualBasic")); + + public static ReferenceAssemblies WindowsForms { get; } + = Default.AddAssemblies(ImmutableArray.Create("System.Deployment", "System.Drawing", "System.Windows.Forms")); + + public static ReferenceAssemblies Wpf { get; } + = Default.AddAssemblies(ImmutableArray.Create("PresentationCore", "PresentationFramework", "System.Xaml", "WindowsBase")); + } - public static class NetStandard - { - public static ReferenceAssemblies NetStandard10 + public static class Net452 { - get - { - return new ReferenceAssemblies( - ImmutableArray.Create( - MetadataReferences.NetStandard.NetStandard10.SystemCollections, - MetadataReferences.NetStandard.NetStandard10.SystemDiagnosticsDebug, - MetadataReferences.NetStandard.NetStandard10.SystemDiagnosticsTools, - MetadataReferences.NetStandard.NetStandard10.SystemGlobalization, - MetadataReferences.NetStandard.NetStandard10.SystemIO, - MetadataReferences.NetStandard.NetStandard10.SystemLinq, - MetadataReferences.NetStandard.NetStandard10.SystemLinqExpressions, - MetadataReferences.NetStandard.NetStandard10.SystemNetPrimitives, - MetadataReferences.NetStandard.NetStandard10.SystemObjectModel, - MetadataReferences.NetStandard.NetStandard10.SystemReflection, - MetadataReferences.NetStandard.NetStandard10.SystemReflectionExtensions, - MetadataReferences.NetStandard.NetStandard10.SystemReflectionPrimitives, - MetadataReferences.NetStandard.NetStandard10.SystemResourcesResourceManager, - MetadataReferences.NetStandard.NetStandard10.SystemRuntime, - MetadataReferences.NetStandard.NetStandard10.SystemRuntimeExtensions, - MetadataReferences.NetStandard.NetStandard10.SystemTextEncoding, - MetadataReferences.NetStandard.NetStandard10.SystemTextEncodingExtensions, - MetadataReferences.NetStandard.NetStandard10.SystemTextRegularExpressions, - MetadataReferences.NetStandard.NetStandard10.SystemThreading, - MetadataReferences.NetStandard.NetStandard10.SystemThreadingTasks, - MetadataReferences.NetStandard.NetStandard10.SystemXmlReaderWriter, - MetadataReferences.NetStandard.NetStandard10.SystemXmlXDocument), - ImmutableDictionary.Create>()); - } + public static ReferenceAssemblies Default { get; } + = new ReferenceAssemblies( + "net452", + new PackageIdentity( + "Microsoft.NETFramework.ReferenceAssemblies.net452", + NuGetVersion.Parse(ReferenceAssembliesPackageVersion)), + ImmutableArray.Create(@"build\.NETFramework\v4.5.2", @"build\.NETFramework\v4.5.2\Facades")) + .WithAssemblyIdentityComparer(DesktopAssemblyIdentityComparer.Default) + .AddAssemblies(ImmutableArray.Create("mscorlib", "System", "System.Core", "System.Data", "System.Data.DataSetExtensions", "System.Net.Http", "System.Xml", "System.Xml.Linq")) + .AddLanguageSpecificAssemblies(LanguageNames.CSharp, ImmutableArray.Create("Microsoft.CSharp")) + .AddLanguageSpecificAssemblies(LanguageNames.VisualBasic, ImmutableArray.Create("Microsoft.VisualBasic")); + + public static ReferenceAssemblies WindowsForms { get; } + = Default.AddAssemblies(ImmutableArray.Create("System.Deployment", "System.Drawing", "System.Windows.Forms")); + + public static ReferenceAssemblies Wpf { get; } + = Default.AddAssemblies(ImmutableArray.Create("PresentationCore", "PresentationFramework", "System.Xaml", "WindowsBase")); } - public static ReferenceAssemblies NetStandard11 + public static class Net46 { - get - { - return new ReferenceAssemblies( - ImmutableArray.Create( - MetadataReferences.NetStandard.NetStandard11.SystemCollections, - MetadataReferences.NetStandard.NetStandard11.SystemCollectionsConcurrent, - MetadataReferences.NetStandard.NetStandard11.SystemDiagnosticsDebug, - MetadataReferences.NetStandard.NetStandard11.SystemDiagnosticsTools, - MetadataReferences.NetStandard.NetStandard11.SystemDiagnosticsTracing, - MetadataReferences.NetStandard.NetStandard11.SystemGlobalization, - MetadataReferences.NetStandard.NetStandard11.SystemIO, - MetadataReferences.NetStandard.NetStandard11.SystemIOCompression, - MetadataReferences.NetStandard.NetStandard11.SystemLinq, - MetadataReferences.NetStandard.NetStandard11.SystemLinqExpressions, - MetadataReferences.NetStandard.NetStandard11.SystemNetHttp, - MetadataReferences.NetStandard.NetStandard11.SystemNetPrimitives, - MetadataReferences.NetStandard.NetStandard11.SystemObjectModel, - MetadataReferences.NetStandard.NetStandard11.SystemReflection, - MetadataReferences.NetStandard.NetStandard11.SystemReflectionExtensions, - MetadataReferences.NetStandard.NetStandard11.SystemReflectionPrimitives, - MetadataReferences.NetStandard.NetStandard11.SystemResourcesResourceManager, - MetadataReferences.NetStandard.NetStandard11.SystemRuntime, - MetadataReferences.NetStandard.NetStandard11.SystemRuntimeExtensions, - MetadataReferences.NetStandard.NetStandard11.SystemRuntimeInteropServices, - MetadataReferences.NetStandard.NetStandard11.SystemRuntimeInteropServicesRuntimeInformation, - MetadataReferences.NetStandard.NetStandard11.SystemRuntimeNumerics, - MetadataReferences.NetStandard.NetStandard11.SystemTextEncoding, - MetadataReferences.NetStandard.NetStandard11.SystemTextEncodingExtensions, - MetadataReferences.NetStandard.NetStandard11.SystemTextRegularExpressions, - MetadataReferences.NetStandard.NetStandard11.SystemThreading, - MetadataReferences.NetStandard.NetStandard11.SystemThreadingTasks, - MetadataReferences.NetStandard.NetStandard11.SystemXmlReaderWriter, - MetadataReferences.NetStandard.NetStandard11.SystemXmlXDocument), - ImmutableDictionary.Create>()); - } + public static ReferenceAssemblies Default { get; } + = new ReferenceAssemblies( + "net46", + new PackageIdentity( + "Microsoft.NETFramework.ReferenceAssemblies.net46", + NuGetVersion.Parse(ReferenceAssembliesPackageVersion)), + ImmutableArray.Create(@"build\.NETFramework\v4.6", @"build\.NETFramework\v4.6\Facades")) + .WithAssemblyIdentityComparer(DesktopAssemblyIdentityComparer.Default) + .AddAssemblies(ImmutableArray.Create("mscorlib", "System", "System.Core", "System.Data", "System.Data.DataSetExtensions", "System.Net.Http", "System.Xml", "System.Xml.Linq")) + .AddLanguageSpecificAssemblies(LanguageNames.CSharp, ImmutableArray.Create("Microsoft.CSharp")) + .AddLanguageSpecificAssemblies(LanguageNames.VisualBasic, ImmutableArray.Create("Microsoft.VisualBasic")); + + public static ReferenceAssemblies WindowsForms { get; } + = Default.AddAssemblies(ImmutableArray.Create("System.Deployment", "System.Drawing", "System.Windows.Forms")); + + public static ReferenceAssemblies Wpf { get; } + = Default.AddAssemblies(ImmutableArray.Create("PresentationCore", "PresentationFramework", "System.Xaml", "WindowsBase")); } - public static ReferenceAssemblies NetStandard12 + public static class Net461 { - get - { - return new ReferenceAssemblies( - ImmutableArray.Create( - MetadataReferences.NetStandard.NetStandard12.SystemCollections, - MetadataReferences.NetStandard.NetStandard12.SystemCollectionsConcurrent, - MetadataReferences.NetStandard.NetStandard12.SystemDiagnosticsDebug, - MetadataReferences.NetStandard.NetStandard12.SystemDiagnosticsTools, - MetadataReferences.NetStandard.NetStandard12.SystemDiagnosticsTracing, - MetadataReferences.NetStandard.NetStandard12.SystemGlobalization, - MetadataReferences.NetStandard.NetStandard12.SystemIO, - MetadataReferences.NetStandard.NetStandard12.SystemIOCompression, - MetadataReferences.NetStandard.NetStandard12.SystemLinq, - MetadataReferences.NetStandard.NetStandard12.SystemLinqExpressions, - MetadataReferences.NetStandard.NetStandard12.SystemNetHttp, - MetadataReferences.NetStandard.NetStandard12.SystemNetPrimitives, - MetadataReferences.NetStandard.NetStandard12.SystemObjectModel, - MetadataReferences.NetStandard.NetStandard12.SystemReflection, - MetadataReferences.NetStandard.NetStandard12.SystemReflectionExtensions, - MetadataReferences.NetStandard.NetStandard12.SystemReflectionPrimitives, - MetadataReferences.NetStandard.NetStandard12.SystemResourcesResourceManager, - MetadataReferences.NetStandard.NetStandard12.SystemRuntime, - MetadataReferences.NetStandard.NetStandard12.SystemRuntimeExtensions, - MetadataReferences.NetStandard.NetStandard12.SystemRuntimeInteropServices, - MetadataReferences.NetStandard.NetStandard12.SystemRuntimeInteropServicesRuntimeInformation, - MetadataReferences.NetStandard.NetStandard12.SystemRuntimeNumerics, - MetadataReferences.NetStandard.NetStandard12.SystemTextEncoding, - MetadataReferences.NetStandard.NetStandard12.SystemTextEncodingExtensions, - MetadataReferences.NetStandard.NetStandard12.SystemTextRegularExpressions, - MetadataReferences.NetStandard.NetStandard12.SystemThreading, - MetadataReferences.NetStandard.NetStandard12.SystemThreadingTasks, - MetadataReferences.NetStandard.NetStandard12.SystemThreadingTimer, - MetadataReferences.NetStandard.NetStandard12.SystemXmlReaderWriter, - MetadataReferences.NetStandard.NetStandard12.SystemXmlXDocument), - ImmutableDictionary.Create>()); - } + public static ReferenceAssemblies Default { get; } + = new ReferenceAssemblies( + "net461", + new PackageIdentity( + "Microsoft.NETFramework.ReferenceAssemblies.net461", + NuGetVersion.Parse(ReferenceAssembliesPackageVersion)), + ImmutableArray.Create(@"build\.NETFramework\v4.6.1", @"build\.NETFramework\v4.6.1\Facades")) + .WithAssemblyIdentityComparer(DesktopAssemblyIdentityComparer.Default) + .AddAssemblies(ImmutableArray.Create("mscorlib", "System", "System.Core", "System.Data", "System.Data.DataSetExtensions", "System.Net.Http", "System.Xml", "System.Xml.Linq")) + .AddLanguageSpecificAssemblies(LanguageNames.CSharp, ImmutableArray.Create("Microsoft.CSharp")) + .AddLanguageSpecificAssemblies(LanguageNames.VisualBasic, ImmutableArray.Create("Microsoft.VisualBasic")); + + public static ReferenceAssemblies WindowsForms { get; } + = Default.AddAssemblies(ImmutableArray.Create("System.Deployment", "System.Drawing", "System.Windows.Forms")); + + public static ReferenceAssemblies Wpf { get; } + = Default.AddAssemblies(ImmutableArray.Create("PresentationCore", "PresentationFramework", "System.Xaml", "WindowsBase")); } - public static ReferenceAssemblies NetStandard13 + public static class Net462 { - get - { - return new ReferenceAssemblies( - ImmutableArray.Create( - MetadataReferences.NetStandard.NetStandard13.MicrosoftWin32Primitives, - MetadataReferences.NetStandard.NetStandard13.SystemAppContext, - MetadataReferences.NetStandard.NetStandard13.SystemCollections, - MetadataReferences.NetStandard.NetStandard13.SystemCollectionsConcurrent, - MetadataReferences.NetStandard.NetStandard13.SystemConsole, - MetadataReferences.NetStandard.NetStandard13.SystemDiagnosticsDebug, - MetadataReferences.NetStandard.NetStandard13.SystemDiagnosticsTools, - MetadataReferences.NetStandard.NetStandard13.SystemDiagnosticsTracing, - MetadataReferences.NetStandard.NetStandard13.SystemGlobalization, - MetadataReferences.NetStandard.NetStandard13.SystemGlobalizationCalendars, - MetadataReferences.NetStandard.NetStandard13.SystemIO, - MetadataReferences.NetStandard.NetStandard13.SystemIOCompression, - MetadataReferences.NetStandard.NetStandard13.SystemIOCompressionZipFile, - MetadataReferences.NetStandard.NetStandard13.SystemIOFileSystem, - MetadataReferences.NetStandard.NetStandard13.SystemIOFileSystemPrimitives, - MetadataReferences.NetStandard.NetStandard13.SystemLinq, - MetadataReferences.NetStandard.NetStandard13.SystemLinqExpressions, - MetadataReferences.NetStandard.NetStandard13.SystemNetHttp, - MetadataReferences.NetStandard.NetStandard13.SystemNetPrimitives, - MetadataReferences.NetStandard.NetStandard13.SystemNetSockets, - MetadataReferences.NetStandard.NetStandard13.SystemObjectModel, - MetadataReferences.NetStandard.NetStandard13.SystemReflection, - MetadataReferences.NetStandard.NetStandard13.SystemReflectionExtensions, - MetadataReferences.NetStandard.NetStandard13.SystemReflectionPrimitives, - MetadataReferences.NetStandard.NetStandard13.SystemResourcesResourceManager, - MetadataReferences.NetStandard.NetStandard13.SystemRuntime, - MetadataReferences.NetStandard.NetStandard13.SystemRuntimeExtensions, - MetadataReferences.NetStandard.NetStandard13.SystemRuntimeHandles, - MetadataReferences.NetStandard.NetStandard13.SystemRuntimeInteropServices, - MetadataReferences.NetStandard.NetStandard13.SystemRuntimeInteropServicesRuntimeInformation, - MetadataReferences.NetStandard.NetStandard13.SystemRuntimeNumerics, - MetadataReferences.NetStandard.NetStandard13.SystemSecurityCryptographyAlgorithms, - MetadataReferences.NetStandard.NetStandard13.SystemSecurityCryptographyEncoding, - MetadataReferences.NetStandard.NetStandard13.SystemSecurityCryptographyPrimitives, - MetadataReferences.NetStandard.NetStandard13.SystemSecurityCryptographyX509Certificates, - MetadataReferences.NetStandard.NetStandard13.SystemTextEncoding, - MetadataReferences.NetStandard.NetStandard13.SystemTextEncodingExtensions, - MetadataReferences.NetStandard.NetStandard13.SystemTextRegularExpressions, - MetadataReferences.NetStandard.NetStandard13.SystemThreading, - MetadataReferences.NetStandard.NetStandard13.SystemThreadingTasks, - MetadataReferences.NetStandard.NetStandard13.SystemThreadingTimer, - MetadataReferences.NetStandard.NetStandard13.SystemXmlReaderWriter, - MetadataReferences.NetStandard.NetStandard13.SystemXmlXDocument), - ImmutableDictionary.Create>()); - } + public static ReferenceAssemblies Default { get; } + = new ReferenceAssemblies( + "net462", + new PackageIdentity( + "Microsoft.NETFramework.ReferenceAssemblies.net462", + NuGetVersion.Parse(ReferenceAssembliesPackageVersion)), + ImmutableArray.Create(@"build\.NETFramework\v4.6.2", @"build\.NETFramework\v4.6.2\Facades")) + .WithAssemblyIdentityComparer(DesktopAssemblyIdentityComparer.Default) + .AddAssemblies(ImmutableArray.Create("mscorlib", "System", "System.Core", "System.Data", "System.Data.DataSetExtensions", "System.Net.Http", "System.Xml", "System.Xml.Linq")) + .AddLanguageSpecificAssemblies(LanguageNames.CSharp, ImmutableArray.Create("Microsoft.CSharp")) + .AddLanguageSpecificAssemblies(LanguageNames.VisualBasic, ImmutableArray.Create("Microsoft.VisualBasic")); + + public static ReferenceAssemblies WindowsForms { get; } + = Default.AddAssemblies(ImmutableArray.Create("System.Deployment", "System.Drawing", "System.Windows.Forms")); + + public static ReferenceAssemblies Wpf { get; } + = Default.AddAssemblies(ImmutableArray.Create("PresentationCore", "PresentationFramework", "System.Xaml", "WindowsBase")); } - public static ReferenceAssemblies NetStandard14 + public static class Net47 { - get - { - return new ReferenceAssemblies( - ImmutableArray.Create( - MetadataReferences.NetStandard.NetStandard14.MicrosoftWin32Primitives, - MetadataReferences.NetStandard.NetStandard14.SystemAppContext, - MetadataReferences.NetStandard.NetStandard14.SystemCollections, - MetadataReferences.NetStandard.NetStandard14.SystemCollectionsConcurrent, - MetadataReferences.NetStandard.NetStandard14.SystemConsole, - MetadataReferences.NetStandard.NetStandard14.SystemDiagnosticsDebug, - MetadataReferences.NetStandard.NetStandard14.SystemDiagnosticsTools, - MetadataReferences.NetStandard.NetStandard14.SystemDiagnosticsTracing, - MetadataReferences.NetStandard.NetStandard14.SystemGlobalization, - MetadataReferences.NetStandard.NetStandard14.SystemGlobalizationCalendars, - MetadataReferences.NetStandard.NetStandard14.SystemIO, - MetadataReferences.NetStandard.NetStandard14.SystemIOCompression, - MetadataReferences.NetStandard.NetStandard14.SystemIOCompressionZipFile, - MetadataReferences.NetStandard.NetStandard14.SystemIOFileSystem, - MetadataReferences.NetStandard.NetStandard14.SystemIOFileSystemPrimitives, - MetadataReferences.NetStandard.NetStandard14.SystemLinq, - MetadataReferences.NetStandard.NetStandard14.SystemLinqExpressions, - MetadataReferences.NetStandard.NetStandard14.SystemNetHttp, - MetadataReferences.NetStandard.NetStandard14.SystemNetPrimitives, - MetadataReferences.NetStandard.NetStandard14.SystemNetSockets, - MetadataReferences.NetStandard.NetStandard14.SystemObjectModel, - MetadataReferences.NetStandard.NetStandard14.SystemReflection, - MetadataReferences.NetStandard.NetStandard14.SystemReflectionExtensions, - MetadataReferences.NetStandard.NetStandard14.SystemReflectionPrimitives, - MetadataReferences.NetStandard.NetStandard14.SystemResourcesResourceManager, - MetadataReferences.NetStandard.NetStandard14.SystemRuntime, - MetadataReferences.NetStandard.NetStandard14.SystemRuntimeExtensions, - MetadataReferences.NetStandard.NetStandard14.SystemRuntimeHandles, - MetadataReferences.NetStandard.NetStandard14.SystemRuntimeInteropServices, - MetadataReferences.NetStandard.NetStandard14.SystemRuntimeInteropServicesRuntimeInformation, - MetadataReferences.NetStandard.NetStandard14.SystemRuntimeNumerics, - MetadataReferences.NetStandard.NetStandard14.SystemSecurityCryptographyAlgorithms, - MetadataReferences.NetStandard.NetStandard14.SystemSecurityCryptographyEncoding, - MetadataReferences.NetStandard.NetStandard14.SystemSecurityCryptographyPrimitives, - MetadataReferences.NetStandard.NetStandard14.SystemSecurityCryptographyX509Certificates, - MetadataReferences.NetStandard.NetStandard14.SystemTextEncoding, - MetadataReferences.NetStandard.NetStandard14.SystemTextEncodingExtensions, - MetadataReferences.NetStandard.NetStandard14.SystemTextRegularExpressions, - MetadataReferences.NetStandard.NetStandard14.SystemThreading, - MetadataReferences.NetStandard.NetStandard14.SystemThreadingTasks, - MetadataReferences.NetStandard.NetStandard14.SystemThreadingTimer, - MetadataReferences.NetStandard.NetStandard14.SystemXmlReaderWriter, - MetadataReferences.NetStandard.NetStandard14.SystemXmlXDocument), - ImmutableDictionary.Create>()); - } + public static ReferenceAssemblies Default { get; } + = new ReferenceAssemblies( + "net47", + new PackageIdentity( + "Microsoft.NETFramework.ReferenceAssemblies.net47", + NuGetVersion.Parse(ReferenceAssembliesPackageVersion)), + ImmutableArray.Create(@"build\.NETFramework\v4.7", @"build\.NETFramework\v4.7\Facades")) + .WithAssemblyIdentityComparer(DesktopAssemblyIdentityComparer.Default) + .AddAssemblies(ImmutableArray.Create("mscorlib", "System", "System.Core", "System.Data", "System.Data.DataSetExtensions", "System.Net.Http", "System.Xml", "System.Xml.Linq")) + .AddLanguageSpecificAssemblies(LanguageNames.CSharp, ImmutableArray.Create("Microsoft.CSharp")) + .AddLanguageSpecificAssemblies(LanguageNames.VisualBasic, ImmutableArray.Create("Microsoft.VisualBasic")); + + public static ReferenceAssemblies WindowsForms { get; } + = Default.AddAssemblies(ImmutableArray.Create("System.Deployment", "System.Drawing", "System.Windows.Forms")); + + public static ReferenceAssemblies Wpf { get; } + = Default.AddAssemblies(ImmutableArray.Create("PresentationCore", "PresentationFramework", "System.Xaml", "WindowsBase")); } - public static ReferenceAssemblies NetStandard15 + public static class Net471 { - get - { - return new ReferenceAssemblies( - ImmutableArray.Create( - MetadataReferences.NetStandard.NetStandard15.MicrosoftWin32Primitives, - MetadataReferences.NetStandard.NetStandard15.SystemAppContext, - MetadataReferences.NetStandard.NetStandard15.SystemCollections, - MetadataReferences.NetStandard.NetStandard15.SystemCollectionsConcurrent, - MetadataReferences.NetStandard.NetStandard15.SystemConsole, - MetadataReferences.NetStandard.NetStandard15.SystemDiagnosticsDebug, - MetadataReferences.NetStandard.NetStandard15.SystemDiagnosticsTools, - MetadataReferences.NetStandard.NetStandard15.SystemDiagnosticsTracing, - MetadataReferences.NetStandard.NetStandard15.SystemGlobalization, - MetadataReferences.NetStandard.NetStandard15.SystemGlobalizationCalendars, - MetadataReferences.NetStandard.NetStandard15.SystemIO, - MetadataReferences.NetStandard.NetStandard15.SystemIOCompression, - MetadataReferences.NetStandard.NetStandard15.SystemIOCompressionZipFile, - MetadataReferences.NetStandard.NetStandard15.SystemIOFileSystem, - MetadataReferences.NetStandard.NetStandard15.SystemIOFileSystemPrimitives, - MetadataReferences.NetStandard.NetStandard15.SystemLinq, - MetadataReferences.NetStandard.NetStandard15.SystemLinqExpressions, - MetadataReferences.NetStandard.NetStandard15.SystemNetHttp, - MetadataReferences.NetStandard.NetStandard15.SystemNetPrimitives, - MetadataReferences.NetStandard.NetStandard15.SystemNetSockets, - MetadataReferences.NetStandard.NetStandard15.SystemObjectModel, - MetadataReferences.NetStandard.NetStandard15.SystemReflection, - MetadataReferences.NetStandard.NetStandard15.SystemReflectionExtensions, - MetadataReferences.NetStandard.NetStandard15.SystemReflectionPrimitives, - MetadataReferences.NetStandard.NetStandard15.SystemResourcesResourceManager, - MetadataReferences.NetStandard.NetStandard15.SystemRuntime, - MetadataReferences.NetStandard.NetStandard15.SystemRuntimeExtensions, - MetadataReferences.NetStandard.NetStandard15.SystemRuntimeHandles, - MetadataReferences.NetStandard.NetStandard15.SystemRuntimeInteropServices, - MetadataReferences.NetStandard.NetStandard15.SystemRuntimeInteropServicesRuntimeInformation, - MetadataReferences.NetStandard.NetStandard15.SystemRuntimeNumerics, - MetadataReferences.NetStandard.NetStandard15.SystemSecurityCryptographyAlgorithms, - MetadataReferences.NetStandard.NetStandard15.SystemSecurityCryptographyEncoding, - MetadataReferences.NetStandard.NetStandard15.SystemSecurityCryptographyPrimitives, - MetadataReferences.NetStandard.NetStandard15.SystemSecurityCryptographyX509Certificates, - MetadataReferences.NetStandard.NetStandard15.SystemTextEncoding, - MetadataReferences.NetStandard.NetStandard15.SystemTextEncodingExtensions, - MetadataReferences.NetStandard.NetStandard15.SystemTextRegularExpressions, - MetadataReferences.NetStandard.NetStandard15.SystemThreading, - MetadataReferences.NetStandard.NetStandard15.SystemThreadingTasks, - MetadataReferences.NetStandard.NetStandard15.SystemThreadingTimer, - MetadataReferences.NetStandard.NetStandard15.SystemXmlReaderWriter, - MetadataReferences.NetStandard.NetStandard15.SystemXmlXDocument), - ImmutableDictionary.Create>()); - } + public static ReferenceAssemblies Default { get; } + = new ReferenceAssemblies( + "net471", + new PackageIdentity( + "Microsoft.NETFramework.ReferenceAssemblies.net471", + NuGetVersion.Parse(ReferenceAssembliesPackageVersion)), + ImmutableArray.Create(@"build\.NETFramework\v4.7.1", @"build\.NETFramework\v4.7.1\Facades")) + .WithAssemblyIdentityComparer(DesktopAssemblyIdentityComparer.Default) + .AddAssemblies(ImmutableArray.Create("mscorlib", "System", "System.Core", "System.Data", "System.Data.DataSetExtensions", "System.Net.Http", "System.Xml", "System.Xml.Linq")) + .AddLanguageSpecificAssemblies(LanguageNames.CSharp, ImmutableArray.Create("Microsoft.CSharp")) + .AddLanguageSpecificAssemblies(LanguageNames.VisualBasic, ImmutableArray.Create("Microsoft.VisualBasic")); + + public static ReferenceAssemblies WindowsForms { get; } + = Default.AddAssemblies(ImmutableArray.Create("System.Deployment", "System.Drawing", "System.Windows.Forms")); + + public static ReferenceAssemblies Wpf { get; } + = Default.AddAssemblies(ImmutableArray.Create("PresentationCore", "PresentationFramework", "System.Xaml", "WindowsBase")); } - public static ReferenceAssemblies NetStandard16 + public static class Net472 { - get - { - return new ReferenceAssemblies( - ImmutableArray.Create( - MetadataReferences.NetStandard.NetStandard16.MicrosoftWin32Primitives, - MetadataReferences.NetStandard.NetStandard16.SystemAppContext, - MetadataReferences.NetStandard.NetStandard16.SystemCollections, - MetadataReferences.NetStandard.NetStandard16.SystemCollectionsConcurrent, - MetadataReferences.NetStandard.NetStandard16.SystemConsole, - MetadataReferences.NetStandard.NetStandard16.SystemDiagnosticsDebug, - MetadataReferences.NetStandard.NetStandard16.SystemDiagnosticsTools, - MetadataReferences.NetStandard.NetStandard16.SystemDiagnosticsTracing, - MetadataReferences.NetStandard.NetStandard16.SystemGlobalization, - MetadataReferences.NetStandard.NetStandard16.SystemGlobalizationCalendars, - MetadataReferences.NetStandard.NetStandard16.SystemIO, - MetadataReferences.NetStandard.NetStandard16.SystemIOCompression, - MetadataReferences.NetStandard.NetStandard16.SystemIOCompressionZipFile, - MetadataReferences.NetStandard.NetStandard16.SystemIOFileSystem, - MetadataReferences.NetStandard.NetStandard16.SystemIOFileSystemPrimitives, - MetadataReferences.NetStandard.NetStandard16.SystemLinq, - MetadataReferences.NetStandard.NetStandard16.SystemLinqExpressions, - MetadataReferences.NetStandard.NetStandard16.SystemNetHttp, - MetadataReferences.NetStandard.NetStandard16.SystemNetPrimitives, - MetadataReferences.NetStandard.NetStandard16.SystemNetSockets, - MetadataReferences.NetStandard.NetStandard16.SystemObjectModel, - MetadataReferences.NetStandard.NetStandard16.SystemReflection, - MetadataReferences.NetStandard.NetStandard16.SystemReflectionExtensions, - MetadataReferences.NetStandard.NetStandard16.SystemReflectionPrimitives, - MetadataReferences.NetStandard.NetStandard16.SystemResourcesResourceManager, - MetadataReferences.NetStandard.NetStandard16.SystemRuntime, - MetadataReferences.NetStandard.NetStandard16.SystemRuntimeExtensions, - MetadataReferences.NetStandard.NetStandard16.SystemRuntimeHandles, - MetadataReferences.NetStandard.NetStandard16.SystemRuntimeInteropServices, - MetadataReferences.NetStandard.NetStandard16.SystemRuntimeInteropServicesRuntimeInformation, - MetadataReferences.NetStandard.NetStandard16.SystemRuntimeNumerics, - MetadataReferences.NetStandard.NetStandard16.SystemSecurityCryptographyAlgorithms, - MetadataReferences.NetStandard.NetStandard16.SystemSecurityCryptographyEncoding, - MetadataReferences.NetStandard.NetStandard16.SystemSecurityCryptographyPrimitives, - MetadataReferences.NetStandard.NetStandard16.SystemSecurityCryptographyX509Certificates, - MetadataReferences.NetStandard.NetStandard16.SystemTextEncoding, - MetadataReferences.NetStandard.NetStandard16.SystemTextEncodingExtensions, - MetadataReferences.NetStandard.NetStandard16.SystemTextRegularExpressions, - MetadataReferences.NetStandard.NetStandard16.SystemThreading, - MetadataReferences.NetStandard.NetStandard16.SystemThreadingTasks, - MetadataReferences.NetStandard.NetStandard16.SystemThreadingTimer, - MetadataReferences.NetStandard.NetStandard16.SystemXmlReaderWriter, - MetadataReferences.NetStandard.NetStandard16.SystemXmlXDocument), - ImmutableDictionary.Create>()); - } + public static ReferenceAssemblies Default { get; } + = new ReferenceAssemblies( + "net472", + new PackageIdentity( + "Microsoft.NETFramework.ReferenceAssemblies.net472", + NuGetVersion.Parse(ReferenceAssembliesPackageVersion)), + ImmutableArray.Create(@"build\.NETFramework\v4.7.2", @"build\.NETFramework\v4.7.2\Facades")) + .WithAssemblyIdentityComparer(DesktopAssemblyIdentityComparer.Default) + .AddAssemblies(ImmutableArray.Create("mscorlib", "System", "System.Core", "System.Data", "System.Data.DataSetExtensions", "System.Net.Http", "System.Xml", "System.Xml.Linq")) + .AddLanguageSpecificAssemblies(LanguageNames.CSharp, ImmutableArray.Create("Microsoft.CSharp")) + .AddLanguageSpecificAssemblies(LanguageNames.VisualBasic, ImmutableArray.Create("Microsoft.VisualBasic")); + + public static ReferenceAssemblies WindowsForms { get; } + = Default.AddAssemblies(ImmutableArray.Create("System.Deployment", "System.Drawing", "System.Windows.Forms")); + + public static ReferenceAssemblies Wpf { get; } + = Default.AddAssemblies(ImmutableArray.Create("PresentationCore", "PresentationFramework", "System.Xaml", "WindowsBase")); } - public static ReferenceAssemblies NetStandard2 + public static class Net48 { - get - { - var referenceAssembliesPath = Path.Combine(MetadataReferences.PackagesPath, "netstandard.library", "2.0.0", "build", "netstandard2.0", "ref"); - var referenceAssemblies = Directory.GetFiles(referenceAssembliesPath, "*.dll"); - var metadataReferences = referenceAssemblies.Select(path => MetadataReferences.CreateReferenceFromFile(path)); - return new ReferenceAssemblies( - ImmutableArray.CreateRange(metadataReferences), - ImmutableDictionary.Create>()); - } + public static ReferenceAssemblies Default { get; } + = new ReferenceAssemblies( + "net48", + new PackageIdentity( + "Microsoft.NETFramework.ReferenceAssemblies.net48", + NuGetVersion.Parse(ReferenceAssembliesPackageVersion)), + ImmutableArray.Create(@"build\.NETFramework\v4.8", @"build\.NETFramework\v4.8\Facades")) + .WithAssemblyIdentityComparer(DesktopAssemblyIdentityComparer.Default) + .AddAssemblies(ImmutableArray.Create("mscorlib", "System", "System.Core", "System.Data", "System.Data.DataSetExtensions", "System.Net.Http", "System.Xml", "System.Xml.Linq")) + .AddLanguageSpecificAssemblies(LanguageNames.CSharp, ImmutableArray.Create("Microsoft.CSharp")) + .AddLanguageSpecificAssemblies(LanguageNames.VisualBasic, ImmutableArray.Create("Microsoft.VisualBasic")); + + public static ReferenceAssemblies WindowsForms { get; } + = Default.AddAssemblies(ImmutableArray.Create("System.Deployment", "System.Drawing", "System.Windows.Forms")); + + public static ReferenceAssemblies Wpf { get; } + = Default.AddAssemblies(ImmutableArray.Create("PresentationCore", "PresentationFramework", "System.Xaml", "WindowsBase")); } } + public static class NetCore + { + public static ReferenceAssemblies NetCoreApp10 { get; } + = new ReferenceAssemblies("netcoreapp1.0") + .AddPackages(ImmutableArray.Create(new PackageIdentity("Microsoft.NETCore.App", NuGetVersion.Parse("1.0.16")))); + + public static ReferenceAssemblies NetCoreApp11 { get; } + = new ReferenceAssemblies("netcoreapp1.1") + .AddPackages(ImmutableArray.Create(new PackageIdentity("Microsoft.NETCore.App", NuGetVersion.Parse("1.1.13")))); + + public static ReferenceAssemblies NetCoreApp20 { get; } + = new ReferenceAssemblies("netcoreapp2.0") + .AddPackages(ImmutableArray.Create(new PackageIdentity("Microsoft.NETCore.App", NuGetVersion.Parse("2.0.9")))); + + public static ReferenceAssemblies NetCoreApp21 { get; } + = new ReferenceAssemblies("netcoreapp2.1") + .AddPackages(ImmutableArray.Create(new PackageIdentity("Microsoft.NETCore.App", NuGetVersion.Parse("2.1.13")))); + } + + public static class NetStandard + { + public static ReferenceAssemblies NetStandard10 { get; } + = new ReferenceAssemblies("netstandard1.0") + .AddPackages(ImmutableArray.Create(new PackageIdentity("NETStandard.Library", NuGetVersion.Parse("1.6.1")))); + + public static ReferenceAssemblies NetStandard11 { get; } + = new ReferenceAssemblies("netstandard1.1") + .AddPackages(ImmutableArray.Create(new PackageIdentity("NETStandard.Library", NuGetVersion.Parse("1.6.1")))); + + public static ReferenceAssemblies NetStandard12 { get; } + = new ReferenceAssemblies("netstandard1.2") + .AddPackages(ImmutableArray.Create(new PackageIdentity("NETStandard.Library", NuGetVersion.Parse("1.6.1")))); + + public static ReferenceAssemblies NetStandard13 { get; } + = new ReferenceAssemblies("netstandard1.3") + .AddPackages(ImmutableArray.Create(new PackageIdentity("NETStandard.Library", NuGetVersion.Parse("1.6.1")))); + + public static ReferenceAssemblies NetStandard14 { get; } + = new ReferenceAssemblies("netstandard1.4") + .AddPackages(ImmutableArray.Create(new PackageIdentity("NETStandard.Library", NuGetVersion.Parse("1.6.1")))); + + public static ReferenceAssemblies NetStandard15 { get; } + = new ReferenceAssemblies("netstandard1.5") + .AddPackages(ImmutableArray.Create(new PackageIdentity("NETStandard.Library", NuGetVersion.Parse("1.6.1")))); + + public static ReferenceAssemblies NetStandard16 { get; } + = new ReferenceAssemblies("netstandard1.6") + .AddPackages(ImmutableArray.Create(new PackageIdentity("NETStandard.Library", NuGetVersion.Parse("1.6.1")))); + + public static ReferenceAssemblies NetStandard20 { get; } + = new ReferenceAssemblies( + "netstandard2.0", + new PackageIdentity( + "NETStandard.Library", + NuGetVersion.Parse("2.0.3")), + ImmutableArray.Create(@"build\netstandard2.0\ref")) + .AddAssemblies(ImmutableArray.Create("netstandard")); + + ////public static ReferenceAssemblies NetStandard21 { get; } + //// = new ReferenceAssemblies("netstandard2.1") + //// .AddPackages(ImmutableArray.Create(new PackageIdentity("NETStandard.Library", NuGetVersion.Parse("2.0.3")))); + } + +#if false public static class Runtime { public static ReferenceAssemblies Current @@ -985,5 +775,6 @@ public static ReferenceAssemblies Current } } } +#endif } } diff --git a/src/Microsoft.CodeAnalysis.Testing/Microsoft.CodeAnalysis.CodeFix.Testing/CodeFixTest`1.cs b/src/Microsoft.CodeAnalysis.Testing/Microsoft.CodeAnalysis.CodeFix.Testing/CodeFixTest`1.cs index 240428e688..82865ff608 100644 --- a/src/Microsoft.CodeAnalysis.Testing/Microsoft.CodeAnalysis.CodeFix.Testing/CodeFixTest`1.cs +++ b/src/Microsoft.CodeAnalysis.Testing/Microsoft.CodeAnalysis.CodeFix.Testing/CodeFixTest`1.cs @@ -328,7 +328,7 @@ private async Task VerifyFixAsync( IVerifier verifier, CancellationToken cancellationToken) { - var project = CreateProject(oldState.Sources.ToArray(), oldState.AdditionalFiles.ToArray(), oldState.AdditionalProjects.ToArray(), oldState.AdditionalReferences.ToArray(), language); + var project = await CreateProjectAsync(oldState.Sources.ToArray(), oldState.AdditionalFiles.ToArray(), oldState.AdditionalProjects.ToArray(), oldState.AdditionalReferences.ToArray(), language, cancellationToken); var compilerDiagnostics = await GetCompilerDiagnosticsAsync(project, cancellationToken).ConfigureAwait(false); project = await getFixedProject(analyzers, codeFixProviders, CodeFixIndex, CodeFixEquivalenceKey, project, numberOfIterations, verifier, cancellationToken).ConfigureAwait(false); diff --git a/tests/Microsoft.CodeAnalysis.Testing/Microsoft.CodeAnalysis.Analyzer.Testing.UnitTests/CompilerErrorTests.cs b/tests/Microsoft.CodeAnalysis.Testing/Microsoft.CodeAnalysis.Analyzer.Testing.UnitTests/CompilerErrorTests.cs index 2b04f1ba45..c9f4791faa 100644 --- a/tests/Microsoft.CodeAnalysis.Testing/Microsoft.CodeAnalysis.Analyzer.Testing.UnitTests/CompilerErrorTests.cs +++ b/tests/Microsoft.CodeAnalysis.Testing/Microsoft.CodeAnalysis.Analyzer.Testing.UnitTests/CompilerErrorTests.cs @@ -2,8 +2,11 @@ using System; using System.Collections.Generic; +using System.Collections.Immutable; using System.Threading.Tasks; using Microsoft.CodeAnalysis.Diagnostics; +using NuGet.Packaging.Core; +using NuGet.Versioning; using Xunit; namespace Microsoft.CodeAnalysis.Testing @@ -213,7 +216,7 @@ End Class await new VisualBasicTest { TestCode = testCode }.RunAsync(); } - [Fact(Skip = "Need to support NuGet package System.ValueTuple")] + [Fact] public async Task TestCSharpValueTupleUsageNet46() { var testCode = @" @@ -228,7 +231,8 @@ class TestClass { { Sources = { testCode }, }, - ReferenceAssemblies = ReferenceAssemblies.NetFramework.Net46.Default, + ReferenceAssemblies = ReferenceAssemblies.NetFramework.Net46.Default + .AddPackages(ImmutableArray.Create(new PackageIdentity("System.ValueTuple", NuGetVersion.Parse("4.5.0")))), }.RunAsync(); } diff --git a/tests/Microsoft.CodeAnalysis.Testing/Microsoft.CodeAnalysis.Analyzer.Testing.UnitTests/MetadataReferenceTests.cs b/tests/Microsoft.CodeAnalysis.Testing/Microsoft.CodeAnalysis.Analyzer.Testing.UnitTests/MetadataReferenceTests.cs new file mode 100644 index 0000000000..368fad5c3c --- /dev/null +++ b/tests/Microsoft.CodeAnalysis.Testing/Microsoft.CodeAnalysis.Analyzer.Testing.UnitTests/MetadataReferenceTests.cs @@ -0,0 +1,387 @@ +// Copyright (c) Microsoft. All Rights Reserved. Licensed under the Apache License, Version 2.0. See License.txt in the project root for license information. + +using System.Threading; +using System.Threading.Tasks; +using Xunit; + +namespace Microsoft.CodeAnalysis.Testing +{ + public class MetadataReferenceTests + { + [Fact] + public async Task ResolveReferenceAssemblies_Net20() + { + var referenceAssemblies = ReferenceAssemblies.NetFramework.Net20.Default; + var resolved = await referenceAssemblies.ResolveAsync(LanguageNames.CSharp, CancellationToken.None); + Assert.NotEmpty(resolved); + } + + [Fact] + public async Task ResolveReferenceAssemblies_Net20_WindowsForms() + { + var referenceAssemblies = ReferenceAssemblies.NetFramework.Net20.WindowsForms; + var resolved = await referenceAssemblies.ResolveAsync(LanguageNames.CSharp, CancellationToken.None); + Assert.NotEmpty(resolved); + } + + [Fact] + public async Task ResolveReferenceAssemblies_Net40() + { + var referenceAssemblies = ReferenceAssemblies.NetFramework.Net40.Default; + var resolved = await referenceAssemblies.ResolveAsync(LanguageNames.CSharp, CancellationToken.None); + Assert.NotEmpty(resolved); + } + + [Fact] + public async Task ResolveReferenceAssemblies_Net40_WindowsForms() + { + var referenceAssemblies = ReferenceAssemblies.NetFramework.Net40.WindowsForms; + var resolved = await referenceAssemblies.ResolveAsync(LanguageNames.CSharp, CancellationToken.None); + Assert.NotEmpty(resolved); + } + + [Fact] + public async Task ResolveReferenceAssemblies_Net40_Wpf() + { + var referenceAssemblies = ReferenceAssemblies.NetFramework.Net40.Wpf; + var resolved = await referenceAssemblies.ResolveAsync(LanguageNames.CSharp, CancellationToken.None); + Assert.NotEmpty(resolved); + } + + [Fact] + public async Task ResolveReferenceAssemblies_Net45() + { + var referenceAssemblies = ReferenceAssemblies.NetFramework.Net45.Default; + var resolved = await referenceAssemblies.ResolveAsync(LanguageNames.CSharp, CancellationToken.None); + Assert.NotEmpty(resolved); + } + + [Fact] + public async Task ResolveReferenceAssemblies_Net45_WindowsForms() + { + var referenceAssemblies = ReferenceAssemblies.NetFramework.Net45.WindowsForms; + var resolved = await referenceAssemblies.ResolveAsync(LanguageNames.CSharp, CancellationToken.None); + Assert.NotEmpty(resolved); + } + + [Fact] + public async Task ResolveReferenceAssemblies_Net45_Wpf() + { + var referenceAssemblies = ReferenceAssemblies.NetFramework.Net45.Wpf; + var resolved = await referenceAssemblies.ResolveAsync(LanguageNames.CSharp, CancellationToken.None); + Assert.NotEmpty(resolved); + } + + [Fact] + public async Task ResolveReferenceAssemblies_Net451() + { + var referenceAssemblies = ReferenceAssemblies.NetFramework.Net451.Default; + var resolved = await referenceAssemblies.ResolveAsync(LanguageNames.CSharp, CancellationToken.None); + Assert.NotEmpty(resolved); + } + + [Fact] + public async Task ResolveReferenceAssemblies_Net451_WindowsForms() + { + var referenceAssemblies = ReferenceAssemblies.NetFramework.Net451.WindowsForms; + var resolved = await referenceAssemblies.ResolveAsync(LanguageNames.CSharp, CancellationToken.None); + Assert.NotEmpty(resolved); + } + + [Fact] + public async Task ResolveReferenceAssemblies_Net451_Wpf() + { + var referenceAssemblies = ReferenceAssemblies.NetFramework.Net451.Wpf; + var resolved = await referenceAssemblies.ResolveAsync(LanguageNames.CSharp, CancellationToken.None); + Assert.NotEmpty(resolved); + } + + [Fact] + public async Task ResolveReferenceAssemblies_Net452() + { + var referenceAssemblies = ReferenceAssemblies.NetFramework.Net452.Default; + var resolved = await referenceAssemblies.ResolveAsync(LanguageNames.CSharp, CancellationToken.None); + Assert.NotEmpty(resolved); + } + + [Fact] + public async Task ResolveReferenceAssemblies_Net452_WindowsForms() + { + var referenceAssemblies = ReferenceAssemblies.NetFramework.Net452.WindowsForms; + var resolved = await referenceAssemblies.ResolveAsync(LanguageNames.CSharp, CancellationToken.None); + Assert.NotEmpty(resolved); + } + + [Fact] + public async Task ResolveReferenceAssemblies_Net452_Wpf() + { + var referenceAssemblies = ReferenceAssemblies.NetFramework.Net452.Wpf; + var resolved = await referenceAssemblies.ResolveAsync(LanguageNames.CSharp, CancellationToken.None); + Assert.NotEmpty(resolved); + } + + [Fact] + public async Task ResolveReferenceAssemblies_Net46() + { + var referenceAssemblies = ReferenceAssemblies.NetFramework.Net46.Default; + var resolved = await referenceAssemblies.ResolveAsync(LanguageNames.CSharp, CancellationToken.None); + Assert.NotEmpty(resolved); + } + + [Fact] + public async Task ResolveReferenceAssemblies_Net46_WindowsForms() + { + var referenceAssemblies = ReferenceAssemblies.NetFramework.Net46.WindowsForms; + var resolved = await referenceAssemblies.ResolveAsync(LanguageNames.CSharp, CancellationToken.None); + Assert.NotEmpty(resolved); + } + + [Fact] + public async Task ResolveReferenceAssemblies_Net46_Wpf() + { + var referenceAssemblies = ReferenceAssemblies.NetFramework.Net46.Wpf; + var resolved = await referenceAssemblies.ResolveAsync(LanguageNames.CSharp, CancellationToken.None); + Assert.NotEmpty(resolved); + } + + [Fact] + public async Task ResolveReferenceAssemblies_Net461() + { + var referenceAssemblies = ReferenceAssemblies.NetFramework.Net461.Default; + var resolved = await referenceAssemblies.ResolveAsync(LanguageNames.CSharp, CancellationToken.None); + Assert.NotEmpty(resolved); + } + + [Fact] + public async Task ResolveReferenceAssemblies_Net461_WindowsForms() + { + var referenceAssemblies = ReferenceAssemblies.NetFramework.Net461.WindowsForms; + var resolved = await referenceAssemblies.ResolveAsync(LanguageNames.CSharp, CancellationToken.None); + Assert.NotEmpty(resolved); + } + + [Fact] + public async Task ResolveReferenceAssemblies_Net461_Wpf() + { + var referenceAssemblies = ReferenceAssemblies.NetFramework.Net461.Wpf; + var resolved = await referenceAssemblies.ResolveAsync(LanguageNames.CSharp, CancellationToken.None); + Assert.NotEmpty(resolved); + } + + [Fact] + public async Task ResolveReferenceAssemblies_Net462() + { + var referenceAssemblies = ReferenceAssemblies.NetFramework.Net462.Default; + var resolved = await referenceAssemblies.ResolveAsync(LanguageNames.CSharp, CancellationToken.None); + Assert.NotEmpty(resolved); + } + + [Fact] + public async Task ResolveReferenceAssemblies_Net462_WindowsForms() + { + var referenceAssemblies = ReferenceAssemblies.NetFramework.Net462.WindowsForms; + var resolved = await referenceAssemblies.ResolveAsync(LanguageNames.CSharp, CancellationToken.None); + Assert.NotEmpty(resolved); + } + + [Fact] + public async Task ResolveReferenceAssemblies_Net462_Wpf() + { + var referenceAssemblies = ReferenceAssemblies.NetFramework.Net462.Wpf; + var resolved = await referenceAssemblies.ResolveAsync(LanguageNames.CSharp, CancellationToken.None); + Assert.NotEmpty(resolved); + } + + [Fact] + public async Task ResolveReferenceAssemblies_Net47() + { + var referenceAssemblies = ReferenceAssemblies.NetFramework.Net47.Default; + var resolved = await referenceAssemblies.ResolveAsync(LanguageNames.CSharp, CancellationToken.None); + Assert.NotEmpty(resolved); + } + + [Fact] + public async Task ResolveReferenceAssemblies_Net47_WindowsForms() + { + var referenceAssemblies = ReferenceAssemblies.NetFramework.Net47.WindowsForms; + var resolved = await referenceAssemblies.ResolveAsync(LanguageNames.CSharp, CancellationToken.None); + Assert.NotEmpty(resolved); + } + + [Fact] + public async Task ResolveReferenceAssemblies_Net47_Wpf() + { + var referenceAssemblies = ReferenceAssemblies.NetFramework.Net47.Wpf; + var resolved = await referenceAssemblies.ResolveAsync(LanguageNames.CSharp, CancellationToken.None); + Assert.NotEmpty(resolved); + } + + [Fact] + public async Task ResolveReferenceAssemblies_Net471() + { + var referenceAssemblies = ReferenceAssemblies.NetFramework.Net471.Default; + var resolved = await referenceAssemblies.ResolveAsync(LanguageNames.CSharp, CancellationToken.None); + Assert.NotEmpty(resolved); + } + + [Fact] + public async Task ResolveReferenceAssemblies_Net471_WindowsForms() + { + var referenceAssemblies = ReferenceAssemblies.NetFramework.Net471.WindowsForms; + var resolved = await referenceAssemblies.ResolveAsync(LanguageNames.CSharp, CancellationToken.None); + Assert.NotEmpty(resolved); + } + + [Fact] + public async Task ResolveReferenceAssemblies_Net471_Wpf() + { + var referenceAssemblies = ReferenceAssemblies.NetFramework.Net471.Wpf; + var resolved = await referenceAssemblies.ResolveAsync(LanguageNames.CSharp, CancellationToken.None); + Assert.NotEmpty(resolved); + } + + [Fact] + public async Task ResolveReferenceAssemblies_Net472() + { + var referenceAssemblies = ReferenceAssemblies.NetFramework.Net472.Default; + var resolved = await referenceAssemblies.ResolveAsync(LanguageNames.CSharp, CancellationToken.None); + Assert.NotEmpty(resolved); + } + + [Fact] + public async Task ResolveReferenceAssemblies_Net472_WindowsForms() + { + var referenceAssemblies = ReferenceAssemblies.NetFramework.Net472.WindowsForms; + var resolved = await referenceAssemblies.ResolveAsync(LanguageNames.CSharp, CancellationToken.None); + Assert.NotEmpty(resolved); + } + + [Fact] + public async Task ResolveReferenceAssemblies_Net472_Wpf() + { + var referenceAssemblies = ReferenceAssemblies.NetFramework.Net472.Wpf; + var resolved = await referenceAssemblies.ResolveAsync(LanguageNames.CSharp, CancellationToken.None); + Assert.NotEmpty(resolved); + } + + [Fact] + public async Task ResolveReferenceAssemblies_Net48() + { + var referenceAssemblies = ReferenceAssemblies.NetFramework.Net48.Default; + var resolved = await referenceAssemblies.ResolveAsync(LanguageNames.CSharp, CancellationToken.None); + Assert.NotEmpty(resolved); + } + + [Fact] + public async Task ResolveReferenceAssemblies_Net48_WindowsForms() + { + var referenceAssemblies = ReferenceAssemblies.NetFramework.Net48.WindowsForms; + var resolved = await referenceAssemblies.ResolveAsync(LanguageNames.CSharp, CancellationToken.None); + Assert.NotEmpty(resolved); + } + + [Fact] + public async Task ResolveReferenceAssemblies_Net48_Wpf() + { + var referenceAssemblies = ReferenceAssemblies.NetFramework.Net48.Wpf; + var resolved = await referenceAssemblies.ResolveAsync(LanguageNames.CSharp, CancellationToken.None); + Assert.NotEmpty(resolved); + } + + [Fact] + public async Task ResolveReferenceAssemblies_NetStandard10() + { + var referenceAssemblies = ReferenceAssemblies.NetStandard.NetStandard10; + var resolved = await referenceAssemblies.ResolveAsync(LanguageNames.CSharp, CancellationToken.None); + Assert.NotEmpty(resolved); + } + + [Fact] + public async Task ResolveReferenceAssemblies_NetStandard11() + { + var referenceAssemblies = ReferenceAssemblies.NetStandard.NetStandard11; + var resolved = await referenceAssemblies.ResolveAsync(LanguageNames.CSharp, CancellationToken.None); + Assert.NotEmpty(resolved); + } + + [Fact] + public async Task ResolveReferenceAssemblies_NetStandard12() + { + var referenceAssemblies = ReferenceAssemblies.NetStandard.NetStandard12; + var resolved = await referenceAssemblies.ResolveAsync(LanguageNames.CSharp, CancellationToken.None); + Assert.NotEmpty(resolved); + } + + [Fact] + public async Task ResolveReferenceAssemblies_NetStandard13() + { + var referenceAssemblies = ReferenceAssemblies.NetStandard.NetStandard13; + var resolved = await referenceAssemblies.ResolveAsync(LanguageNames.CSharp, CancellationToken.None); + Assert.NotEmpty(resolved); + } + + [Fact] + public async Task ResolveReferenceAssemblies_NetStandard14() + { + var referenceAssemblies = ReferenceAssemblies.NetStandard.NetStandard14; + var resolved = await referenceAssemblies.ResolveAsync(LanguageNames.CSharp, CancellationToken.None); + Assert.NotEmpty(resolved); + } + + [Fact] + public async Task ResolveReferenceAssemblies_NetStandard15() + { + var referenceAssemblies = ReferenceAssemblies.NetStandard.NetStandard15; + var resolved = await referenceAssemblies.ResolveAsync(LanguageNames.CSharp, CancellationToken.None); + Assert.NotEmpty(resolved); + } + + [Fact] + public async Task ResolveReferenceAssemblies_NetStandard16() + { + var referenceAssemblies = ReferenceAssemblies.NetStandard.NetStandard16; + var resolved = await referenceAssemblies.ResolveAsync(LanguageNames.CSharp, CancellationToken.None); + Assert.NotEmpty(resolved); + } + + [Fact] + public async Task ResolveReferenceAssemblies_NetStandard20() + { + var referenceAssemblies = ReferenceAssemblies.NetStandard.NetStandard20; + var resolved = await referenceAssemblies.ResolveAsync(LanguageNames.CSharp, CancellationToken.None); + Assert.NotEmpty(resolved); + } + + [Fact] + public async Task ResolveReferenceAssemblies_NetCoreApp10() + { + var referenceAssemblies = ReferenceAssemblies.NetCore.NetCoreApp10; + var resolved = await referenceAssemblies.ResolveAsync(LanguageNames.CSharp, CancellationToken.None); + Assert.NotEmpty(resolved); + } + + [Fact] + public async Task ResolveReferenceAssemblies_NetCoreApp11() + { + var referenceAssemblies = ReferenceAssemblies.NetCore.NetCoreApp11; + var resolved = await referenceAssemblies.ResolveAsync(LanguageNames.CSharp, CancellationToken.None); + Assert.NotEmpty(resolved); + } + + [Fact] + public async Task ResolveReferenceAssemblies_NetCoreApp20() + { + var referenceAssemblies = ReferenceAssemblies.NetCore.NetCoreApp20; + var resolved = await referenceAssemblies.ResolveAsync(LanguageNames.CSharp, CancellationToken.None); + Assert.NotEmpty(resolved); + } + + [Fact] + public async Task ResolveReferenceAssemblies_NetCoreApp21() + { + var referenceAssemblies = ReferenceAssemblies.NetCore.NetCoreApp21; + var resolved = await referenceAssemblies.ResolveAsync(LanguageNames.CSharp, CancellationToken.None); + Assert.NotEmpty(resolved); + } + } +} diff --git a/tests/Microsoft.CodeAnalysis.Testing/Microsoft.CodeAnalysis.Analyzer.Testing.UnitTests/Microsoft.CodeAnalysis.Analyzer.Testing.UnitTests.csproj b/tests/Microsoft.CodeAnalysis.Testing/Microsoft.CodeAnalysis.Analyzer.Testing.UnitTests/Microsoft.CodeAnalysis.Analyzer.Testing.UnitTests.csproj index 1ae8c376e4..2c38a18e93 100644 --- a/tests/Microsoft.CodeAnalysis.Testing/Microsoft.CodeAnalysis.Analyzer.Testing.UnitTests/Microsoft.CodeAnalysis.Analyzer.Testing.UnitTests.csproj +++ b/tests/Microsoft.CodeAnalysis.Testing/Microsoft.CodeAnalysis.Analyzer.Testing.UnitTests/Microsoft.CodeAnalysis.Analyzer.Testing.UnitTests.csproj @@ -4,12 +4,6 @@ $(TestTargetFrameworks) Microsoft.CodeAnalysis.Testing - - - - - - From a98e27c80362291cffa85e0fb095f33970005076 Mon Sep 17 00:00:00 2001 From: Sam Harwell Date: Thu, 31 Oct 2019 08:10:10 -0700 Subject: [PATCH 3/7] Add facade assemblies automatically --- .../PublicAPI.Unshipped.txt | 4 +- .../ReferenceAssemblies.cs | 94 ++++++++++--------- .../CompilerErrorTests.cs | 63 +++++++++++++ 3 files changed, 115 insertions(+), 46 deletions(-) diff --git a/src/Microsoft.CodeAnalysis.Testing/Microsoft.CodeAnalysis.Analyzer.Testing/PublicAPI.Unshipped.txt b/src/Microsoft.CodeAnalysis.Testing/Microsoft.CodeAnalysis.Analyzer.Testing/PublicAPI.Unshipped.txt index dec843f49d..84f5f99961 100644 --- a/src/Microsoft.CodeAnalysis.Testing/Microsoft.CodeAnalysis.Analyzer.Testing/PublicAPI.Unshipped.txt +++ b/src/Microsoft.CodeAnalysis.Testing/Microsoft.CodeAnalysis.Analyzer.Testing/PublicAPI.Unshipped.txt @@ -120,9 +120,9 @@ Microsoft.CodeAnalysis.Testing.ReferenceAssemblies.NetFramework.Net48 Microsoft.CodeAnalysis.Testing.ReferenceAssemblies.NetStandard Microsoft.CodeAnalysis.Testing.ReferenceAssemblies.Packages.get -> System.Collections.Immutable.ImmutableArray Microsoft.CodeAnalysis.Testing.ReferenceAssemblies.ReferenceAssemblies(string targetFramework) -> void -Microsoft.CodeAnalysis.Testing.ReferenceAssemblies.ReferenceAssemblies(string targetFramework, NuGet.Packaging.Core.PackageIdentity referenceAssemblyPackage, System.Collections.Immutable.ImmutableArray relativePaths) -> void +Microsoft.CodeAnalysis.Testing.ReferenceAssemblies.ReferenceAssemblies(string targetFramework, NuGet.Packaging.Core.PackageIdentity referenceAssemblyPackage, string referenceAssemblyPath) -> void Microsoft.CodeAnalysis.Testing.ReferenceAssemblies.ReferenceAssemblyPackage.get -> NuGet.Packaging.Core.PackageIdentity -Microsoft.CodeAnalysis.Testing.ReferenceAssemblies.RelativePaths.get -> System.Collections.Immutable.ImmutableArray +Microsoft.CodeAnalysis.Testing.ReferenceAssemblies.ReferenceAssemblyPath.get -> string Microsoft.CodeAnalysis.Testing.ReferenceAssemblies.ResolveAsync(string language, System.Threading.CancellationToken cancellationToken) -> System.Threading.Tasks.Task> Microsoft.CodeAnalysis.Testing.ReferenceAssemblies.TargetFramework.get -> string Microsoft.CodeAnalysis.Testing.ReferenceAssemblies.WithAssemblies(System.Collections.Immutable.ImmutableArray assemblies) -> Microsoft.CodeAnalysis.Testing.ReferenceAssemblies diff --git a/src/Microsoft.CodeAnalysis.Testing/Microsoft.CodeAnalysis.Analyzer.Testing/ReferenceAssemblies.cs b/src/Microsoft.CodeAnalysis.Testing/Microsoft.CodeAnalysis.Analyzer.Testing/ReferenceAssemblies.cs index 5e2415997b..55efeb8448 100644 --- a/src/Microsoft.CodeAnalysis.Testing/Microsoft.CodeAnalysis.Analyzer.Testing/ReferenceAssemblies.cs +++ b/src/Microsoft.CodeAnalysis.Testing/Microsoft.CodeAnalysis.Analyzer.Testing/ReferenceAssemblies.cs @@ -36,18 +36,18 @@ public ReferenceAssemblies(string targetFramework) { TargetFramework = targetFramework ?? throw new ArgumentNullException(nameof(targetFramework)); AssemblyIdentityComparer = AssemblyIdentityComparer.Default; - RelativePaths = ImmutableArray.Empty; + ReferenceAssemblyPath = null; Assemblies = ImmutableArray.Empty; LanguageSpecificAssemblies = ImmutableDictionary>.Empty; Packages = ImmutableArray.Empty; } - public ReferenceAssemblies(string targetFramework, PackageIdentity referenceAssemblyPackage, ImmutableArray relativePaths) + public ReferenceAssemblies(string targetFramework, PackageIdentity referenceAssemblyPackage, string referenceAssemblyPath) { TargetFramework = targetFramework ?? throw new ArgumentNullException(nameof(targetFramework)); AssemblyIdentityComparer = AssemblyIdentityComparer.Default; ReferenceAssemblyPackage = referenceAssemblyPackage ?? throw new ArgumentNullException(nameof(referenceAssemblyPackage)); - RelativePaths = relativePaths.IsDefault ? ImmutableArray.Empty : relativePaths; + ReferenceAssemblyPath = referenceAssemblyPath; Assemblies = ImmutableArray.Empty; LanguageSpecificAssemblies = ImmutableDictionary>.Empty; Packages = ImmutableArray.Empty; @@ -57,7 +57,7 @@ private ReferenceAssemblies( string targetFramework, AssemblyIdentityComparer assemblyIdentityComparer, PackageIdentity? referenceAssemblyPackage, - ImmutableArray relativePaths, + string? referenceAssemblyPath, ImmutableArray assemblies, ImmutableDictionary> languageSpecificAssemblies, ImmutableArray packages) @@ -65,7 +65,7 @@ private ReferenceAssemblies( TargetFramework = targetFramework; AssemblyIdentityComparer = assemblyIdentityComparer; ReferenceAssemblyPackage = referenceAssemblyPackage; - RelativePaths = relativePaths.IsDefault ? ImmutableArray.Empty : relativePaths; + ReferenceAssemblyPath = referenceAssemblyPath; Assemblies = assemblies.IsDefault ? ImmutableArray.Empty : assemblies; LanguageSpecificAssemblies = languageSpecificAssemblies; Packages = packages.IsDefault ? ImmutableArray.Empty : packages; @@ -95,7 +95,7 @@ public static ReferenceAssemblies Default public PackageIdentity? ReferenceAssemblyPackage { get; } - public ImmutableArray RelativePaths { get; } + public string? ReferenceAssemblyPath { get; } public ImmutableArray Assemblies { get; } @@ -104,16 +104,16 @@ public static ReferenceAssemblies Default public ImmutableArray Packages { get; } public ReferenceAssemblies WithAssemblyIdentityComparer(AssemblyIdentityComparer assemblyIdentityComparer) - => new ReferenceAssemblies(TargetFramework, assemblyIdentityComparer, ReferenceAssemblyPackage, RelativePaths, Assemblies, LanguageSpecificAssemblies, Packages); + => new ReferenceAssemblies(TargetFramework, assemblyIdentityComparer, ReferenceAssemblyPackage, ReferenceAssemblyPath, Assemblies, LanguageSpecificAssemblies, Packages); public ReferenceAssemblies WithAssemblies(ImmutableArray assemblies) - => new ReferenceAssemblies(TargetFramework, AssemblyIdentityComparer, ReferenceAssemblyPackage, RelativePaths, assemblies, LanguageSpecificAssemblies, Packages); + => new ReferenceAssemblies(TargetFramework, AssemblyIdentityComparer, ReferenceAssemblyPackage, ReferenceAssemblyPath, assemblies, LanguageSpecificAssemblies, Packages); public ReferenceAssemblies AddAssemblies(ImmutableArray assemblies) => WithAssemblies(Assemblies.AddRange(assemblies)); public ReferenceAssemblies WithLanguageSpecificAssemblies(ImmutableDictionary> languageSpecificAssemblies) - => new ReferenceAssemblies(TargetFramework, AssemblyIdentityComparer, ReferenceAssemblyPackage, RelativePaths, Assemblies, languageSpecificAssemblies, Packages); + => new ReferenceAssemblies(TargetFramework, AssemblyIdentityComparer, ReferenceAssemblyPackage, ReferenceAssemblyPath, Assemblies, languageSpecificAssemblies, Packages); public ReferenceAssemblies WithLanguageSpecificAssemblies(string language, ImmutableArray assemblies) => WithLanguageSpecificAssemblies(LanguageSpecificAssemblies.SetItem(language, assemblies)); @@ -129,7 +129,7 @@ public ReferenceAssemblies AddLanguageSpecificAssemblies(string language, Immuta } public ReferenceAssemblies WithPackages(ImmutableArray packages) - => new ReferenceAssemblies(TargetFramework, AssemblyIdentityComparer, ReferenceAssemblyPackage, RelativePaths, Assemblies, LanguageSpecificAssemblies, packages); + => new ReferenceAssemblies(TargetFramework, AssemblyIdentityComparer, ReferenceAssemblyPackage, ReferenceAssemblyPath, Assemblies, LanguageSpecificAssemblies, packages); public ReferenceAssemblies AddPackages(ImmutableArray packages) => WithPackages(Packages.AddRange(packages)); @@ -334,15 +334,12 @@ await PackageExtractor.ExtractPackageAsync( var nearestFrameworkItems = frameworkItems.Single(x => x.TargetFramework == nearestFramework); foreach (var item in nearestFrameworkItems.Items) { - foreach (var relativePath in RelativePaths) + var installedFrameworkPath = localPathResolver.GetInstalledPath(ReferenceAssemblyPackage) + ?? globalPathResolver.GetInstalledPath(ReferenceAssemblyPackage); + if (File.Exists(Path.Combine(installedFrameworkPath, ReferenceAssemblyPath, item + ".dll"))) { - var installedFrameworkPath = localPathResolver.GetInstalledPath(ReferenceAssemblyPackage) - ?? globalPathResolver.GetInstalledPath(ReferenceAssemblyPackage); - if (File.Exists(Path.Combine(installedFrameworkPath, relativePath, item + ".dll"))) - { - resolvedAssemblies.Add(Path.GetFullPath(Path.Combine(installedFrameworkPath, relativePath, item + ".dll"))); - break; - } + resolvedAssemblies.Add(Path.GetFullPath(Path.Combine(installedFrameworkPath, ReferenceAssemblyPath, item + ".dll"))); + break; } } } @@ -350,31 +347,40 @@ await PackageExtractor.ExtractPackageAsync( foreach (var assembly in Assemblies) { - foreach (var relativePath in RelativePaths) + var installedPath = localPathResolver.GetInstalledPath(ReferenceAssemblyPackage) + ?? globalPathResolver.GetInstalledPath(ReferenceAssemblyPackage); + if (File.Exists(Path.Combine(installedPath, ReferenceAssemblyPath, assembly + ".dll"))) + { + resolvedAssemblies.Add(Path.GetFullPath(Path.Combine(installedPath, ReferenceAssemblyPath, assembly + ".dll"))); + break; + } + } + + if (LanguageSpecificAssemblies.TryGetValue(language, out var languageSpecificAssemblies)) + { + foreach (var assembly in languageSpecificAssemblies) { var installedPath = localPathResolver.GetInstalledPath(ReferenceAssemblyPackage) ?? globalPathResolver.GetInstalledPath(ReferenceAssemblyPackage); - if (File.Exists(Path.Combine(installedPath, relativePath, assembly + ".dll"))) + if (File.Exists(Path.Combine(installedPath, ReferenceAssemblyPath, assembly + ".dll"))) { - resolvedAssemblies.Add(Path.GetFullPath(Path.Combine(installedPath, relativePath, assembly + ".dll"))); + resolvedAssemblies.Add(Path.GetFullPath(Path.Combine(installedPath, ReferenceAssemblyPath, assembly + ".dll"))); break; } } } - if (LanguageSpecificAssemblies.TryGetValue(language, out var languageSpecificAssemblies)) + // Add the facade assemblies + if (ReferenceAssemblyPackage is object) { - foreach (var assembly in languageSpecificAssemblies) + var installedPath = localPathResolver.GetInstalledPath(ReferenceAssemblyPackage) + ?? globalPathResolver.GetInstalledPath(ReferenceAssemblyPackage); + var facadesPath = Path.Combine(installedPath, ReferenceAssemblyPath, "Facades"); + if (Directory.Exists(facadesPath)) { - foreach (var relativePath in RelativePaths) + foreach (var path in Directory.GetFiles(facadesPath, "*.dll")) { - var installedPath = localPathResolver.GetInstalledPath(ReferenceAssemblyPackage) - ?? globalPathResolver.GetInstalledPath(ReferenceAssemblyPackage); - if (File.Exists(Path.Combine(installedPath, relativePath, assembly + ".dll"))) - { - resolvedAssemblies.Add(Path.GetFullPath(Path.Combine(installedPath, relativePath, assembly + ".dll"))); - break; - } + resolvedAssemblies.Add(Path.GetFullPath(path)); } } } @@ -445,7 +451,7 @@ public static class Net20 new PackageIdentity( "Microsoft.NETFramework.ReferenceAssemblies.net20", NuGetVersion.Parse(ReferenceAssembliesPackageVersion)), - ImmutableArray.Create(@"build\.NETFramework\v2.0")) + @"build\.NETFramework\v2.0") .WithAssemblyIdentityComparer(DesktopAssemblyIdentityComparer.Default) .AddAssemblies(ImmutableArray.Create("mscorlib", "System", "System.Data", "System.Xml")) .AddLanguageSpecificAssemblies(LanguageNames.VisualBasic, ImmutableArray.Create("Microsoft.VisualBasic")); @@ -462,7 +468,7 @@ public static class Net40 new PackageIdentity( "Microsoft.NETFramework.ReferenceAssemblies.net40", NuGetVersion.Parse(ReferenceAssembliesPackageVersion)), - ImmutableArray.Create(@"build\.NETFramework\v4.0")) + @"build\.NETFramework\v4.0") .WithAssemblyIdentityComparer(DesktopAssemblyIdentityComparer.Default) .AddAssemblies(ImmutableArray.Create("mscorlib", "System", "System.Core", "System.Data", "System.Data.DataSetExtensions", "System.Xml", "System.Xml.Linq")) .AddLanguageSpecificAssemblies(LanguageNames.CSharp, ImmutableArray.Create("Microsoft.CSharp")) @@ -483,7 +489,7 @@ public static class Net45 new PackageIdentity( "Microsoft.NETFramework.ReferenceAssemblies.net45", NuGetVersion.Parse(ReferenceAssembliesPackageVersion)), - ImmutableArray.Create(@"build\.NETFramework\v4.5", @"build\.NETFramework\v4.5\Facades")) + @"build\.NETFramework\v4.5") .WithAssemblyIdentityComparer(DesktopAssemblyIdentityComparer.Default) .AddAssemblies(ImmutableArray.Create("mscorlib", "System", "System.Core", "System.Data", "System.Data.DataSetExtensions", "System.Net.Http", "System.Xml", "System.Xml.Linq")) .AddLanguageSpecificAssemblies(LanguageNames.CSharp, ImmutableArray.Create("Microsoft.CSharp")) @@ -504,7 +510,7 @@ public static class Net451 new PackageIdentity( "Microsoft.NETFramework.ReferenceAssemblies.net451", NuGetVersion.Parse(ReferenceAssembliesPackageVersion)), - ImmutableArray.Create(@"build\.NETFramework\v4.5.1", @"build\.NETFramework\v4.5.1\Facades")) + @"build\.NETFramework\v4.5.1") .WithAssemblyIdentityComparer(DesktopAssemblyIdentityComparer.Default) .AddAssemblies(ImmutableArray.Create("mscorlib", "System", "System.Core", "System.Data", "System.Data.DataSetExtensions", "System.Net.Http", "System.Xml", "System.Xml.Linq")) .AddLanguageSpecificAssemblies(LanguageNames.CSharp, ImmutableArray.Create("Microsoft.CSharp")) @@ -525,7 +531,7 @@ public static class Net452 new PackageIdentity( "Microsoft.NETFramework.ReferenceAssemblies.net452", NuGetVersion.Parse(ReferenceAssembliesPackageVersion)), - ImmutableArray.Create(@"build\.NETFramework\v4.5.2", @"build\.NETFramework\v4.5.2\Facades")) + @"build\.NETFramework\v4.5.2") .WithAssemblyIdentityComparer(DesktopAssemblyIdentityComparer.Default) .AddAssemblies(ImmutableArray.Create("mscorlib", "System", "System.Core", "System.Data", "System.Data.DataSetExtensions", "System.Net.Http", "System.Xml", "System.Xml.Linq")) .AddLanguageSpecificAssemblies(LanguageNames.CSharp, ImmutableArray.Create("Microsoft.CSharp")) @@ -546,7 +552,7 @@ public static class Net46 new PackageIdentity( "Microsoft.NETFramework.ReferenceAssemblies.net46", NuGetVersion.Parse(ReferenceAssembliesPackageVersion)), - ImmutableArray.Create(@"build\.NETFramework\v4.6", @"build\.NETFramework\v4.6\Facades")) + @"build\.NETFramework\v4.6") .WithAssemblyIdentityComparer(DesktopAssemblyIdentityComparer.Default) .AddAssemblies(ImmutableArray.Create("mscorlib", "System", "System.Core", "System.Data", "System.Data.DataSetExtensions", "System.Net.Http", "System.Xml", "System.Xml.Linq")) .AddLanguageSpecificAssemblies(LanguageNames.CSharp, ImmutableArray.Create("Microsoft.CSharp")) @@ -567,7 +573,7 @@ public static class Net461 new PackageIdentity( "Microsoft.NETFramework.ReferenceAssemblies.net461", NuGetVersion.Parse(ReferenceAssembliesPackageVersion)), - ImmutableArray.Create(@"build\.NETFramework\v4.6.1", @"build\.NETFramework\v4.6.1\Facades")) + @"build\.NETFramework\v4.6.1") .WithAssemblyIdentityComparer(DesktopAssemblyIdentityComparer.Default) .AddAssemblies(ImmutableArray.Create("mscorlib", "System", "System.Core", "System.Data", "System.Data.DataSetExtensions", "System.Net.Http", "System.Xml", "System.Xml.Linq")) .AddLanguageSpecificAssemblies(LanguageNames.CSharp, ImmutableArray.Create("Microsoft.CSharp")) @@ -588,7 +594,7 @@ public static class Net462 new PackageIdentity( "Microsoft.NETFramework.ReferenceAssemblies.net462", NuGetVersion.Parse(ReferenceAssembliesPackageVersion)), - ImmutableArray.Create(@"build\.NETFramework\v4.6.2", @"build\.NETFramework\v4.6.2\Facades")) + @"build\.NETFramework\v4.6.2") .WithAssemblyIdentityComparer(DesktopAssemblyIdentityComparer.Default) .AddAssemblies(ImmutableArray.Create("mscorlib", "System", "System.Core", "System.Data", "System.Data.DataSetExtensions", "System.Net.Http", "System.Xml", "System.Xml.Linq")) .AddLanguageSpecificAssemblies(LanguageNames.CSharp, ImmutableArray.Create("Microsoft.CSharp")) @@ -609,7 +615,7 @@ public static class Net47 new PackageIdentity( "Microsoft.NETFramework.ReferenceAssemblies.net47", NuGetVersion.Parse(ReferenceAssembliesPackageVersion)), - ImmutableArray.Create(@"build\.NETFramework\v4.7", @"build\.NETFramework\v4.7\Facades")) + @"build\.NETFramework\v4.7") .WithAssemblyIdentityComparer(DesktopAssemblyIdentityComparer.Default) .AddAssemblies(ImmutableArray.Create("mscorlib", "System", "System.Core", "System.Data", "System.Data.DataSetExtensions", "System.Net.Http", "System.Xml", "System.Xml.Linq")) .AddLanguageSpecificAssemblies(LanguageNames.CSharp, ImmutableArray.Create("Microsoft.CSharp")) @@ -630,7 +636,7 @@ public static class Net471 new PackageIdentity( "Microsoft.NETFramework.ReferenceAssemblies.net471", NuGetVersion.Parse(ReferenceAssembliesPackageVersion)), - ImmutableArray.Create(@"build\.NETFramework\v4.7.1", @"build\.NETFramework\v4.7.1\Facades")) + @"build\.NETFramework\v4.7.1") .WithAssemblyIdentityComparer(DesktopAssemblyIdentityComparer.Default) .AddAssemblies(ImmutableArray.Create("mscorlib", "System", "System.Core", "System.Data", "System.Data.DataSetExtensions", "System.Net.Http", "System.Xml", "System.Xml.Linq")) .AddLanguageSpecificAssemblies(LanguageNames.CSharp, ImmutableArray.Create("Microsoft.CSharp")) @@ -651,7 +657,7 @@ public static class Net472 new PackageIdentity( "Microsoft.NETFramework.ReferenceAssemblies.net472", NuGetVersion.Parse(ReferenceAssembliesPackageVersion)), - ImmutableArray.Create(@"build\.NETFramework\v4.7.2", @"build\.NETFramework\v4.7.2\Facades")) + @"build\.NETFramework\v4.7.2") .WithAssemblyIdentityComparer(DesktopAssemblyIdentityComparer.Default) .AddAssemblies(ImmutableArray.Create("mscorlib", "System", "System.Core", "System.Data", "System.Data.DataSetExtensions", "System.Net.Http", "System.Xml", "System.Xml.Linq")) .AddLanguageSpecificAssemblies(LanguageNames.CSharp, ImmutableArray.Create("Microsoft.CSharp")) @@ -672,7 +678,7 @@ public static class Net48 new PackageIdentity( "Microsoft.NETFramework.ReferenceAssemblies.net48", NuGetVersion.Parse(ReferenceAssembliesPackageVersion)), - ImmutableArray.Create(@"build\.NETFramework\v4.8", @"build\.NETFramework\v4.8\Facades")) + @"build\.NETFramework\v4.8") .WithAssemblyIdentityComparer(DesktopAssemblyIdentityComparer.Default) .AddAssemblies(ImmutableArray.Create("mscorlib", "System", "System.Core", "System.Data", "System.Data.DataSetExtensions", "System.Net.Http", "System.Xml", "System.Xml.Linq")) .AddLanguageSpecificAssemblies(LanguageNames.CSharp, ImmutableArray.Create("Microsoft.CSharp")) @@ -741,7 +747,7 @@ public static class NetStandard new PackageIdentity( "NETStandard.Library", NuGetVersion.Parse("2.0.3")), - ImmutableArray.Create(@"build\netstandard2.0\ref")) + @"build\netstandard2.0\ref") .AddAssemblies(ImmutableArray.Create("netstandard")); ////public static ReferenceAssemblies NetStandard21 { get; } diff --git a/tests/Microsoft.CodeAnalysis.Testing/Microsoft.CodeAnalysis.Analyzer.Testing.UnitTests/CompilerErrorTests.cs b/tests/Microsoft.CodeAnalysis.Testing/Microsoft.CodeAnalysis.Analyzer.Testing.UnitTests/CompilerErrorTests.cs index c9f4791faa..6ccc853e4b 100644 --- a/tests/Microsoft.CodeAnalysis.Testing/Microsoft.CodeAnalysis.Analyzer.Testing.UnitTests/CompilerErrorTests.cs +++ b/tests/Microsoft.CodeAnalysis.Testing/Microsoft.CodeAnalysis.Analyzer.Testing.UnitTests/CompilerErrorTests.cs @@ -252,6 +252,69 @@ class TestClass { }.RunAsync(); } + [Fact] + public async Task TestRoslynCompilerUsage_1() + { + var testCode = @" +using Microsoft.CodeAnalysis.CSharp; +class TestClass { + SyntaxKind TestMethod() => SyntaxKind.CloseBraceToken; +} +"; + + await new CSharpTest + { + TestState = + { + Sources = { testCode }, + }, + ReferenceAssemblies = ReferenceAssemblies.NetFramework.Net452.Default + .AddPackages(ImmutableArray.Create(new PackageIdentity("Microsoft.CodeAnalysis", NuGetVersion.Parse("1.0.1")))), + }.RunAsync(); + } + + [Fact] + public async Task TestRoslynCompilerUsage_2() + { + var testCode = @" +using Microsoft.CodeAnalysis.CSharp; +class TestClass { + SyntaxKind TestMethod() => SyntaxKind.TupleType; +} +"; + + await new CSharpTest + { + TestState = + { + Sources = { testCode }, + }, + ReferenceAssemblies = ReferenceAssemblies.NetFramework.Net46.Default + .AddPackages(ImmutableArray.Create(new PackageIdentity("Microsoft.CodeAnalysis", NuGetVersion.Parse("2.8.2")))), + }.RunAsync(); + } + + [Fact] + public async Task TestRoslynCompilerUsage_3() + { + var testCode = @" +using Microsoft.CodeAnalysis.CSharp; +class TestClass { + SyntaxKind TestMethod() => SyntaxKind.DotDotToken; +} +"; + + await new CSharpTest + { + TestState = + { + Sources = { testCode }, + }, + ReferenceAssemblies = ReferenceAssemblies.NetFramework.Net472.Default + .AddPackages(ImmutableArray.Create(new PackageIdentity("Microsoft.CodeAnalysis", NuGetVersion.Parse("3.3.1")))), + }.RunAsync(); + } + private class CSharpTest : AnalyzerTest { public override string Language => LanguageNames.CSharp; From f203ffcc5b00b9b5d225af3a31d7b5609b5c76ca Mon Sep 17 00:00:00 2001 From: Sam Harwell Date: Thu, 31 Oct 2019 08:37:50 -0700 Subject: [PATCH 4/7] Use a shorter path for temporary packages --- .../ReferenceAssemblies.cs | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/src/Microsoft.CodeAnalysis.Testing/Microsoft.CodeAnalysis.Analyzer.Testing/ReferenceAssemblies.cs b/src/Microsoft.CodeAnalysis.Testing/Microsoft.CodeAnalysis.Analyzer.Testing/ReferenceAssemblies.cs index 55efeb8448..88e0eae3a8 100644 --- a/src/Microsoft.CodeAnalysis.Testing/Microsoft.CodeAnalysis.Analyzer.Testing/ReferenceAssemblies.cs +++ b/src/Microsoft.CodeAnalysis.Testing/Microsoft.CodeAnalysis.Analyzer.Testing/ReferenceAssemblies.cs @@ -230,7 +230,9 @@ private async Task> ResolveCoreAsync(string la } var globalPathResolver = new PackagePathResolver(SettingsUtility.GetGlobalPackagesFolder(settings)); - var localPathResolver = new PackagePathResolver(Path.GetFullPath("packages")); + var temporaryPackagesFolder = Path.Combine(Path.GetTempPath(), "test-packages"); + Directory.CreateDirectory(temporaryPackagesFolder); + var localPathResolver = new PackagePathResolver(temporaryPackagesFolder); #if NET452 var packageExtractionContext = new PackageExtractionContext(logger); #elif NET46 || NET472 || NETSTANDARD2_0 From 7039aee28793f28146d618aba556c8ba659d5faf Mon Sep 17 00:00:00 2001 From: Sam Harwell Date: Thu, 31 Oct 2019 09:30:03 -0700 Subject: [PATCH 5/7] Use a file system semaphore for cross-process safety --- ...ReferenceAssemblies+FileSystemSemaphore.cs | 54 +++++++++++++++++++ .../ReferenceAssemblies.cs | 12 ++--- 2 files changed, 58 insertions(+), 8 deletions(-) create mode 100644 src/Microsoft.CodeAnalysis.Testing/Microsoft.CodeAnalysis.Analyzer.Testing/ReferenceAssemblies+FileSystemSemaphore.cs diff --git a/src/Microsoft.CodeAnalysis.Testing/Microsoft.CodeAnalysis.Analyzer.Testing/ReferenceAssemblies+FileSystemSemaphore.cs b/src/Microsoft.CodeAnalysis.Testing/Microsoft.CodeAnalysis.Analyzer.Testing/ReferenceAssemblies+FileSystemSemaphore.cs new file mode 100644 index 0000000000..ed77ffc8e9 --- /dev/null +++ b/src/Microsoft.CodeAnalysis.Testing/Microsoft.CodeAnalysis.Analyzer.Testing/ReferenceAssemblies+FileSystemSemaphore.cs @@ -0,0 +1,54 @@ +// Copyright (c) Microsoft. All Rights Reserved. Licensed under the Apache License, Version 2.0. See License.txt in the project root for license information. + +using System; +using System.IO; +using System.Threading; +using System.Threading.Tasks; + +namespace Microsoft.CodeAnalysis.Testing +{ + public sealed partial class ReferenceAssemblies + { + private sealed class FileSystemSemaphore + { + private readonly string _path; + + public FileSystemSemaphore(string path) + { + _path = path ?? throw new ArgumentNullException(nameof(path)); + + Directory.CreateDirectory(Path.GetDirectoryName(path)); + } + + internal async Task WaitAsync(CancellationToken cancellationToken) + { + while (true) + { + try + { + return new Releaser(File.Open(_path, FileMode.OpenOrCreate, FileAccess.Read, FileShare.None)); + } + catch (IOException) + { + await Task.Delay(TimeSpan.FromSeconds(1), cancellationToken); + } + } + } + + public readonly struct Releaser : IDisposable + { + private readonly FileStream _fileStream; + + public Releaser(FileStream fileStream) + { + _fileStream = fileStream; + } + + public void Dispose() + { + _fileStream?.Dispose(); + } + } + } + } +} diff --git a/src/Microsoft.CodeAnalysis.Testing/Microsoft.CodeAnalysis.Analyzer.Testing/ReferenceAssemblies.cs b/src/Microsoft.CodeAnalysis.Testing/Microsoft.CodeAnalysis.Analyzer.Testing/ReferenceAssemblies.cs index 88e0eae3a8..b94ebc270e 100644 --- a/src/Microsoft.CodeAnalysis.Testing/Microsoft.CodeAnalysis.Analyzer.Testing/ReferenceAssemblies.cs +++ b/src/Microsoft.CodeAnalysis.Testing/Microsoft.CodeAnalysis.Analyzer.Testing/ReferenceAssemblies.cs @@ -24,10 +24,11 @@ namespace Microsoft.CodeAnalysis.Testing { - public sealed class ReferenceAssemblies + public sealed partial class ReferenceAssemblies { private const string ReferenceAssembliesPackageVersion = "1.0.0-preview.2"; - private static readonly SemaphoreSlim Semaphore = new SemaphoreSlim(1); + + private static readonly FileSystemSemaphore Semaphore = new FileSystemSemaphore(Path.Combine(Path.GetTempPath(), "test-packages", ".lock")); private readonly Dictionary> _references = new Dictionary>(); @@ -155,8 +156,7 @@ public async Task> ResolveAsync(string? langua } } - await Semaphore.WaitAsync(cancellationToken); - try + using (var releaser = await Semaphore.WaitAsync(cancellationToken)) { lock (_references) { @@ -174,10 +174,6 @@ public async Task> ResolveAsync(string? langua return computedReferences; } - finally - { - Semaphore.Release(); - } } /// From 013b6578364d8f52ded8c7fdd9142bc3cba9717b Mon Sep 17 00:00:00 2001 From: Sam Harwell Date: Thu, 31 Oct 2019 12:15:11 -0700 Subject: [PATCH 6/7] Avoid using obsolete SourceRepositoryProvider constructor See NuGet/Home#8479 --- .../ReferenceAssemblies.cs | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/src/Microsoft.CodeAnalysis.Testing/Microsoft.CodeAnalysis.Analyzer.Testing/ReferenceAssemblies.cs b/src/Microsoft.CodeAnalysis.Testing/Microsoft.CodeAnalysis.Analyzer.Testing/ReferenceAssemblies.cs index b94ebc270e..884a9f80ab 100644 --- a/src/Microsoft.CodeAnalysis.Testing/Microsoft.CodeAnalysis.Analyzer.Testing/ReferenceAssemblies.cs +++ b/src/Microsoft.CodeAnalysis.Testing/Microsoft.CodeAnalysis.Analyzer.Testing/ReferenceAssemblies.cs @@ -180,9 +180,7 @@ public async Task> ResolveAsync(string? langua private async Task> ResolveCoreAsync(string language, CancellationToken cancellationToken) { var settings = Settings.LoadDefaultSettings(root: null); -#pragma warning disable CS0618 // Type or member is obsolete - var sourceRepositoryProvider = new SourceRepositoryProvider(settings, Repository.Provider.GetCoreV3()); -#pragma warning restore CS0618 // Type or member is obsolete + var sourceRepositoryProvider = new SourceRepositoryProvider(new PackageSourceProvider(settings), Repository.Provider.GetCoreV3()); var targetFramework = NuGetFramework.ParseFolder(TargetFramework); var logger = NullLogger.Instance; From 1cbea12002e169017f33a8972e214963ab96c6e1 Mon Sep 17 00:00:00 2001 From: Sam Harwell Date: Sun, 3 Nov 2019 21:54:55 -0800 Subject: [PATCH 7/7] Remove unused/disabled code --- .../ReferenceAssemblies.cs | 33 ------------------- 1 file changed, 33 deletions(-) diff --git a/src/Microsoft.CodeAnalysis.Testing/Microsoft.CodeAnalysis.Analyzer.Testing/ReferenceAssemblies.cs b/src/Microsoft.CodeAnalysis.Testing/Microsoft.CodeAnalysis.Analyzer.Testing/ReferenceAssemblies.cs index 884a9f80ab..2a41522574 100644 --- a/src/Microsoft.CodeAnalysis.Testing/Microsoft.CodeAnalysis.Analyzer.Testing/ReferenceAssemblies.cs +++ b/src/Microsoft.CodeAnalysis.Testing/Microsoft.CodeAnalysis.Analyzer.Testing/ReferenceAssemblies.cs @@ -5,7 +5,6 @@ using System.Collections.Immutable; using System.IO; using System.Linq; -using System.Reflection; using System.Threading; using System.Threading.Tasks; using NuGet.Common; @@ -745,38 +744,6 @@ public static class NetStandard NuGetVersion.Parse("2.0.3")), @"build\netstandard2.0\ref") .AddAssemblies(ImmutableArray.Create("netstandard")); - - ////public static ReferenceAssemblies NetStandard21 { get; } - //// = new ReferenceAssemblies("netstandard2.1") - //// .AddPackages(ImmutableArray.Create(new PackageIdentity("NETStandard.Library", NuGetVersion.Parse("2.0.3")))); } - -#if false - public static class Runtime - { - public static ReferenceAssemblies Current - { - get - { - var metadataReferences = - new[] - { - typeof(object).GetTypeInfo().Assembly, - typeof(System.Diagnostics.Debug).GetTypeInfo().Assembly, - typeof(Enumerable).GetTypeInfo().Assembly, - typeof(Microsoft.VisualBasic.Strings).GetTypeInfo().Assembly, - } - .Select(assembly => assembly.Location) - .Distinct() - .Select(location => MetadataReferences.CreateReferenceFromFile(location)) - .ToImmutableArray(); - - return new ReferenceAssemblies( - metadataReferences, - ImmutableDictionary.Create>()); - } - } - } -#endif } }