From 08eef6797a3dc98d46e9f3ecd07e42f414a6554a Mon Sep 17 00:00:00 2001 From: Artur Spychaj Date: Mon, 18 Apr 2016 17:04:03 -0700 Subject: [PATCH 001/255] Fix printing of REPL output in interactive host Ensures that all output is printed by the interactive host as REPL terminates. Prints all data until the end of stdout and stderr streams. --- .../Interactive/Core/InteractiveHost.RemoteService.cs | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/src/Interactive/Features/Interactive/Core/InteractiveHost.RemoteService.cs b/src/Interactive/Features/Interactive/Core/InteractiveHost.RemoteService.cs index ca97afceb3b14..2e9a79e41e9cd 100644 --- a/src/Interactive/Features/Interactive/Core/InteractiveHost.RemoteService.cs +++ b/src/Interactive/Features/Interactive/Core/InteractiveHost.RemoteService.cs @@ -83,11 +83,11 @@ internal void HookAutoRestartEvent() private void ReadOutput(bool error) { var buffer = new char[4096]; - TextReader reader = error ? Process.StandardError : Process.StandardOutput; + StreamReader reader = error ? Process.StandardError : Process.StandardOutput; try { - // loop until the output pipe is closed (process is killed): - while (Process.IsAlive()) + // loop until the output pipe is closed and has no more data (process is killed): + while (!reader.EndOfStream) { int count = reader.Read(buffer, 0, buffer.Length); if (count == 0) From 4886e89c25a0d9b83336fd2e3ffe42c1f9ccb398 Mon Sep 17 00:00:00 2001 From: John Hamby Date: Wed, 27 Apr 2016 14:06:36 -0700 Subject: [PATCH 002/255] Fix a build failure. --- .../EngineV2/DiagnosticIncrementalAnalyzer.Executor.cs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/Features/Core/Portable/Diagnostics/EngineV2/DiagnosticIncrementalAnalyzer.Executor.cs b/src/Features/Core/Portable/Diagnostics/EngineV2/DiagnosticIncrementalAnalyzer.Executor.cs index f4115c160720d..86cfad83ecf2b 100644 --- a/src/Features/Core/Portable/Diagnostics/EngineV2/DiagnosticIncrementalAnalyzer.Executor.cs +++ b/src/Features/Core/Portable/Diagnostics/EngineV2/DiagnosticIncrementalAnalyzer.Executor.cs @@ -320,7 +320,7 @@ private static async Task FullAnalysisEnabledAsync(Project project, Cancel var workspace = project.Solution.Workspace; var language = project.Language; - if (!workspace.Options.GetOption(ServiceFeatureOnOffOptions.ClosedFileDiagnostic, language) || + if (!ServiceFeatureOnOffOptions.IsClosedFileDiagnosticsEnabled(workspace, language) || !workspace.Options.GetOption(RuntimeOptions.FullSolutionAnalysis)) { return false; From 33c9dc89010042abfa9d6a7dc55ac9c5cee0ace2 Mon Sep 17 00:00:00 2001 From: David Poeschl Date: Wed, 20 Apr 2016 17:34:19 -0700 Subject: [PATCH 003/255] Adjust targets --- build/Targets/Settings.targets | 1 - build/Targets/VSL.Imports.targets | 87 +++++------------------------- build/Targets/VSL.Versions.targets | 4 +- 3 files changed, 14 insertions(+), 78 deletions(-) diff --git a/build/Targets/Settings.targets b/build/Targets/Settings.targets index 04650ac3cd2a9..563faa3d175dd 100644 --- a/build/Targets/Settings.targets +++ b/build/Targets/Settings.targets @@ -303,7 +303,6 @@ True - Microsoft402 - true + true true @@ -357,82 +357,19 @@ - - - - - + - $(CreateVsixContainerDependsOn);SignVsixInputs - $(PrepareForRunDependsOn);SignVsix - true + true - - - - - $(AuthenticodeCertificateName) - - - - - - - - - - - - - + + + Microsoft402 + 72 + - - - - $(AuthenticodeCertificateName) - - - - - - - - %(VsixInputAssembliesToSign.AuthenticodeCertificateName) - 72 - - - - - - - - - - - - VsixSHA2 - - - - - + + VsixSHA2 + + diff --git a/build/Targets/VSL.Versions.targets b/build/Targets/VSL.Versions.targets index 4316c66c18646..55f06e5f8f68f 100644 --- a/build/Targets/VSL.Versions.targets +++ b/build/Targets/VSL.Versions.targets @@ -58,8 +58,8 @@ - $(TF_BUILD_BUILDNUMBER.Split('_')[1]) + $(BUILD_BUILDNUMBER.Split('_')[1]) $(BuildNumberSuffix.Split('.')[0]) From 158c1231ea4d8d3b484af2eea5eadade22833c57 Mon Sep 17 00:00:00 2001 From: David Poeschl Date: Thu, 21 Apr 2016 14:47:03 -0700 Subject: [PATCH 004/255] Remove RunningInMicroBuild --- build/Targets/VSL.Imports.targets | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/build/Targets/VSL.Imports.targets b/build/Targets/VSL.Imports.targets index f6aeb76156126..0bcbea0b41de7 100644 --- a/build/Targets/VSL.Imports.targets +++ b/build/Targets/VSL.Imports.targets @@ -18,8 +18,7 @@ - true - true + true From 5d8ad447fdc41ce2ea758d069d5250b57c735417 Mon Sep 17 00:00:00 2001 From: David Poeschl Date: Thu, 21 Apr 2016 15:43:03 -0700 Subject: [PATCH 005/255] Fix faulty condition --- build/Targets/VSL.Imports.targets | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/build/Targets/VSL.Imports.targets b/build/Targets/VSL.Imports.targets index 0bcbea0b41de7..6e0b3aac0f565 100644 --- a/build/Targets/VSL.Imports.targets +++ b/build/Targets/VSL.Imports.targets @@ -362,7 +362,7 @@ - + Microsoft402 72 From 30676c4055a74ea1535e77a95e5c8e6394c781e9 Mon Sep 17 00:00:00 2001 From: David Poeschl Date: Thu, 21 Apr 2016 16:11:44 -0700 Subject: [PATCH 006/255] Fix bad Include conditions & StrongName friendly name --- build/Targets/VSL.Imports.targets | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/build/Targets/VSL.Imports.targets b/build/Targets/VSL.Imports.targets index 6e0b3aac0f565..89f9758091a48 100644 --- a/build/Targets/VSL.Imports.targets +++ b/build/Targets/VSL.Imports.targets @@ -362,12 +362,12 @@ - + Microsoft402 - 72 + StrongName - + VsixSHA2 From 850a18e2177e509f65946552519b0254f1af2508 Mon Sep 17 00:00:00 2001 From: Andy Gocke Date: Thu, 28 Apr 2016 14:49:35 -0700 Subject: [PATCH 007/255] Create Signing target --- build/Targets/Signing.targets | 17 +++++++++++++++++ build/Targets/VSL.Imports.targets | 23 ++++++++++++----------- build/ToolsetPackages/project.json | 1 + 3 files changed, 30 insertions(+), 11 deletions(-) create mode 100644 build/Targets/Signing.targets diff --git a/build/Targets/Signing.targets b/build/Targets/Signing.targets new file mode 100644 index 0000000000000..4e12933b1815c --- /dev/null +++ b/build/Targets/Signing.targets @@ -0,0 +1,17 @@ + + + + + + + + Microsoft402 + StrongName + + + + VsixSHA2 + + + + diff --git a/build/Targets/VSL.Imports.targets b/build/Targets/VSL.Imports.targets index 89f9758091a48..d3a5c8af69b17 100644 --- a/build/Targets/VSL.Imports.targets +++ b/build/Targets/VSL.Imports.targets @@ -356,19 +356,20 @@ - + + + + true - - - Microsoft402 - StrongName - - - - VsixSHA2 - - + diff --git a/build/ToolsetPackages/project.json b/build/ToolsetPackages/project.json index 907d1d390f3b1..b270045d58d3d 100644 --- a/build/ToolsetPackages/project.json +++ b/build/ToolsetPackages/project.json @@ -1,5 +1,6 @@ { "dependencies": { + "MicroBuild.Core": "0.2.0", "Microsoft.NETCore.Platforms": "1.0.0", "Microsoft.CodeAnalysis.Test.Resources.Proprietary": "1.2.0-beta1-20160105-04", "Microsoft.Build.Mono.Debug": "14.1.0", From 12d30f6a4171aa27962e0a80a3a279f8ae2702b3 Mon Sep 17 00:00:00 2001 From: Andy Gocke Date: Thu, 28 Apr 2016 16:04:12 -0700 Subject: [PATCH 008/255] Update MicroBuild targets names --- build/Targets/Signing.targets | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/build/Targets/Signing.targets b/build/Targets/Signing.targets index 4e12933b1815c..9cf7b43cce48b 100644 --- a/build/Targets/Signing.targets +++ b/build/Targets/Signing.targets @@ -1,7 +1,7 @@ - - + + From baf1aa28526f682b3874f2b484aaf6275ad2e0a6 Mon Sep 17 00:00:00 2001 From: Andy Gocke Date: Thu, 28 Apr 2016 16:23:03 -0700 Subject: [PATCH 009/255] Try signing again --- build/Targets/Signing.targets | 2 +- src/Tools/CommonCoreClrRuntime/CommonCoreClrRuntime.csproj | 1 + 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/build/Targets/Signing.targets b/build/Targets/Signing.targets index 9cf7b43cce48b..021eff99f2927 100644 --- a/build/Targets/Signing.targets +++ b/build/Targets/Signing.targets @@ -5,7 +5,7 @@ - Microsoft402 + Microsoft StrongName diff --git a/src/Tools/CommonCoreClrRuntime/CommonCoreClrRuntime.csproj b/src/Tools/CommonCoreClrRuntime/CommonCoreClrRuntime.csproj index 57f8bef6875d8..8b5eea9162d0c 100644 --- a/src/Tools/CommonCoreClrRuntime/CommonCoreClrRuntime.csproj +++ b/src/Tools/CommonCoreClrRuntime/CommonCoreClrRuntime.csproj @@ -18,6 +18,7 @@ .NETPortable v5.0 true + true From 2842e7c0589876bdcf22fa9d4cb7a43ac5b42a2b Mon Sep 17 00:00:00 2001 From: Andy Gocke Date: Fri, 29 Apr 2016 10:07:12 -0700 Subject: [PATCH 010/255] Restore signing certificate name --- build/Targets/Signing.targets | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/build/Targets/Signing.targets b/build/Targets/Signing.targets index 021eff99f2927..9cf7b43cce48b 100644 --- a/build/Targets/Signing.targets +++ b/build/Targets/Signing.targets @@ -5,7 +5,7 @@ - Microsoft + Microsoft402 StrongName From 752646a1725a8dfe6261223e37101863ce92a47b Mon Sep 17 00:00:00 2001 From: Andy Gocke Date: Fri, 29 Apr 2016 12:28:48 -0700 Subject: [PATCH 011/255] Try different keys for signing --- build/Targets/Signing.targets | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/build/Targets/Signing.targets b/build/Targets/Signing.targets index 9cf7b43cce48b..f3da3e75f6435 100644 --- a/build/Targets/Signing.targets +++ b/build/Targets/Signing.targets @@ -5,8 +5,8 @@ - Microsoft402 - StrongName + Microsoft401 + StrongName267 From 05555afb3d11616f72b6f41bba6761ff1c580620 Mon Sep 17 00:00:00 2001 From: Andy Gocke Date: Fri, 29 Apr 2016 15:05:23 -0700 Subject: [PATCH 012/255] Update certs again --- build/Targets/Signing.targets | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/build/Targets/Signing.targets b/build/Targets/Signing.targets index f3da3e75f6435..99e1d183e2b31 100644 --- a/build/Targets/Signing.targets +++ b/build/Targets/Signing.targets @@ -5,8 +5,8 @@ - Microsoft401 - StrongName267 + Microsoft402 + StrongNameSHA2 From 5e2aaf0c964d0acb6cd8bcc3dfde0cabf2fb3805 Mon Sep 17 00:00:00 2001 From: Andy Gocke Date: Fri, 29 Apr 2016 21:27:28 -0700 Subject: [PATCH 013/255] Remove StrongName sign --- build/Targets/Signing.targets | 1 - 1 file changed, 1 deletion(-) diff --git a/build/Targets/Signing.targets b/build/Targets/Signing.targets index 99e1d183e2b31..b814620ce807f 100644 --- a/build/Targets/Signing.targets +++ b/build/Targets/Signing.targets @@ -6,7 +6,6 @@ Microsoft402 - StrongNameSHA2 From 20ba7d2e0826a28d682c4d7605130c716cbf892c Mon Sep 17 00:00:00 2001 From: Andy Gocke Date: Fri, 29 Apr 2016 21:51:19 -0700 Subject: [PATCH 014/255] Try MsSharedLib cert --- build/Targets/Signing.targets | 1 + 1 file changed, 1 insertion(+) diff --git a/build/Targets/Signing.targets b/build/Targets/Signing.targets index b814620ce807f..7280ffbf172b9 100644 --- a/build/Targets/Signing.targets +++ b/build/Targets/Signing.targets @@ -6,6 +6,7 @@ Microsoft402 + MsSharedLib From 8ac9906de8bfe3037b9cc0d322ebafee67dce148 Mon Sep 17 00:00:00 2001 From: Andy Gocke Date: Sat, 30 Apr 2016 14:20:40 -0700 Subject: [PATCH 015/255] Add support for VSIX signing --- build/Targets/Settings.targets | 1 + build/Targets/Signing.targets | 44 +++++++++++++++++++++++++++++----- 2 files changed, 39 insertions(+), 6 deletions(-) diff --git a/build/Targets/Settings.targets b/build/Targets/Settings.targets index 563faa3d175dd..04650ac3cd2a9 100644 --- a/build/Targets/Settings.targets +++ b/build/Targets/Settings.targets @@ -303,6 +303,7 @@ True + Microsoft402 + + + + + $(AuthenticodeCertificateName) + MsSharedLib72 + + + + + + + + + + + + VsixSHA2 + + + + + From a2a0b5f219d2f988ddd151360258f35344aaaf9b Mon Sep 17 00:00:00 2001 From: Andy Gocke Date: Sun, 1 May 2016 15:28:28 -0700 Subject: [PATCH 016/255] Add test resources to Dependencies.sln --- src/Dependencies/Dependencies.sln | 26 +++++++++++++++++++++++++- 1 file changed, 25 insertions(+), 1 deletion(-) diff --git a/src/Dependencies/Dependencies.sln b/src/Dependencies/Dependencies.sln index e0352a94c837c..f89ddac5b1fd5 100644 --- a/src/Dependencies/Dependencies.sln +++ b/src/Dependencies/Dependencies.sln @@ -1,7 +1,7 @@  Microsoft Visual Studio Solution File, Format Version 12.00 # Visual Studio 14 -VisualStudioVersion = 14.0.24720.0 +VisualStudioVersion = 14.0.25123.0 MinimumVisualStudioVersion = 10.0.40219.1 Project("{D954291E-2A0B-460D-934E-DC6B0785DB48}") = "Microsoft.DiaSymReader", "Microsoft.DiaSymReader\Microsoft.DiaSymReader.shproj", "{F9127F0F-95C8-4576-8081-96E004C1652F}" EndProject @@ -9,6 +9,8 @@ Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Microsoft.DiaSymReader.NetF EndProject Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Microsoft.DiaSymReader.Portable", "Microsoft.DiaSymReader\Portable\Microsoft.DiaSymReader.Portable.csproj", "{316FD2AD-8514-41BD-98D5-61A821F3320E}" EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "TestResourcesProprietary", "..\..\..\Closed\Test\Resources\TestResourcesProprietary.csproj", "{77E6B002-89D8-4298-9B1B-0B5C247DD1FD}" +EndProject Global GlobalSection(SharedMSBuildProjectFiles) = preSolution Microsoft.DiaSymReader\Microsoft.DiaSymReader.projitems*{fa2c8969-bd1f-457a-a6e3-ca772135ff73}*SharedItemsImports = 4 @@ -17,27 +19,49 @@ Global EndGlobalSection GlobalSection(SolutionConfigurationPlatforms) = preSolution Debug|Any CPU = Debug|Any CPU + Debug|ARM = Debug|ARM Debug|Mixed Platforms = Debug|Mixed Platforms Release|Any CPU = Release|Any CPU + Release|ARM = Release|ARM Release|Mixed Platforms = Release|Mixed Platforms EndGlobalSection GlobalSection(ProjectConfigurationPlatforms) = postSolution {FA2C8969-BD1F-457A-A6E3-CA772135FF73}.Debug|Any CPU.ActiveCfg = Debug|Any CPU {FA2C8969-BD1F-457A-A6E3-CA772135FF73}.Debug|Any CPU.Build.0 = Debug|Any CPU + {FA2C8969-BD1F-457A-A6E3-CA772135FF73}.Debug|ARM.ActiveCfg = Debug|Any CPU + {FA2C8969-BD1F-457A-A6E3-CA772135FF73}.Debug|ARM.Build.0 = Debug|Any CPU {FA2C8969-BD1F-457A-A6E3-CA772135FF73}.Debug|Mixed Platforms.ActiveCfg = Debug|Any CPU {FA2C8969-BD1F-457A-A6E3-CA772135FF73}.Debug|Mixed Platforms.Build.0 = Debug|Any CPU {FA2C8969-BD1F-457A-A6E3-CA772135FF73}.Release|Any CPU.ActiveCfg = Release|Any CPU {FA2C8969-BD1F-457A-A6E3-CA772135FF73}.Release|Any CPU.Build.0 = Release|Any CPU + {FA2C8969-BD1F-457A-A6E3-CA772135FF73}.Release|ARM.ActiveCfg = Release|Any CPU + {FA2C8969-BD1F-457A-A6E3-CA772135FF73}.Release|ARM.Build.0 = Release|Any CPU {FA2C8969-BD1F-457A-A6E3-CA772135FF73}.Release|Mixed Platforms.ActiveCfg = Release|Any CPU {FA2C8969-BD1F-457A-A6E3-CA772135FF73}.Release|Mixed Platforms.Build.0 = Release|Any CPU {316FD2AD-8514-41BD-98D5-61A821F3320E}.Debug|Any CPU.ActiveCfg = Debug|Any CPU {316FD2AD-8514-41BD-98D5-61A821F3320E}.Debug|Any CPU.Build.0 = Debug|Any CPU + {316FD2AD-8514-41BD-98D5-61A821F3320E}.Debug|ARM.ActiveCfg = Debug|Any CPU + {316FD2AD-8514-41BD-98D5-61A821F3320E}.Debug|ARM.Build.0 = Debug|Any CPU {316FD2AD-8514-41BD-98D5-61A821F3320E}.Debug|Mixed Platforms.ActiveCfg = Debug|Any CPU {316FD2AD-8514-41BD-98D5-61A821F3320E}.Debug|Mixed Platforms.Build.0 = Debug|Any CPU {316FD2AD-8514-41BD-98D5-61A821F3320E}.Release|Any CPU.ActiveCfg = Release|Any CPU {316FD2AD-8514-41BD-98D5-61A821F3320E}.Release|Any CPU.Build.0 = Release|Any CPU + {316FD2AD-8514-41BD-98D5-61A821F3320E}.Release|ARM.ActiveCfg = Release|Any CPU + {316FD2AD-8514-41BD-98D5-61A821F3320E}.Release|ARM.Build.0 = Release|Any CPU {316FD2AD-8514-41BD-98D5-61A821F3320E}.Release|Mixed Platforms.ActiveCfg = Release|Any CPU {316FD2AD-8514-41BD-98D5-61A821F3320E}.Release|Mixed Platforms.Build.0 = Release|Any CPU + {77E6B002-89D8-4298-9B1B-0B5C247DD1FD}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {77E6B002-89D8-4298-9B1B-0B5C247DD1FD}.Debug|Any CPU.Build.0 = Debug|Any CPU + {77E6B002-89D8-4298-9B1B-0B5C247DD1FD}.Debug|ARM.ActiveCfg = Debug|ARM + {77E6B002-89D8-4298-9B1B-0B5C247DD1FD}.Debug|ARM.Build.0 = Debug|ARM + {77E6B002-89D8-4298-9B1B-0B5C247DD1FD}.Debug|Mixed Platforms.ActiveCfg = Debug|Any CPU + {77E6B002-89D8-4298-9B1B-0B5C247DD1FD}.Debug|Mixed Platforms.Build.0 = Debug|Any CPU + {77E6B002-89D8-4298-9B1B-0B5C247DD1FD}.Release|Any CPU.ActiveCfg = Release|Any CPU + {77E6B002-89D8-4298-9B1B-0B5C247DD1FD}.Release|Any CPU.Build.0 = Release|Any CPU + {77E6B002-89D8-4298-9B1B-0B5C247DD1FD}.Release|ARM.ActiveCfg = Release|ARM + {77E6B002-89D8-4298-9B1B-0B5C247DD1FD}.Release|ARM.Build.0 = Release|ARM + {77E6B002-89D8-4298-9B1B-0B5C247DD1FD}.Release|Mixed Platforms.ActiveCfg = Release|Any CPU + {77E6B002-89D8-4298-9B1B-0B5C247DD1FD}.Release|Mixed Platforms.Build.0 = Release|Any CPU EndGlobalSection GlobalSection(SolutionProperties) = preSolution HideSolutionNode = FALSE From 61e15cc6dc15124fde680ad6242ac15fff0b9110 Mon Sep 17 00:00:00 2001 From: Andy Gocke Date: Sun, 1 May 2016 15:28:47 -0700 Subject: [PATCH 017/255] Use new directory for NuGet package --- .../Microsoft.CodeAnalysis.Test.Resources.Proprietary.nuspec | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/NuGet/Microsoft.CodeAnalysis.Test.Resources.Proprietary.nuspec b/src/NuGet/Microsoft.CodeAnalysis.Test.Resources.Proprietary.nuspec index 8c8d2163d31af..397b3b3fccb8e 100644 --- a/src/NuGet/Microsoft.CodeAnalysis.Test.Resources.Proprietary.nuspec +++ b/src/NuGet/Microsoft.CodeAnalysis.Test.Resources.Proprietary.nuspec @@ -19,6 +19,6 @@ Supported Platforms: $tags$ - + From 7b5d752ec6dcb00e7e3d90c8630fdc982ecc1090 Mon Sep 17 00:00:00 2001 From: Andy Gocke Date: Sun, 1 May 2016 17:38:25 -0700 Subject: [PATCH 018/255] Wrong directory for proprietary test resources --- .../Microsoft.CodeAnalysis.Test.Resources.Proprietary.nuspec | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/NuGet/Microsoft.CodeAnalysis.Test.Resources.Proprietary.nuspec b/src/NuGet/Microsoft.CodeAnalysis.Test.Resources.Proprietary.nuspec index 397b3b3fccb8e..e4a39e20a51a1 100644 --- a/src/NuGet/Microsoft.CodeAnalysis.Test.Resources.Proprietary.nuspec +++ b/src/NuGet/Microsoft.CodeAnalysis.Test.Resources.Proprietary.nuspec @@ -19,6 +19,6 @@ Supported Platforms: $tags$ - + From c0fc9e24763c29fa972dfdd4c0fcc7b58024711a Mon Sep 17 00:00:00 2001 From: Andy Gocke Date: Tue, 3 May 2016 16:29:35 -0700 Subject: [PATCH 019/255] Upgrade version of xunit.runner.console --- build/ToolsetPackages/project.json | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/build/ToolsetPackages/project.json b/build/ToolsetPackages/project.json index b270045d58d3d..1e1443f6d1741 100644 --- a/build/ToolsetPackages/project.json +++ b/build/ToolsetPackages/project.json @@ -8,8 +8,7 @@ "Microsoft.Net.Compilers": "1.2.0-rc", "Microsoft.Net.RoslynDiagnostics": "1.1.1-beta1-20150818-01", "FakeSign": "0.9.2", - "xunit": "2.1.0-beta4-build3109", - "xunit.runner.console": "2.1.0-beta4-build3109", + "xunit.runner.console": "2.2.0-beta1-build3239", "Roslyn.Build.Util": "0.9.4-portable" }, "frameworks": { From 9306629e64254144455a959fc48e8f1449028235 Mon Sep 17 00:00:00 2001 From: Andy Gocke Date: Fri, 6 May 2016 12:37:42 -0700 Subject: [PATCH 020/255] Add to various tools projects --- src/Tools/CommonCoreClrRuntime/CommonCoreClrRuntime.csproj | 1 + src/Tools/CommonNetCoreReferences/CommonNetCoreReferences.csproj | 1 + .../DeployCompilerGeneratorToolsRuntime.csproj | 1 + .../Source/BoundTreeGenerator/CompilersBoundTreeGenerator.csproj | 1 + .../CSharpErrorFactsGenerator/CSharpErrorFactsGenerator.csproj | 1 + .../Source/CSharpSyntaxGenerator/CSharpSyntaxGenerator.csproj | 1 + .../VisualBasicErrorFactsGenerator.vbproj | 1 + .../VisualBasicSyntaxGenerator/VisualBasicSyntaxGenerator.vbproj | 1 + 8 files changed, 8 insertions(+) diff --git a/src/Tools/CommonCoreClrRuntime/CommonCoreClrRuntime.csproj b/src/Tools/CommonCoreClrRuntime/CommonCoreClrRuntime.csproj index 8b5eea9162d0c..ed37d9676d19a 100644 --- a/src/Tools/CommonCoreClrRuntime/CommonCoreClrRuntime.csproj +++ b/src/Tools/CommonCoreClrRuntime/CommonCoreClrRuntime.csproj @@ -14,6 +14,7 @@ $(OutDir)\CoreClr true True + true {786C830F-07A1-408B-BD7F-6EE04809D6DB};{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC} .NETPortable v5.0 diff --git a/src/Tools/CommonNetCoreReferences/CommonNetCoreReferences.csproj b/src/Tools/CommonNetCoreReferences/CommonNetCoreReferences.csproj index 73bcdc0fe2175..eecf3eebac639 100644 --- a/src/Tools/CommonNetCoreReferences/CommonNetCoreReferences.csproj +++ b/src/Tools/CommonNetCoreReferences/CommonNetCoreReferences.csproj @@ -14,6 +14,7 @@ $(OutDir)\CoreClrTest true True + true {786C830F-07A1-408B-BD7F-6EE04809D6DB};{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC} .NETPortable v5.0 diff --git a/src/Tools/Source/CompilerGeneratorTools/DeployCompilerGeneratorToolsRuntime/DeployCompilerGeneratorToolsRuntime.csproj b/src/Tools/Source/CompilerGeneratorTools/DeployCompilerGeneratorToolsRuntime/DeployCompilerGeneratorToolsRuntime.csproj index 604ed19ec7b60..052380781f0d1 100644 --- a/src/Tools/Source/CompilerGeneratorTools/DeployCompilerGeneratorToolsRuntime/DeployCompilerGeneratorToolsRuntime.csproj +++ b/src/Tools/Source/CompilerGeneratorTools/DeployCompilerGeneratorToolsRuntime/DeployCompilerGeneratorToolsRuntime.csproj @@ -20,6 +20,7 @@ .NETPortable v5.0 true + true diff --git a/src/Tools/Source/CompilerGeneratorTools/Source/BoundTreeGenerator/CompilersBoundTreeGenerator.csproj b/src/Tools/Source/CompilerGeneratorTools/Source/BoundTreeGenerator/CompilersBoundTreeGenerator.csproj index e14f8bde75163..abe370d3bf594 100644 --- a/src/Tools/Source/CompilerGeneratorTools/Source/BoundTreeGenerator/CompilersBoundTreeGenerator.csproj +++ b/src/Tools/Source/CompilerGeneratorTools/Source/BoundTreeGenerator/CompilersBoundTreeGenerator.csproj @@ -22,6 +22,7 @@ v5.0 false false + true diff --git a/src/Tools/Source/CompilerGeneratorTools/Source/CSharpErrorFactsGenerator/CSharpErrorFactsGenerator.csproj b/src/Tools/Source/CompilerGeneratorTools/Source/CSharpErrorFactsGenerator/CSharpErrorFactsGenerator.csproj index b212643b895fa..8fd0b4de50b02 100644 --- a/src/Tools/Source/CompilerGeneratorTools/Source/CSharpErrorFactsGenerator/CSharpErrorFactsGenerator.csproj +++ b/src/Tools/Source/CompilerGeneratorTools/Source/CSharpErrorFactsGenerator/CSharpErrorFactsGenerator.csproj @@ -22,6 +22,7 @@ v5.0 false false + true diff --git a/src/Tools/Source/CompilerGeneratorTools/Source/CSharpSyntaxGenerator/CSharpSyntaxGenerator.csproj b/src/Tools/Source/CompilerGeneratorTools/Source/CSharpSyntaxGenerator/CSharpSyntaxGenerator.csproj index 0b51abea91c3d..615c040305bed 100644 --- a/src/Tools/Source/CompilerGeneratorTools/Source/CSharpSyntaxGenerator/CSharpSyntaxGenerator.csproj +++ b/src/Tools/Source/CompilerGeneratorTools/Source/CSharpSyntaxGenerator/CSharpSyntaxGenerator.csproj @@ -21,6 +21,7 @@ v5.0 false false + true diff --git a/src/Tools/Source/CompilerGeneratorTools/Source/VisualBasicErrorFactsGenerator/VisualBasicErrorFactsGenerator.vbproj b/src/Tools/Source/CompilerGeneratorTools/Source/VisualBasicErrorFactsGenerator/VisualBasicErrorFactsGenerator.vbproj index 34260302aa11e..c2b76724e0139 100644 --- a/src/Tools/Source/CompilerGeneratorTools/Source/VisualBasicErrorFactsGenerator/VisualBasicErrorFactsGenerator.vbproj +++ b/src/Tools/Source/CompilerGeneratorTools/Source/VisualBasicErrorFactsGenerator/VisualBasicErrorFactsGenerator.vbproj @@ -29,6 +29,7 @@ v5.0 false false + true diff --git a/src/Tools/Source/CompilerGeneratorTools/Source/VisualBasicSyntaxGenerator/VisualBasicSyntaxGenerator.vbproj b/src/Tools/Source/CompilerGeneratorTools/Source/VisualBasicSyntaxGenerator/VisualBasicSyntaxGenerator.vbproj index 87dc85904fbe1..82e1a30c93707 100644 --- a/src/Tools/Source/CompilerGeneratorTools/Source/VisualBasicSyntaxGenerator/VisualBasicSyntaxGenerator.vbproj +++ b/src/Tools/Source/CompilerGeneratorTools/Source/VisualBasicSyntaxGenerator/VisualBasicSyntaxGenerator.vbproj @@ -26,6 +26,7 @@ v5.0 false false + true From 4e98a51ad36a26d4007388e818c374a5847665c1 Mon Sep 17 00:00:00 2001 From: Jared Parsons Date: Thu, 19 May 2016 15:36:37 -0700 Subject: [PATCH 021/255] Merging the groovy change to stabilization --- netci.groovy | 205 +++++++++------------------------------------------ 1 file changed, 33 insertions(+), 172 deletions(-) diff --git a/netci.groovy b/netci.groovy index 2d17efecef18d..03e336295bad4 100644 --- a/netci.groovy +++ b/netci.groovy @@ -2,149 +2,32 @@ // Jenkins DSL: https://github.com/jenkinsci/job-dsl-plugin/wiki import jobs.generation.Utilities; -import static Constants.*; def project = GithubProject -class Constants { - // Number of minutes a build job is given to complete. - static final BuildTimeLimit = 120; -} - -static void addLogRotator(def myJob) { - myJob.with { - logRotator { - daysToKeep(90) - numToKeep(-1) - artifactDaysToKeep(21) - artifactNumToKeep(-1) - } - } -} - -static void addConcurrentBuild(def myJob, String category) { - myJob.with { - concurrentBuild(true) - if (category != null) { - throttleConcurrentBuilds { - throttleDisabled(false) - maxTotal(0) - maxPerNode(1) - categories([category]) - } - } - } -} - -static void addScm(def myJob, String branchName, String refspecName = '') { - myJob.with { - scm { - git { - remote { - github('dotnet/roslyn', 'https', 'github.com') - name('') - refspec(refspecName) - } - branch(branchName) - wipeOutWorkspace(true) - shallowClone(true) - } - } - } -} - -static void addWrappers(def myJob) { - myJob.with { - wrappers { - timeout { - absolute(BuildTimeLimit) - abortBuild() - } - timestamps() - } - } -} - -static void addArtifactArchiving(def myJob, String patternString, String excludeString) { - myJob.with { - publishers { - flexiblePublish { - conditionalAction { - condition { - status('ABORTED', 'FAILURE') - } - - publishers { - archiveArtifacts { - allowEmpty(true) - defaultExcludes(false) - exclude(excludeString) - fingerprint(false) - onlyIfSuccessful(false) - pattern(patternString) - } - } - } - } - } - } -} - +// Email the results of aborted / failed jobs to our infrastructure alias static void addEmailPublisher(def myJob) { myJob.with { publishers { - extendedEmail('$DEFAULT_RECIPIENTS, cc:mlinfraswat@microsoft.com', '$DEFAULT_SUBJECT', '$DEFAULT_CONTENT') { - trigger('Aborted', '$PROJECT_DEFAULT_SUBJECT', '$PROJECT_DEFAULT_CONTENT', null, true, true, true, true) - trigger('Failure', '$PROJECT_DEFAULT_SUBJECT', '$PROJECT_DEFAULT_CONTENT', null, true, true, true, true) + extendedEmail('mlinfraswat@microsoft.com', '$DEFAULT_SUBJECT', '$DEFAULT_CONTENT') { + // trigger(trigger name, subject, body, recipient list, send to developers, send to requester, include culprits, send to recipient list) + trigger('Aborted', '$PROJECT_DEFAULT_SUBJECT', '$PROJECT_DEFAULT_CONTENT', null, false, false, false, true) + trigger('Failure', '$PROJECT_DEFAULT_SUBJECT', '$PROJECT_DEFAULT_CONTENT', null, false, false, false, true) } } } } -static void addUnitPublisher(def myJob) { +// Calls a web hook on Jenkins build events. Allows our build monitoring jobs to be push notified +// vs. polling +static void addBuildEventWebHook(def myJob) { myJob.with { - configure { node -> - node / 'publishers' << { - 'xunit'('plugin': 'xunit@1.97') { - 'types' { - 'XUnitDotNetTestType' { - 'pattern'('**/xUnitResults/*.xml') - 'skipNoTestFiles'(false) - 'failIfNotNew'(true) - 'deleteOutputFiles'(true) - 'stopProcessingIfError'(true) - } - } - 'thresholds' { - 'org.jenkinsci.plugins.xunit.threshold.FailedThreshold' { - 'unstableThreshold'('') - 'unstableNewThreshold'('') - 'failureThreshold'('0') - 'failureNewThreshold'('') - } - 'org.jenkinsci.plugins.xunit.threshold.SkippedThreshold' { - 'unstableThreshold'('') - 'unstableNewThreshold'('') - 'failureThreshold'('') - 'failureNewThreshold'('') - } - } - 'thresholdMode'('1') - 'extraConfiguration' { - testTimeMargin('3000') - } - } + notifications { + endpoint('https://jaredpar.azurewebsites.net/api/BuildEvent?code=tts2pvyelahoiliwu7lo6flxr8ps9kaip4hyr4m0ofa3o3l3di77tzcdpk22kf9gex5m6cbrcnmi') { + event('all') } } - } -} - -static void addPushTrigger(def myJob) { - myJob.with { - triggers { - githubPush() - } - } + } } // Generates the standard trigger phrases. This is the regex which ends up matching lines like: @@ -153,48 +36,31 @@ static String generateTriggerPhrase(String jobName, String opsysName, String tri return "(?i).*test\\W+(${jobName.replace('_', '/').substring(7)}|${opsysName}|${triggerKeyword}|${opsysName}\\W+${triggerKeyword}|${triggerKeyword}\\W+${opsysName})\\W+please.*"; } -static void addPullRequestTrigger(def myJob, String jobName, String triggerPhraseText, Boolean triggerPhraseOnly = false) { - myJob.with { - triggers { - pullRequest { - admin('Microsoft') - useGitHubHooks(true) - triggerPhrase(triggerPhraseText) - onlyTriggerPhrase(triggerPhraseOnly) - autoCloseFailedPullRequests(false) - orgWhitelist('Microsoft') - allowMembersOfWhitelistedOrgsAsAdmin(true) - permitAll(true) - extensions { - commitStatus { - context(jobName.replace('_', '/').substring(7)) - } - } - } - } - } -} - -static void addStandardJob(def myJob, String jobName, String branchName, String triggerPhrase, Boolean triggerPhraseOnly = false) { - addLogRotator(myJob) - addWrappers(myJob) - +static void addRoslynJob(def myJob, String jobName, String branchName, String triggerPhrase, Boolean triggerPhraseOnly = false) { def includePattern = "Binaries/**/*.pdb,Binaries/**/*.xml,Binaries/**/*.log,Binaries/**/*.dmp,Binaries/**/*.zip,Binaries/**/*.png,Binaries/**/*.xml" def excludePattern = "Binaries/Obj/**,Binaries/Bootstrap/**,Binaries/**/nuget*.zip" - addArtifactArchiving(myJob, includePattern, excludePattern) - - if (branchName == 'prtest') { - addPullRequestTrigger(myJob, jobName, triggerPhrase, triggerPhraseOnly); - addScm(myJob, '${sha1}', '+refs/pull/*:refs/remotes/origin/pr/*') + Utilities.addArchival(myJob, includePattern, excludePattern) + + // Create the standard job. This will setup parameter, SCM, timeout, etc ... + def projectName = 'dotnet/roslyn' + def isPr = branchName == 'prtest' + def defaultBranch = "*/${branchName}" + Utilities.standardJobSetup(myJob, projectName, isPr, defaultBranch) + + // Need to setup the triggers for the job + if (isPr) { + def contextName = jobName.replace('_', '/').substring(7) + Utilities.addGithubPRTrigger(myJob, contextName, triggerPhrase, triggerPhraseOnly) } else { - addPushTrigger(myJob) - addScm(myJob, "*/${branchName}") + Utilities.addGithubPushTrigger(myJob) addEmailPublisher(myJob) } + + addBuildEventWebHook(myJob) } def branchNames = [] -['master', 'future', 'stabilization', 'future-stabilization', 'hotfixes', 'prtest'].each { branchName -> +['master', 'future', 'stabilization', 'future-stabilization', 'hotfixes', 'prtest', 'microupdate'].each { branchName -> def shortBranchName = branchName.substring(0, 6) def jobBranchName = shortBranchName in branchNames ? branchName : shortBranchName branchNames << jobBranchName @@ -236,17 +102,14 @@ set TMP=%TEMP% } } Utilities.setMachineAffinity(myJob, 'Windows_NT', 'latest-or-auto') - // Generic throttling for Windows, no category - addConcurrentBuild(myJob, null) break; case 'linux': myJob.with { - label('ubuntu-fast') steps { shell("./cibuild.sh --nocache --debug") } } - addConcurrentBuild(myJob, 'roslyn/lin/unit') + Utilities.setMachineAffinity(myJob, 'Ubuntu14.04', 'latest-or-auto') break; case 'mac': myJob.with { @@ -255,13 +118,12 @@ set TMP=%TEMP% shell("./cibuild.sh --nocache --debug") } } - addConcurrentBuild(myJob, 'roslyn/mac/unit') triggerPhraseOnly = true; break; } - addUnitPublisher(myJob) - addStandardJob(myJob, jobName, branchName, triggerPhrase, triggerPhraseOnly); + Utilities.addXUnitDotNETResults(myJob, '**/xUnitResults/*.xml') + addRoslynJob(myJob, jobName, branchName, triggerPhrase, triggerPhraseOnly) } } } @@ -284,7 +146,6 @@ set TMP=%TEMP% } Utilities.setMachineAffinity(determinismJob, 'Windows_NT', 'latest-or-auto') - addConcurrentBuild(determinismJob, null) - addStandardJob(determinismJob, determinismJobName, branchName, "(?i).*test\\W+determinism.*", true); + addRoslynJob(determinismJob, determinismJobName, branchName, "(?i).*test\\W+determinism.*", true); } From 94d654a4cc6df7ebe5ea597cd2547f8a856e5d0d Mon Sep 17 00:00:00 2001 From: Jared Parsons Date: Thu, 19 May 2016 15:40:47 -0700 Subject: [PATCH 022/255] Moving to new groovy script --- netci.groovy | 156 ++++++++++++++++++++++++++------------------------- 1 file changed, 79 insertions(+), 77 deletions(-) diff --git a/netci.groovy b/netci.groovy index 03e336295bad4..4fdff2c5a20f2 100644 --- a/netci.groovy +++ b/netci.groovy @@ -3,7 +3,12 @@ import jobs.generation.Utilities; -def project = GithubProject +// The input project name (e.g. dotnet/corefx) +def projectName = GithubProject +// The input branch name (e.g. master) +def branchName = GithubBranchName +// Folder that the project jobs reside in (project/branch) +def projectFoldername = Utilities.getFolderName(projectName) + '/' + Utilities.getFolderName(branchName) // Email the results of aborted / failed jobs to our infrastructure alias static void addEmailPublisher(def myJob) { @@ -36,21 +41,25 @@ static String generateTriggerPhrase(String jobName, String opsysName, String tri return "(?i).*test\\W+(${jobName.replace('_', '/').substring(7)}|${opsysName}|${triggerKeyword}|${opsysName}\\W+${triggerKeyword}|${triggerKeyword}\\W+${opsysName})\\W+please.*"; } -static void addRoslynJob(def myJob, String jobName, String branchName, String triggerPhrase, Boolean triggerPhraseOnly = false) { +static void addRoslynJob(def myJob, String jobName, String branchName, Boolean isPr, String triggerPhraseExtra, Boolean triggerPhraseOnly = false) { def includePattern = "Binaries/**/*.pdb,Binaries/**/*.xml,Binaries/**/*.log,Binaries/**/*.dmp,Binaries/**/*.zip,Binaries/**/*.png,Binaries/**/*.xml" def excludePattern = "Binaries/Obj/**,Binaries/Bootstrap/**,Binaries/**/nuget*.zip" Utilities.addArchival(myJob, includePattern, excludePattern) // Create the standard job. This will setup parameter, SCM, timeout, etc ... def projectName = 'dotnet/roslyn' - def isPr = branchName == 'prtest' def defaultBranch = "*/${branchName}" Utilities.standardJobSetup(myJob, projectName, isPr, defaultBranch) // Need to setup the triggers for the job if (isPr) { - def contextName = jobName.replace('_', '/').substring(7) - Utilities.addGithubPRTrigger(myJob, contextName, triggerPhrase, triggerPhraseOnly) + def triggerCore = "open|all|${jobName}" + if (triggerPhraseExtra) { + triggerCore = "${triggerCore}|${triggerPhraseExtra}" + } + def triggerPhrase = "(?i).*test\\W+(${triggerCore})\\W+please.*"; + def contextName = jobName + Utilities.addGithubPRTriggerForBranch(myJob, branchName, contextName, triggerPhrase, triggerPhraseOnly) } else { Utilities.addGithubPushTrigger(myJob) addEmailPublisher(myJob) @@ -59,83 +68,75 @@ static void addRoslynJob(def myJob, String jobName, String branchName, String tr addBuildEventWebHook(myJob) } -def branchNames = [] -['master', 'future', 'stabilization', 'future-stabilization', 'hotfixes', 'prtest', 'microupdate'].each { branchName -> - def shortBranchName = branchName.substring(0, 6) - def jobBranchName = shortBranchName in branchNames ? branchName : shortBranchName - branchNames << jobBranchName - - // folder("${jobBranchName}") - ['win', 'linux', 'mac'].each { opsys -> - // folder("${jobBranchName}/${opsys.substring(0, 3)}") - ['dbg', 'rel'].each { configuration -> - if ((configuration == 'dbg') || ((branchName != 'prtest') && (opsys == 'win'))) { - // folder("${jobBranchName}/${opsys.substring(0, 3)}/${configuration}") - ['unit32', 'unit64'].each { buildTarget -> - if ((opsys == 'win') || (buildTarget == 'unit32')) { - def jobName = "roslyn_${jobBranchName}_${opsys.substring(0, 3)}_${configuration}_${buildTarget}" - def myJob = job(jobName) { - description('') - } - - // Generate the PR trigger phrase for this job. - String triggerKeyword = ''; - switch (buildTarget) { - case 'unit32': - triggerKeyword = '(unit|unit32|unit\\W+32)'; - break; - case 'unit64': - triggerKeyword = '(unit|unit64|unit\\W+64)'; - break; - } - String triggerPhrase = generateTriggerPhrase(jobName, opsys, triggerKeyword); - Boolean triggerPhraseOnly = false; - - switch (opsys) { - case 'win': - myJob.with { - steps { - batchFile("""set TEMP=%WORKSPACE%\\Binaries\\Temp +// True when this is a PR job, false for commit. On feature branches we do PR jobs only. +def commitPullList = [false, true] +if (branchName.startsWith("features/")) { + commitPullList = [true] +} + +// Windows +commitPullList.each { isPr -> + ['debug', 'release'].each { configuration -> + ['unit32', 'unit64'].each { buildTarget -> + def jobName = Utilities.getFullJobName(projectName, "windows_${configuration}_${buildTarget}", isPr) + def myJob = job(jobName) { + description("Windows ${configuration} tests on ${buildTarget}") + steps { + batchFile("""set TEMP=%WORKSPACE%\\Binaries\\Temp mkdir %TEMP% set TMP=%TEMP% -.\\cibuild.cmd ${(configuration == 'dbg') ? '/debug' : '/release'} ${(buildTarget == 'unit32') ? '/test32' : '/test64'}""") - } - } - Utilities.setMachineAffinity(myJob, 'Windows_NT', 'latest-or-auto') - break; - case 'linux': - myJob.with { - steps { - shell("./cibuild.sh --nocache --debug") - } - } - Utilities.setMachineAffinity(myJob, 'Ubuntu14.04', 'latest-or-auto') - break; - case 'mac': - myJob.with { - label('mac-roslyn') - steps { - shell("./cibuild.sh --nocache --debug") - } - } - triggerPhraseOnly = true; - break; - } - - Utilities.addXUnitDotNETResults(myJob, '**/xUnitResults/*.xml') - addRoslynJob(myJob, jobName, branchName, triggerPhrase, triggerPhraseOnly) - } +.\\cibuild.cmd ${(configuration == 'debug') ? '/debug' : '/release'} ${(buildTarget == 'unit32') ? '/test32' : '/test64'}""") } } + + def triggerPhraseOnly = configuration == 'release' + def triggerPhraseExtra = "" + Utilities.setMachineAffinity(myJob, 'Windows_NT', 'latest-or-auto') + Utilities.addXUnitDotNETResults(myJob, '**/xUnitResults/*.xml') + addRoslynJob(myJob, jobName, branchName, isPr, triggerPhraseExtra, triggerPhraseOnly) } } +} - def determinismJobName = "roslyn_${jobBranchName}_determinism" - def determinismJob = job(determinismJobName) { - description('') +// Linux +commitPullList.each { isPr -> + def jobName = Utilities.getFullJobName(projectName, "linux_debug", isPr) + def myJob = job(jobName) { + description("Linux tests") + steps { + shell("./cibuild.sh --nocache --debug") + } } - determinismJob.with { + def triggerPhraseOnly = false + def triggerPhraseExtra = "" + Utilities.setMachineAffinity(myJob, 'Ubuntu14.04', 'latest-or-auto') + Utilities.addXUnitDotNETResults(myJob, '**/xUnitResults/*.xml') + addRoslynJob(myJob, jobName, branchName, isPr, triggerPhraseExtra, triggerPhraseOnly) +} + +// Mac +commitPullList.each { isPr -> + def jobName = Utilities.getFullJobName(projectName, "mac_debug", isPr) + def myJob = job(jobName) { + description("Mac tests") + label('mac-roslyn') + steps { + shell("./cibuild.sh --nocache --debug") + } + } + + def triggerPhraseOnly = true + def triggerPhraseExtra = "" + Utilities.addXUnitDotNETResults(myJob, '**/xUnitResults/*.xml') + addRoslynJob(myJob, jobName, branchName, isPr, triggerPhraseExtra, triggerPhraseOnly) +} + +// Determinism +commitPullList.each { isPr -> + def jobName = Utilities.getFullJobName(projectName, "windows_determinism", isPr) + def myJob = job(jobName) { + description('Determinism tests') label('windows-roslyn') steps { batchFile("""set TEMP=%WORKSPACE%\\Binaries\\Temp @@ -144,8 +145,9 @@ set TMP=%TEMP% .\\cibuild.cmd /testDeterminism""") } } - - Utilities.setMachineAffinity(determinismJob, 'Windows_NT', 'latest-or-auto') - addRoslynJob(determinismJob, determinismJobName, branchName, "(?i).*test\\W+determinism.*", true); + + def triggerPhraseOnly = true + def triggerPhraseExtra = "" + Utilities.setMachineAffinity(myJob, 'Windows_NT', 'latest-or-auto') + addRoslynJob(myJob, jobName, branchName, isPr, triggerPhraseExtra, triggerPhraseOnly) } - From 7f0ccccc23dac44516a58dcd94f4d4fa55c0022d Mon Sep 17 00:00:00 2001 From: Jared Parsons Date: Thu, 19 May 2016 16:11:32 -0700 Subject: [PATCH 023/255] Moving to new groovy script --- netci.groovy | 177 ++++++++++++++++++++++++++++----------------------- 1 file changed, 97 insertions(+), 80 deletions(-) diff --git a/netci.groovy b/netci.groovy index 6a1fdd47760fd..4fdff2c5a20f2 100644 --- a/netci.groovy +++ b/netci.groovy @@ -3,124 +3,140 @@ import jobs.generation.Utilities; -def project = GithubProject +// The input project name (e.g. dotnet/corefx) +def projectName = GithubProject +// The input branch name (e.g. master) +def branchName = GithubBranchName +// Folder that the project jobs reside in (project/branch) +def projectFoldername = Utilities.getFolderName(projectName) + '/' + Utilities.getFolderName(branchName) // Email the results of aborted / failed jobs to our infrastructure alias static void addEmailPublisher(def myJob) { myJob.with { publishers { - extendedEmail('$DEFAULT_RECIPIENTS, cc:mlinfraswat@microsoft.com', '$DEFAULT_SUBJECT', '$DEFAULT_CONTENT') { - trigger('Aborted', '$PROJECT_DEFAULT_SUBJECT', '$PROJECT_DEFAULT_CONTENT', null, true, true, true, true) - trigger('Failure', '$PROJECT_DEFAULT_SUBJECT', '$PROJECT_DEFAULT_CONTENT', null, true, true, true, true) + extendedEmail('mlinfraswat@microsoft.com', '$DEFAULT_SUBJECT', '$DEFAULT_CONTENT') { + // trigger(trigger name, subject, body, recipient list, send to developers, send to requester, include culprits, send to recipient list) + trigger('Aborted', '$PROJECT_DEFAULT_SUBJECT', '$PROJECT_DEFAULT_CONTENT', null, false, false, false, true) + trigger('Failure', '$PROJECT_DEFAULT_SUBJECT', '$PROJECT_DEFAULT_CONTENT', null, false, false, false, true) } } } } +// Calls a web hook on Jenkins build events. Allows our build monitoring jobs to be push notified +// vs. polling +static void addBuildEventWebHook(def myJob) { + myJob.with { + notifications { + endpoint('https://jaredpar.azurewebsites.net/api/BuildEvent?code=tts2pvyelahoiliwu7lo6flxr8ps9kaip4hyr4m0ofa3o3l3di77tzcdpk22kf9gex5m6cbrcnmi') { + event('all') + } + } + } +} + // Generates the standard trigger phrases. This is the regex which ends up matching lines like: // test win32 please static String generateTriggerPhrase(String jobName, String opsysName, String triggerKeyword = 'this') { return "(?i).*test\\W+(${jobName.replace('_', '/').substring(7)}|${opsysName}|${triggerKeyword}|${opsysName}\\W+${triggerKeyword}|${triggerKeyword}\\W+${opsysName})\\W+please.*"; } -static void addRoslynJob(def myJob, String jobName, String branchName, String triggerPhrase, Boolean triggerPhraseOnly = false) { +static void addRoslynJob(def myJob, String jobName, String branchName, Boolean isPr, String triggerPhraseExtra, Boolean triggerPhraseOnly = false) { def includePattern = "Binaries/**/*.pdb,Binaries/**/*.xml,Binaries/**/*.log,Binaries/**/*.dmp,Binaries/**/*.zip,Binaries/**/*.png,Binaries/**/*.xml" def excludePattern = "Binaries/Obj/**,Binaries/Bootstrap/**,Binaries/**/nuget*.zip" Utilities.addArchival(myJob, includePattern, excludePattern) // Create the standard job. This will setup parameter, SCM, timeout, etc ... def projectName = 'dotnet/roslyn' - def isPr = branchName == 'prtest' def defaultBranch = "*/${branchName}" Utilities.standardJobSetup(myJob, projectName, isPr, defaultBranch) // Need to setup the triggers for the job if (isPr) { - def contextName = jobName.replace('_', '/').substring(7) - Utilities.addGithubPRTrigger(myJob, contextName, triggerPhrase, triggerPhraseOnly) + def triggerCore = "open|all|${jobName}" + if (triggerPhraseExtra) { + triggerCore = "${triggerCore}|${triggerPhraseExtra}" + } + def triggerPhrase = "(?i).*test\\W+(${triggerCore})\\W+please.*"; + def contextName = jobName + Utilities.addGithubPRTriggerForBranch(myJob, branchName, contextName, triggerPhrase, triggerPhraseOnly) } else { Utilities.addGithubPushTrigger(myJob) addEmailPublisher(myJob) } + + addBuildEventWebHook(myJob) } -def branchNames = [] -['master', 'future', 'stabilization', 'future-stabilization', 'hotfixes', 'prtest', 'microupdate'].each { branchName -> - def shortBranchName = branchName.substring(0, 6) - def jobBranchName = shortBranchName in branchNames ? branchName : shortBranchName - branchNames << jobBranchName - - // folder("${jobBranchName}") - ['win', 'linux', 'mac'].each { opsys -> - // folder("${jobBranchName}/${opsys.substring(0, 3)}") - ['dbg', 'rel'].each { configuration -> - if ((configuration == 'dbg') || ((branchName != 'prtest') && (opsys == 'win'))) { - // folder("${jobBranchName}/${opsys.substring(0, 3)}/${configuration}") - ['unit32', 'unit64'].each { buildTarget -> - if ((opsys == 'win') || (buildTarget == 'unit32')) { - def jobName = "roslyn_${jobBranchName}_${opsys.substring(0, 3)}_${configuration}_${buildTarget}" - def myJob = job(jobName) { - description('') - } - - // Generate the PR trigger phrase for this job. - String triggerKeyword = ''; - switch (buildTarget) { - case 'unit32': - triggerKeyword = '(unit|unit32|unit\\W+32)'; - break; - case 'unit64': - triggerKeyword = '(unit|unit64|unit\\W+64)'; - break; - } - String triggerPhrase = generateTriggerPhrase(jobName, opsys, triggerKeyword); - Boolean triggerPhraseOnly = false; - - switch (opsys) { - case 'win': - myJob.with { - steps { - batchFile("""set TEMP=%WORKSPACE%\\Binaries\\Temp +// True when this is a PR job, false for commit. On feature branches we do PR jobs only. +def commitPullList = [false, true] +if (branchName.startsWith("features/")) { + commitPullList = [true] +} + +// Windows +commitPullList.each { isPr -> + ['debug', 'release'].each { configuration -> + ['unit32', 'unit64'].each { buildTarget -> + def jobName = Utilities.getFullJobName(projectName, "windows_${configuration}_${buildTarget}", isPr) + def myJob = job(jobName) { + description("Windows ${configuration} tests on ${buildTarget}") + steps { + batchFile("""set TEMP=%WORKSPACE%\\Binaries\\Temp mkdir %TEMP% set TMP=%TEMP% -.\\cibuild.cmd ${(configuration == 'dbg') ? '/debug' : '/release'} ${(buildTarget == 'unit32') ? '/test32' : '/test64'}""") - } - } - Utilities.setMachineAffinity(myJob, 'Windows_NT', 'latest-or-auto') - break; - case 'linux': - myJob.with { - steps { - shell("./cibuild.sh --nocache --debug") - } - } - Utilities.setMachineAffinity(myJob, 'Ubuntu14.04', 'latest-or-auto') - break; - case 'mac': - myJob.with { - label('mac-roslyn') - steps { - shell("./cibuild.sh --nocache --debug") - } - } - triggerPhraseOnly = true; - break; - } - - Utilities.addXUnitDotNETResults(myJob, '**/xUnitResults/*.xml') - addRoslynJob(myJob, jobName, branchName, triggerPhrase, triggerPhraseOnly) - } +.\\cibuild.cmd ${(configuration == 'debug') ? '/debug' : '/release'} ${(buildTarget == 'unit32') ? '/test32' : '/test64'}""") } } + + def triggerPhraseOnly = configuration == 'release' + def triggerPhraseExtra = "" + Utilities.setMachineAffinity(myJob, 'Windows_NT', 'latest-or-auto') + Utilities.addXUnitDotNETResults(myJob, '**/xUnitResults/*.xml') + addRoslynJob(myJob, jobName, branchName, isPr, triggerPhraseExtra, triggerPhraseOnly) } } +} - def determinismJobName = "roslyn_${jobBranchName}_determinism" - def determinismJob = job(determinismJobName) { - description('') +// Linux +commitPullList.each { isPr -> + def jobName = Utilities.getFullJobName(projectName, "linux_debug", isPr) + def myJob = job(jobName) { + description("Linux tests") + steps { + shell("./cibuild.sh --nocache --debug") + } } - determinismJob.with { + def triggerPhraseOnly = false + def triggerPhraseExtra = "" + Utilities.setMachineAffinity(myJob, 'Ubuntu14.04', 'latest-or-auto') + Utilities.addXUnitDotNETResults(myJob, '**/xUnitResults/*.xml') + addRoslynJob(myJob, jobName, branchName, isPr, triggerPhraseExtra, triggerPhraseOnly) +} + +// Mac +commitPullList.each { isPr -> + def jobName = Utilities.getFullJobName(projectName, "mac_debug", isPr) + def myJob = job(jobName) { + description("Mac tests") + label('mac-roslyn') + steps { + shell("./cibuild.sh --nocache --debug") + } + } + + def triggerPhraseOnly = true + def triggerPhraseExtra = "" + Utilities.addXUnitDotNETResults(myJob, '**/xUnitResults/*.xml') + addRoslynJob(myJob, jobName, branchName, isPr, triggerPhraseExtra, triggerPhraseOnly) +} + +// Determinism +commitPullList.each { isPr -> + def jobName = Utilities.getFullJobName(projectName, "windows_determinism", isPr) + def myJob = job(jobName) { + description('Determinism tests') label('windows-roslyn') steps { batchFile("""set TEMP=%WORKSPACE%\\Binaries\\Temp @@ -129,8 +145,9 @@ set TMP=%TEMP% .\\cibuild.cmd /testDeterminism""") } } - - Utilities.setMachineAffinity(determinismJob, 'Windows_NT', 'latest-or-auto') - addRoslynJob(determinismJob, determinismJobName, branchName, "(?i).*test\\W+determinism.*", true); + + def triggerPhraseOnly = true + def triggerPhraseExtra = "" + Utilities.setMachineAffinity(myJob, 'Windows_NT', 'latest-or-auto') + addRoslynJob(myJob, jobName, branchName, isPr, triggerPhraseExtra, triggerPhraseOnly) } - From 22d0d9f7308e22716718b0e9435b6c711cce684e Mon Sep 17 00:00:00 2001 From: Nat Ayewah Date: Fri, 20 May 2016 11:39:05 -0700 Subject: [PATCH 024/255] Postpone AnalyzerChanged operations when analyzer is changed on file system to prevent deadlock #11019 --- .../ProjectSystem/AbstractProject.cs | 15 +++++++++++---- 1 file changed, 11 insertions(+), 4 deletions(-) diff --git a/src/VisualStudio/Core/Def/Implementation/ProjectSystem/AbstractProject.cs b/src/VisualStudio/Core/Def/Implementation/ProjectSystem/AbstractProject.cs index 64cb20e7d99ba..5bc90d272a91a 100644 --- a/src/VisualStudio/Core/Def/Implementation/ProjectSystem/AbstractProject.cs +++ b/src/VisualStudio/Core/Def/Implementation/ProjectSystem/AbstractProject.cs @@ -581,10 +581,17 @@ private void OnImportChanged(object sender, EventArgs e) private void OnAnalyzerChanged(object sender, EventArgs e) { - VisualStudioAnalyzer analyzer = (VisualStudioAnalyzer)sender; - - RemoveAnalyzerAssembly(analyzer.FullPath); - AddAnalyzerAssembly(analyzer.FullPath); + // Postpone handler's actions to prevent deadlock. This AnalyzeChanged event can + // be invoked while the FileChangeService lock is held, and VisualStudioAnalyzer's + // efforts to listen to file changes can lead to a deadlock situation. + // Postponing the VisualStudioAnalyzer operations gives this thread the opportunity + // to release the lock. + Dispatcher.CurrentDispatcher.BeginInvoke(new Action(() => { + VisualStudioAnalyzer analyzer = (VisualStudioAnalyzer)sender; + + RemoveAnalyzerAssembly(analyzer.FullPath); + AddAnalyzerAssembly(analyzer.FullPath); + })); } // Internal for unit testing From 0ad90ddd243fe43bb7b44fbafc3e4fe65048e0ee Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Adolfo=20Ochagav=C3=ADa?= Date: Mon, 23 May 2016 13:10:28 +0200 Subject: [PATCH 025/255] Auto-suggest > GetItemsWorkerAsync(D (token.Parent.IsKind(SyntaxKind.XmlElementEndTag) && token.IsKind(SyntaxKind.GreaterThanToken)) || (token.Parent.IsKind(SyntaxKind.XmlName) && token.Parent.IsParentKind(SyntaxKind.XmlEmptyElement))) { + // The user is typing inside an XmlElement if (token.Parent.Parent.Kind() == SyntaxKind.XmlElement) { - items.AddRange(GetNestedTags(span)); + // Add corresponding tags except ParamRefTag and TypeParamRefTag + items.AddRange(NestedTagNames.Where(name => name != ParamRefTagName && name != TypeParamRefTagName) + .Select(name => GetItem(name, span))); + + // Add a ParamRefTag for each available parameter + var symbol = declaredSymbol as IMethodSymbol; + if (symbol != null) + { + var parameters = symbol.GetParameters().Select(p => p.Name).ToSet(); + items.AddRange(parameters.Select(p => CreateCompletionItem(span, FormatParameter(ParamRefTagName, p)))); + } + + // Add a TypeParamRefTag for each available type parameter + var typeParameters = (declaredSymbol as INamedTypeSymbol)?.TypeParameters.Select(t => t.Name).ToSet(); + if (typeParameters == null) + { + typeParameters = (declaredSymbol as IMethodSymbol)?.TypeParameters.Select(t => t.Name).ToSet(); + } + if (typeParameters != null) + { + items.AddRange(typeParameters.Select(t => CreateCompletionItem(span, FormatParameter(TypeParamRefTagName, t)))); + } } if (token.Parent.Parent.Kind() == SyntaxKind.XmlElement && ((XmlElementSyntax)token.Parent.Parent).StartTag.Name.LocalName.ValueText == ListTagName) @@ -265,11 +287,15 @@ private IEnumerable GetTagsForMethod(IMethodSymbol symbol, TextS return items; } - var returns = true; - RemoveExistingTags(trivia, parameters, x => AttributeSelector(x, ParamTagName)); RemoveExistingTags(trivia, typeParameters, x => AttributeSelector(x, TypeParamTagName)); + items.AddRange(parameters.Select(p => CreateCompletionItem(itemSpan, FormatParameter(ParamTagName, p)))); + items.AddRange(typeParameters.Select(t => CreateCompletionItem(itemSpan, FormatParameter(TypeParamTagName, t)))); + + // Provide a return completion item in case the function returns something + var returns = true; + foreach (var node in trivia.Content) { var element = node as XmlElementSyntax; @@ -285,9 +311,6 @@ private IEnumerable GetTagsForMethod(IMethodSymbol symbol, TextS } } - items.AddRange(parameters.Select(p => CreateCompletionItem(itemSpan, FormatParameter(ParamTagName, p)))); - items.AddRange(typeParameters.Select(t => CreateCompletionItem(itemSpan, FormatParameter(TypeParamTagName, t)))); - if (returns && !symbol.ReturnsVoid) { items.Add(CreateCompletionItem(itemSpan, ReturnsTagName)); diff --git a/src/Features/Core/Portable/Completion/Providers/AbstractDocCommentCompletionProvider.cs b/src/Features/Core/Portable/Completion/Providers/AbstractDocCommentCompletionProvider.cs index b1386e5fd49b1..02a71ec4dac69 100644 --- a/src/Features/Core/Portable/Completion/Providers/AbstractDocCommentCompletionProvider.cs +++ b/src/Features/Core/Portable/Completion/Providers/AbstractDocCommentCompletionProvider.cs @@ -115,10 +115,14 @@ protected IEnumerable GetAlwaysVisibleItems(TextSpan itemSpan) .Select(t => GetItem(t, itemSpan)); } + protected IEnumerable NestedTagNames + { + get { return new[] { CTagName, CodeTagName, ParaTagName, ListTagName, ParamRefTagName, TypeParamRefTagName }; } + } + protected IEnumerable GetNestedTags(TextSpan itemSpan) { - return new[] { CTagName, CodeTagName, ParaTagName, ListTagName, ParamRefTagName, TypeParamRefTagName } - .Select(t => GetItem(t, itemSpan)); + return NestedTagNames.Select(t => GetItem(t, itemSpan)); } protected IEnumerable GetTopLevelRepeatableItems(TextSpan itemSpan) From 347405d3f5f7e1d70e0c70607a9bb57a6ed9bea4 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Adolfo=20Ochagav=C3=ADa?= Date: Mon, 23 May 2016 16:50:08 +0200 Subject: [PATCH 026/255] Add tests for +{ + + /// + /// $$ + /// + public int bar(T green) { } +}", "typeparamref name=\"T\"", "paramref name=\"green\""); + } + + [Fact, Trait(Traits.Feature, Traits.Features.Completion)] + public async Task ClassTypeParamRefName() + { + await VerifyItemsExistAsync(@" +/// +/// $$ +/// +public class foo +{ + public int bar(T green) { } +}", "typeparamref name=\"T\""); + } + [Fact, Trait(Traits.Feature, Traits.Features.Completion)] public async Task ClassTypeParam() { From 192071225765a48316338feb4af73543d4de8b33 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Adolfo=20Ochagav=C3=ADa?= Date: Mon, 23 May 2016 17:53:30 +0200 Subject: [PATCH 027/255] Update old tests --- .../XmlDocumentationCommentCompletionProviderTests.cs | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/EditorFeatures/CSharpTest/Completion/CompletionProviders/XmlDocumentationCommentCompletionProviderTests.cs b/src/EditorFeatures/CSharpTest/Completion/CompletionProviders/XmlDocumentationCommentCompletionProviderTests.cs index 89bf916ee1140..1465bcea22ac4 100644 --- a/src/EditorFeatures/CSharpTest/Completion/CompletionProviders/XmlDocumentationCommentCompletionProviderTests.cs +++ b/src/EditorFeatures/CSharpTest/Completion/CompletionProviders/XmlDocumentationCommentCompletionProviderTests.cs @@ -81,7 +81,7 @@ public class foo { /// $$ public void bar() { } -}", "c", "code", "list", "para", "paramref", "typeparamref"); +}", "c", "code", "list", "para"); } [Fact, Trait(Traits.Feature, Traits.Features.Completion)] @@ -1036,7 +1036,7 @@ public async Task TagsAfterSameLineClosedTag() /// "; - await VerifyItemsExistAsync(text, "!--", "![CDATA[", "c", "code", "list", "para", "paramref", "seealso", "see", "typeparamref"); + await VerifyItemsExistAsync(text, "!--", "![CDATA[", "c", "code", "list", "para", "seealso", "see"); } [WorkItem(734825, "http://vstfdevdiv:8080/DevDiv2/DevDiv/_workitems/edit/734825")] From c11717e31800d7643dab667dcc62b83fc4855bb7 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Adolfo=20Ochagav=C3=ADa?= Date: Wed, 25 May 2016 09:33:36 +0200 Subject: [PATCH 028/255] Simplify code by using helper methods --- .../XmlDocCommentCompletionProvider.cs | 22 ++++++------------- 1 file changed, 7 insertions(+), 15 deletions(-) diff --git a/src/Features/CSharp/Portable/Completion/CompletionProviders/XmlDocCommentCompletionProvider.cs b/src/Features/CSharp/Portable/Completion/CompletionProviders/XmlDocCommentCompletionProvider.cs index 76eef1b0289e7..de1c157bbd2b5 100644 --- a/src/Features/CSharp/Portable/Completion/CompletionProviders/XmlDocCommentCompletionProvider.cs +++ b/src/Features/CSharp/Portable/Completion/CompletionProviders/XmlDocCommentCompletionProvider.cs @@ -77,23 +77,15 @@ protected override async Task> GetItemsWorkerAsync(D items.AddRange(NestedTagNames.Where(name => name != ParamRefTagName && name != TypeParamRefTagName) .Select(name => GetItem(name, span))); - // Add a ParamRefTag for each available parameter - var symbol = declaredSymbol as IMethodSymbol; - if (symbol != null) + if (declaredSymbol != null) { - var parameters = symbol.GetParameters().Select(p => p.Name).ToSet(); - items.AddRange(parameters.Select(p => CreateCompletionItem(span, FormatParameter(ParamRefTagName, p)))); - } + // Add a ParamRefTag for each available parameter + var parameters = declaredSymbol.GetParameters(); + items.AddRange(parameters.Select(p => CreateCompletionItem(span, FormatParameter(ParamRefTagName, p.Name)))); - // Add a TypeParamRefTag for each available type parameter - var typeParameters = (declaredSymbol as INamedTypeSymbol)?.TypeParameters.Select(t => t.Name).ToSet(); - if (typeParameters == null) - { - typeParameters = (declaredSymbol as IMethodSymbol)?.TypeParameters.Select(t => t.Name).ToSet(); - } - if (typeParameters != null) - { - items.AddRange(typeParameters.Select(t => CreateCompletionItem(span, FormatParameter(TypeParamRefTagName, t)))); + // Add a TypeParamRefTag for each available type parameter + var typeParameters = declaredSymbol.GetTypeParameters(); + items.AddRange(typeParameters.Select(t => CreateCompletionItem(span, FormatParameter(TypeParamRefTagName, t.Name)))); } } From 9fe7e8902ea16535a715ae4c80d44852f991c113 Mon Sep 17 00:00:00 2001 From: CyrusNajmabadi Date: Wed, 25 May 2016 12:05:46 -0700 Subject: [PATCH 029/255] Port https://github.com/dotnet/roslyn/pull/11398 over to SymbolKeys. The previous fix only addressed symbol ids. --- .../SymbolId/SymbolKey.BodyLevelSymbolKey.cs | 20 +++++++++++++++++++ 1 file changed, 20 insertions(+) diff --git a/src/Workspaces/Core/Portable/SymbolId/SymbolKey.BodyLevelSymbolKey.cs b/src/Workspaces/Core/Portable/SymbolId/SymbolKey.BodyLevelSymbolKey.cs index ec6bcc77de19e..783d0a35d4e1a 100644 --- a/src/Workspaces/Core/Portable/SymbolId/SymbolKey.BodyLevelSymbolKey.cs +++ b/src/Workspaces/Core/Portable/SymbolId/SymbolKey.BodyLevelSymbolKey.cs @@ -69,6 +69,26 @@ private static IEnumerable> EnumerateSymbols(Compilatio foreach (var declaringLocation in containingSymbol.DeclaringSyntaxReferences) { + // This operation can potentially fail. If containingSymbol came from + // a SpeculativeSemanticModel, containingSymbol.ContainingAssembly.Compilation + // may not have been rebuilt to reflect the trees used by the + // SpeculativeSemanticModel to produce containingSymbol. In that case, + // asking the ContainingAssembly's complation for a SemanticModel based + // on trees for containingSymbol with throw an ArgumentException. + // Unfortunately, the best way to avoid this (currently) is to see if + // we're asking for a model for a tree that's part of the compilation. + // (There's no way to get back to a SemanticModel from a symbol). + + // TODO (rchande): It might be better to call compilation.GetSemanticModel + // and catch the ArgumentException. The compilation internally has a + // Dictionary that it uses to check if the SyntaxTree + // is applicable wheras the public interface requires us to enumerate + // the entire IEnumerable of trees in the Compilation. + if (!compilation.SyntaxTrees.Contains(declaringLocation.SyntaxTree)) + { + continue; + } + var node = declaringLocation.GetSyntax(cancellationToken); if (node.Language == LanguageNames.VisualBasic) { From f024ac43aef577e8722c089d29cc08737e18203e Mon Sep 17 00:00:00 2001 From: CyrusNajmabadi Date: Wed, 25 May 2016 18:10:39 -0700 Subject: [PATCH 030/255] Remove SymbolId and merge serialize/deserialize functionality into SymbolKey. --- .../CSharpTest/SymbolId/SymbolKeyTestBase.cs | 8 +- .../SymbolId/SymbolKeyTestBase.vb | 8 + .../Providers/SymbolCompletionItem.cs | 4 +- .../Core/Portable/SymbolId/SymbolId.cs | 1853 ----------------- .../SymbolId/SymbolKey.AbstractSymbolKey.cs | 2 +- .../SymbolId/SymbolKey.AliasSymbolKey.cs | 112 + .../SymbolId/SymbolKey.ArrayTypeSymbolKey.cs | 15 +- .../SymbolId/SymbolKey.AssemblySymbolKey.cs | 12 +- .../SymbolId/SymbolKey.BodyLevelSymbolKey.cs | 46 +- .../SymbolKey.DynamicTypeSymbolKey.cs | 11 +- .../SymbolId/SymbolKey.ErrorTypeSymbolKey.cs | 22 +- .../SymbolId/SymbolKey.EventSymbolKey.cs | 15 +- .../SymbolId/SymbolKey.FieldSymbolKey.cs | 15 +- .../SymbolId/SymbolKey.MethodSymbolKey.cs | 209 +- .../SymbolKey.MethodTypeParameterSymbolKey.cs | 41 +- .../SymbolId/SymbolKey.ModuleSymbolKey.cs | 15 +- .../SymbolId/SymbolKey.NamedTypeSymbolKey.cs | 28 +- .../SymbolId/SymbolKey.NamespaceSymbolKey.cs | 17 +- .../SymbolId/SymbolKey.NullSymbolKey.cs | 19 +- .../SymbolId/SymbolKey.ParameterSymbolKey.cs | 15 +- .../SymbolKey.PointerTypeSymbolKey.cs | 12 +- .../SymbolId/SymbolKey.PropertySymbolKey.cs | 28 +- .../SymbolId/SymbolKey.TupleTypeSymbolKey.cs | 19 +- .../SymbolKey.TypeParameterSymbolKey.cs | 15 +- .../Portable/SymbolId/SymbolKey.Visitor.cs | 27 +- .../Core/Portable/SymbolId/SymbolKey.cs | 28 +- .../Core/Portable/Workspaces.csproj | 4 +- src/Workspaces/Core/Portable/project.json | 1 + src/Workspaces/CoreTest/ServicesTest.csproj | 3 +- .../{SymbolIdTests.cs => SymbolKeyTests.cs} | 8 +- 30 files changed, 618 insertions(+), 1994 deletions(-) delete mode 100644 src/Workspaces/Core/Portable/SymbolId/SymbolId.cs create mode 100644 src/Workspaces/Core/Portable/SymbolId/SymbolKey.AliasSymbolKey.cs rename src/Workspaces/CoreTest/{SymbolIdTests.cs => SymbolKeyTests.cs} (98%) diff --git a/src/EditorFeatures/CSharpTest/SymbolId/SymbolKeyTestBase.cs b/src/EditorFeatures/CSharpTest/SymbolId/SymbolKeyTestBase.cs index bc9944ef371c9..e9a9f6e2da9fb 100644 --- a/src/EditorFeatures/CSharpTest/SymbolId/SymbolKeyTestBase.cs +++ b/src/EditorFeatures/CSharpTest/SymbolId/SymbolKeyTestBase.cs @@ -77,8 +77,14 @@ internal static void ResolveAndVerifySymbol(ISymbol symbol1, ISymbol symbol2, Co internal static ISymbol ResolveSymbol(ISymbol originalSymbol, Compilation targetCompilation, SymbolKeyComparison comparison) { var sid = SymbolKey.Create(originalSymbol, CancellationToken.None); - var symInfo = sid.Resolve(targetCompilation, (comparison & SymbolKeyComparison.IgnoreAssemblyIds) == SymbolKeyComparison.IgnoreAssemblyIds); + // Verify that serialization works. + var serialized = sid.Serialize(); + var deserialized = SymbolKey.Deserialize(serialized); + var comparer = SymbolKey.GetComparer(ignoreCase: false, ignoreAssemblyKeys: false); + Assert.True(comparer.Equals(sid, deserialized)); + + var symInfo = sid.Resolve(targetCompilation, (comparison & SymbolKeyComparison.IgnoreAssemblyIds) == SymbolKeyComparison.IgnoreAssemblyIds); return symInfo.Symbol; } diff --git a/src/EditorFeatures/VisualBasicTest/SymbolId/SymbolKeyTestBase.vb b/src/EditorFeatures/VisualBasicTest/SymbolId/SymbolKeyTestBase.vb index a7576557570a5..d0726cf4eb902 100644 --- a/src/EditorFeatures/VisualBasicTest/SymbolId/SymbolKeyTestBase.vb +++ b/src/EditorFeatures/VisualBasicTest/SymbolId/SymbolKeyTestBase.vb @@ -71,6 +71,14 @@ Namespace Microsoft.CodeAnalysis.Editor.VisualBasic.UnitTests.SymbolId Friend Shared Function ResolveSymbol(originalSymbol As ISymbol, targetCompilation As Compilation, comparison As SymbolIdComparison) As ISymbol Dim sid = SymbolKey.Create(originalSymbol, CancellationToken.None) + + ' Verify that serialization works. + Dim serialized = sid.Serialize() + Dim deserialized = SymbolKey.Deserialize(serialized) + + Dim comparer = SymbolKey.GetComparer(ignoreCase:=False, ignoreAssemblyKeys:=False) + Assert.True(comparer.Equals(sid, deserialized)) + Dim symInfo = sid.Resolve(targetCompilation, (comparison And SymbolIdComparison.IgnoreAssemblyIds) = SymbolIdComparison.IgnoreAssemblyIds) Return symInfo.Symbol End Function diff --git a/src/Features/Core/Portable/Completion/Providers/SymbolCompletionItem.cs b/src/Features/Core/Portable/Completion/Providers/SymbolCompletionItem.cs index a09a3dabbadd4..0ca4d6c6af12c 100644 --- a/src/Features/Core/Portable/Completion/Providers/SymbolCompletionItem.cs +++ b/src/Features/Core/Portable/Completion/Providers/SymbolCompletionItem.cs @@ -119,7 +119,7 @@ public static string EncodeSymbols(IReadOnlyList symbols) public static string EncodeSymbol(ISymbol symbol) { - return SymbolId.CreateId(symbol); + return SymbolKey.Create(symbol).Serialize(); } public static bool HasSymbols(CompletionItem item) @@ -181,7 +181,7 @@ private static void DecodeSymbols(List ids, Compilation compilation, Lis private static ISymbol DecodeSymbol(string id, Compilation compilation) { - return SymbolId.GetFirstSymbolForId(id, compilation); + return SymbolKey.Deserialize(id).Resolve(compilation).GetAnySymbol(); } public static async Task GetDescriptionAsync(CompletionItem item, Document document, CancellationToken cancellationToken) diff --git a/src/Workspaces/Core/Portable/SymbolId/SymbolId.cs b/src/Workspaces/Core/Portable/SymbolId/SymbolId.cs deleted file mode 100644 index dbf00186fffc4..0000000000000 --- a/src/Workspaces/Core/Portable/SymbolId/SymbolId.cs +++ /dev/null @@ -1,1853 +0,0 @@ -// 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.Linq; -using System.Runtime.InteropServices; -using System.Text; -using Roslyn.Utilities; - -namespace Microsoft.CodeAnalysis -{ - /// - /// APIs for constructing and resolving ids for - /// - internal static class SymbolId - { - private class ListPool : ObjectPool> - { - public ListPool() - : base(() => new List(10), 10) - { } - - public void ClearAndFree(List list) - { - list.Clear(); - base.Free(list); - } - - [Obsolete("Do not use Free, Use ClearAndFree instead.", error: true)] - public new void Free(List list) - { - throw new NotSupportedException(); - } - } - - private static readonly ListPool s_symbolListPool = new ListPool(); - - /// - /// Creates an id string used to identify symbols. - /// - public static string CreateId(ISymbol symbol) - { - if (symbol == null) - { - throw new ArgumentNullException(nameof(symbol)); - } - - var builder = new StringBuilder(); - var generator = new Generator(builder, typeParameterContext: null); - generator.Visit(symbol); - return builder.ToString(); - } - - /// - /// Gets the symbols that match the id string in the compilation. - /// - public static ImmutableArray GetSymbolsForId(string id, Compilation compilation) - { - if (id == null) - { - throw new ArgumentNullException(nameof(id)); - } - - if (compilation == null) - { - throw new ArgumentNullException(nameof(compilation)); - } - - var results = s_symbolListPool.Allocate(); - try - { - TryGetSymbolsForId(id, compilation, results); - return results.ToImmutableArray(); - } - finally - { - s_symbolListPool.ClearAndFree(results); - } - } - - /// - /// Try to get all symbols that match the id string in the compilation. - /// Returns true if at least one symbol matches. - /// - private static bool TryGetSymbolsForId(string id, Compilation compilation, List results) - { - if (id == null) - { - throw new ArgumentNullException(nameof(id)); - } - - if (compilation == null) - { - throw new ArgumentNullException(nameof(compilation)); - } - - if (results == null) - { - throw new ArgumentNullException(nameof(results)); - } - - return Parser.Parse(id, compilation, results); - } - - /// - /// Gets the first symbol that matches the id string in the compilation, order undefined. - /// - public static ISymbol GetFirstSymbolForId(string id, Compilation compilation) - { - if (id == null) - { - throw new ArgumentNullException(nameof(id)); - } - - if (compilation == null) - { - throw new ArgumentNullException(nameof(compilation)); - } - - var results = s_symbolListPool.Allocate(); - try - { - Parser.Parse(id, compilation, results); - return results.Count == 0 ? null : results[0]; - } - finally - { - s_symbolListPool.ClearAndFree(results); - } - } - - private static int GetTotalTypeParameterCount(INamedTypeSymbol symbol) - { - int n = 0; - while (symbol != null) - { - n += symbol.TypeParameters.Length; - symbol = symbol.ContainingSymbol as INamedTypeSymbol; - } - - return n; - } - - // encodes dots with alternate # character - private static string EncodeName(string name) - { - if (name.IndexOf('.') >= 0) - { - return name.Replace('.', '#'); - } - - return name; - } - - private static string EncodePropertyName(string name) - { - // convert C# indexer names to 'Item' - if (name == "this[]") - { - name = "Item"; - } - else if (name.EndsWith(".this[]")) - { - name = name.Substring(0, name.Length - 6) + "Item"; - } - - return name; - } - - private static string DecodePropertyName(string name, string language) - { - // special case, csharp names indexers 'this[]', not 'Item' - if (language == LanguageNames.CSharp) - { - if (name == "Item") - { - name = "this[]"; - } - else if (name.EndsWith(".Item")) - { - name = name.Substring(0, name.Length - 4) + "this[]"; - } - } - - return name; - } - - private const char AliasPrefix = 'A'; - private const char EventPrefix = 'E'; - private const char FieldPrefix = 'F'; - private const char MethodPrefix = 'M'; - private const char ParameterPrefix = 'K'; - private const char PropertyPrefix = 'P'; - private const char NamedTypePrefix = 'T'; - private const char ErrorTypePrefix = 'Z'; - private const char LocalPrefix = 'V'; - private const char LabelPrefix = 'L'; - private const char NamespacePrefix = 'N'; - private const char RangeVariablePrefix = 'R'; - - private struct Generator - { - private readonly StringBuilder _builder; - private readonly ISymbol _typeParameterContext; - - public Generator(StringBuilder builder, ISymbol typeParameterContext) - { - _builder = builder; - _typeParameterContext = typeParameterContext; - } - - public bool Visit(ISymbol symbol) - { - if (symbol == null) - { - return false; - } - - switch (symbol.Kind) - { - case SymbolKind.Alias: - return this.VisitAlias((IAliasSymbol)symbol); - case SymbolKind.ArrayType: - return this.VisitArrayType((IArrayTypeSymbol)symbol); - case SymbolKind.Event: - return this.VisitEvent((IEventSymbol)symbol); - case SymbolKind.Field: - return this.VisitField((IFieldSymbol)symbol); - case SymbolKind.Method: - return this.VisitMethod((IMethodSymbol)symbol); - case SymbolKind.NamedType: - return this.VisitNamedType((INamedTypeSymbol)symbol); - case SymbolKind.Namespace: - return this.VisitNamespace((INamespaceSymbol)symbol); - case SymbolKind.Parameter: - return this.VisitParameter((IParameterSymbol)symbol); - case SymbolKind.PointerType: - return this.VisitPointerType((IPointerTypeSymbol)symbol); - case SymbolKind.Property: - return this.VisitProperty((IPropertySymbol)symbol); - case SymbolKind.TypeParameter: - return this.VisitTypeParameter((ITypeParameterSymbol)symbol); - case SymbolKind.ErrorType: - return this.VisitErrorType((IErrorTypeSymbol)symbol); - case SymbolKind.Local: - return this.VisitLocal((ILocalSymbol)symbol); - case SymbolKind.Label: - return this.VisitLabel((ILabelSymbol)symbol); - case SymbolKind.RangeVariable: - return this.VisitRangeVariable((IRangeVariableSymbol)symbol); - case SymbolKind.DynamicType: - return this.VisitDynamicType((IDynamicTypeSymbol)symbol); - - case SymbolKind.Assembly: - case SymbolKind.NetModule: - case SymbolKind.Preprocessing: - default: - throw new InvalidOperationException("Cannot generated a symbol id for symbol."); - } - } - - private bool VisitAlias(IAliasSymbol symbol) - { - var sref = symbol.DeclaringSyntaxReferences.FirstOrDefault(); - if (sref != null) - { - _builder.Append("A:"); - _builder.Append(symbol.Name); - _builder.Append("'"); - _builder.Append(sref.SyntaxTree.FilePath); - _builder.Append("'"); - } - - return true; - } - - private bool VisitEvent(IEventSymbol symbol) - { - if (this.Visit(symbol.ContainingSymbol)) - { - _builder.Append("."); - } - - _builder.Append(EventPrefix); - _builder.Append(":"); - _builder.Append(EncodeName(symbol.Name)); - return true; - } - - private bool VisitField(IFieldSymbol symbol) - { - if (this.Visit(symbol.ContainingSymbol)) - { - _builder.Append("."); - } - - _builder.Append(FieldPrefix); - _builder.Append(":"); - _builder.Append(EncodeName(symbol.Name)); - return true; - } - - private bool VisitProperty(IPropertySymbol symbol) - { - if (this.Visit(symbol.ContainingSymbol)) - { - _builder.Append("."); - } - - _builder.Append(PropertyPrefix); - _builder.Append(":"); - var name = EncodePropertyName(symbol.Name); - _builder.Append(EncodeName(name)); - - EncodeParameters(symbol.Parameters); - - return true; - } - - private bool VisitMethod(IMethodSymbol symbol) - { - if (symbol.MethodKind == MethodKind.ReducedExtension) - { - EncodeMethod(symbol.GetConstructedReducedFrom()); - _builder.Append("!"); - this.Visit(symbol.ReceiverType); - } - else - { - EncodeMethod(symbol); - } - - return true; - } - - private void EncodeMethod(IMethodSymbol symbol) - { - if (this.Visit(symbol.ContainingSymbol)) - { - _builder.Append("."); - } - - _builder.Append(MethodPrefix); - _builder.Append(":"); - _builder.Append(EncodeName(symbol.Name)); - - EncodeGenericMethodInfo(symbol); - - EncodeParameters(symbol.Parameters); - - // return types are not use for overloading in C# and VB -#if false - if (!symbol.ReturnsVoid) - { - _builder.Append("~"); - new Generator(_builder, symbol).Visit(symbol.ReturnType); - } -#endif - } - - private void EncodeGenericMethodInfo(IMethodSymbol symbol) - { - if (symbol.IsGenericMethod) - { - if (object.ReferenceEquals(symbol.OriginalDefinition, symbol)) - { - if (symbol.TypeParameters.Length > 0) - { - _builder.Append("`"); - _builder.Append(symbol.TypeParameters.Length); - } - } - else if (symbol.TypeArguments.Length > 0) - { - _builder.Append("{"); - - for (int i = 0, n = symbol.TypeArguments.Length; i < n; i++) - { - if (i > 0) - { - _builder.Append(","); - } - - new Generator(_builder, symbol.ConstructedFrom).Visit(symbol.TypeArguments[i]); - } - - _builder.Append("}"); - } - } - } - - private void EncodeParameters(ImmutableArray parameters) - { - if (parameters.Length > 0) - { - _builder.Append("("); - - for (int i = 0, n = parameters.Length; i < n; i++) - { - if (i > 0) - { - _builder.Append(","); - } - - var p = parameters[i]; - new Generator(_builder, p.ContainingSymbol).Visit(p.Type); - if (p.RefKind != RefKind.None) - { - _builder.Append("@"); - } - } - - _builder.Append(")"); - } - } - - private bool VisitParameter(IParameterSymbol symbol) - { - if (this.Visit(symbol.ContainingSymbol)) - { - _builder.Append("."); - } - - _builder.Append(ParameterPrefix); - _builder.Append(":"); - _builder.Append(EncodeName(symbol.Name)); - - return true; - } - - private bool VisitNamespace(INamespaceSymbol symbol) - { - if (symbol.IsGlobalNamespace) - { - return false; - } - - if (this.Visit(symbol.ContainingSymbol)) - { - _builder.Append("."); - } - - _builder.Append(NamespacePrefix); - _builder.Append(":"); - _builder.Append(EncodeName(symbol.Name)); - return true; - } - - private bool VisitNamedType(INamedTypeSymbol symbol) - { - if (this.Visit(symbol.ContainingSymbol)) - { - _builder.Append("."); - } - - _builder.Append(NamedTypePrefix); - _builder.Append(":"); - _builder.Append(EncodeName(symbol.Name)); - - EncodeGenericTypeInfo(symbol); - - return true; - } - - private void EncodeGenericTypeInfo(INamedTypeSymbol symbol) - { - if (symbol.IsGenericType) - { - if (symbol.OriginalDefinition == symbol) - { - _builder.Append("`"); - _builder.Append(symbol.TypeParameters.Length); - } - else if (symbol.TypeArguments.Length > 0) - { - _builder.Append("{"); - - for (int i = 0, n = symbol.TypeArguments.Length; i < n; i++) - { - if (i > 0) - { - _builder.Append(","); - } - - this.Visit(symbol.TypeArguments[i]); - } - - _builder.Append("}"); - } - } - } - - private bool VisitErrorType(IErrorTypeSymbol symbol) - { - _builder.Append(ErrorTypePrefix); - _builder.Append(":"); - _builder.Append(symbol.Name); - - EncodeGenericTypeInfo(symbol); - - return true; - } - - private bool VisitArrayType(IArrayTypeSymbol symbol) - { - this.Visit(symbol.ElementType); - - _builder.Append("["); - - for (int i = 0, n = symbol.Rank; i < n; i++) - { - if (i > 0) - { - _builder.Append(","); - } - } - - _builder.Append("]"); - - return true; - } - - private bool VisitPointerType(IPointerTypeSymbol symbol) - { - this.Visit(symbol.PointedAtType); - _builder.Append("*"); - return true; - } - - private bool VisitTypeParameter(ITypeParameterSymbol symbol) - { - if (!IsInScope(symbol)) - { - // reference to type parameter not in scope, make explicit scope reference - if (this.Visit(symbol.ContainingSymbol)) - { - _builder.Append(":"); - } - } - - if (symbol.DeclaringMethod != null) - { - _builder.Append("``"); - _builder.Append(symbol.Ordinal); - } - else - { - // get count of all type parameter preceding the declaration of the type parameters containing symbol. - var container = symbol.ContainingSymbol?.ContainingSymbol; - var b = GetTotalTypeParameterCount(container as INamedTypeSymbol); - _builder.Append("`"); - _builder.Append(b + symbol.Ordinal); - } - - return true; - } - - private bool IsInScope(ITypeParameterSymbol typeParameterSymbol) - { - // determine if the type parameter is declared in scope defined by the typeParameterContext symbol - var typeParameterDeclarer = typeParameterSymbol.ContainingSymbol; - - for (var scope = _typeParameterContext; scope != null; scope = scope.ContainingSymbol) - { - if (scope == typeParameterDeclarer) - { - return true; - } - } - - return false; - } - - private bool VisitLocal(ILocalSymbol symbol) - { - if (this.Visit(symbol.ContainingSymbol)) - { - _builder.Append("."); - } - - _builder.Append(LocalPrefix); - _builder.Append(":"); - _builder.Append(symbol.Name); - - EncodeOccurrence(symbol); - - return true; - } - - private bool VisitLabel(ILabelSymbol symbol) - { - if (this.Visit(symbol.ContainingSymbol)) - { - _builder.Append("."); - } - - _builder.Append(LabelPrefix); - _builder.Append(":"); - _builder.Append(symbol.Name); - - EncodeOccurrence(symbol); - - return true; - } - - private bool VisitRangeVariable(IRangeVariableSymbol symbol) - { - if (this.Visit(symbol.ContainingSymbol)) - { - _builder.Append("."); - } - - _builder.Append(RangeVariablePrefix); - _builder.Append(":"); - _builder.Append(symbol.Name); - - EncodeOccurrence(symbol); - return true; - } - - private void EncodeOccurrence(ISymbol symbol) - { - var occurrence = GetInteriorSymbolOccurrence(symbol); - if (occurrence > 0) - { - _builder.Append("`"); - _builder.Append(occurrence); - } - } - - public bool VisitDynamicType(IDynamicTypeSymbol symbol) - { - _builder.Append("*"); - return true; - } - } - - private static int GetInteriorSymbolOccurrence(ISymbol symbol) - { - var symbols = s_symbolListPool.Allocate(); - try - { - int n = 0; - - GetInteriorSymbols(symbol.ContainingSymbol, symbols); - - foreach (var sym in symbols) - { - if (sym.Kind == symbol.Kind && sym.Name == symbol.Name) - { - if (sym.Equals(symbol)) - { - return n; - } - - // sym.Equals(symbol) not working for locals of empty anonymous types? - // since this code is only called on source that originated symbol, then spans should match - if (sym.DeclaringSyntaxReferences.Length > 0 - && symbol.DeclaringSyntaxReferences.Length > 0 - && sym.DeclaringSyntaxReferences[0].Span == symbol.DeclaringSyntaxReferences[0].Span) - { - return n; - } - - n++; - } - } - - return n; - } - finally - { - s_symbolListPool.ClearAndFree(symbols); - } - } - - private static ISymbol GetMatchingInteriorSymbol(ISymbol containingSymbol, SymbolKind kind, string name, int occurrence) - { - var symbols = s_symbolListPool.Allocate(); - try - { - int n = 0; - - GetInteriorSymbols(containingSymbol, symbols); - - foreach (var sym in symbols) - { - if (sym.Kind == kind && sym.Name == name) - { - if (occurrence == n) - { - return sym; - } - else - { - n++; - } - } - } - - return null; - } - finally - { - s_symbolListPool.ClearAndFree(symbols); - } - } - - private static void GetInteriorSymbols(ISymbol containingSymbol, List symbols) - { - var compilation = (containingSymbol.ContainingAssembly as ISourceAssemblySymbol)?.Compilation; - if (compilation != null) - { - foreach (var declaringLocation in containingSymbol.DeclaringSyntaxReferences) - { - // This operation can potentially fail. If containingSymbol came from - // a SpeculativeSemanticModel, containingSymbol.ContainingAssembly.Compilation - // may not have been rebuilt to reflect the trees used by the - // SpeculativeSemanticModel to produce containingSymbol. In that case, - // asking the ContainingAssembly's complation for a SemanticModel based - // on trees for containingSymbol with throw an ArgumentException. - // Unfortunately, the best way to avoid this (currently) is to see if - // we're asking for a model for a tree that's part of the compilation. - // (There's no way to get back to a SemanticModel from a symbol). - - // TODO (rchande): It might be better to call compilation.GetSemanticModel - // and catch the ArgumentException. The compilation internally has a - // Dictionary that it uses to check if the SyntaxTree - // is applicable wheras the public interface requires us to enumerate - // the entire IEnumerable of trees in the Compilation. - if (!compilation.SyntaxTrees.Contains(declaringLocation.SyntaxTree)) - { - continue; - } - - var node = declaringLocation.GetSyntax(); - if (node.Language == LanguageNames.VisualBasic) - { - node = node.Parent; - } - - var semanticModel = compilation.GetSemanticModel(node.SyntaxTree); - GetDeclaredSymbols(semanticModel, node, symbols); - } - } - } - - private static ISymbol GetMatchingDeclaredSymbol(SemanticModel model, SyntaxNode root, SymbolKind kind, string name, int occurrence) - { - var symbols = s_symbolListPool.Allocate(); - try - { - int n = 0; - - GetDeclaredSymbols(model, root, symbols); - - foreach (var sym in symbols) - { - if (sym.Kind == kind && sym.Name == name) - { - if (occurrence == n) - { - return sym; - } - else - { - n++; - } - } - } - - return null; - } - finally - { - s_symbolListPool.ClearAndFree(symbols); - } - } - - private static void GetDeclaredSymbols(SemanticModel model, SyntaxNode root, List symbols) - { - // use shotgun approach to identify all declared symbols.. - // TODO: make an API on semantic model that does this efficiently - foreach (var node in root.DescendantNodes()) - { - var symbol = model.GetDeclaredSymbol(node); - if (symbol != null) - { - symbols.Add(symbol); - } - } - } - - private struct Parser - { - private readonly string _id; - private readonly Compilation _compilation; - private ISymbol _typeParameterContext; - private int _index; - - private Parser(string id, int index, Compilation compilation, ISymbol typeParameterContext) - { - _id = id; - _compilation = compilation; - _typeParameterContext = typeParameterContext; - _index = index; - } - - public static bool Parse(string id, Compilation compilation, List results) - { - if (id == null) - { - return false; - } - - results.Clear(); - new Parser(id, 0, compilation, null).ParseSymbolId(results); - - return results.Count > 0; - } - - private void ParseSymbolId(List results) - { - if (PeekNextChar() == '*') - { - _index++; - results.Add(_compilation.DynamicType); - } - else if (PeekNextChar() == '`' && _typeParameterContext != null) - { - ParseTypeParameterSymbol(results); - } - else if (IsNamePrefix()) - { - if (PeekNextChar() == AliasPrefix) - { - _index += 2; - - var name = ParseName(); - var filePath = ParseStringLiteral(); - GetMatchingAliases(name, filePath, results); - return; - } - else - { - ParseNamedSymbol(results); - } - } - - // follow on array and pointer construction - if (PeekNextChar() == '[' || PeekNextChar() == '*') - { - ParseArrayAndPointerTypes(results); - } - } - - private void ParseNamedSymbol(List results) - { - var containers = s_symbolListPool.Allocate(); - try - { - containers.Add(_compilation.GlobalNamespace); - - char prefix; - string name; - - // process dotted names - while (true) - { - ParsePrefixedName(out prefix, out name); - - switch (prefix) - { - case MethodPrefix: - GetMatchingMethods(containers, name, results); - break; - case NamedTypePrefix: - GetMatchingTypes(containers, name, results); - break; - case PropertyPrefix: - GetMatchingProperties(containers, name, results); - break; - case EventPrefix: - GetMatchingEvents(containers, name, results); - break; - case FieldPrefix: - GetMatchingFields(containers, name, results); - break; - case NamespacePrefix: - GetMatchingNamespaces(containers, name, results); - break; - case ErrorTypePrefix: - GetErrorTypes(containers, name, results); - break; - case ParameterPrefix: - GetMatchingParameterSymbols(containers, name, results); - break; - case LocalPrefix: - GetMatchingInteriorSymbols(containers, SymbolKind.Local, name, results); - break; - case LabelPrefix: - GetMatchingInteriorSymbols(containers, SymbolKind.Label, name, results); - break; - case RangeVariablePrefix: - GetMatchingInteriorSymbols(containers, SymbolKind.RangeVariable, name, results); - break; - default: - throw new InvalidOperationException("Missing or unknown name prefix."); - } - - if (PeekNextChar() != '.') - { - break; - } - - _index++; - - // results become the new containers - containers.Clear(); - containers.AddRange(results); - results.Clear(); - } - - // a type parameter evaluated in an explicit context? - var nextChar = PeekNextChar(); - if (nextChar == ':') - { - _index++; - - var originalContext = _typeParameterContext; - _typeParameterContext = results.FirstOrDefault(); - - results.Clear(); - ParseTypeParameterSymbol(results); - _typeParameterContext = originalContext; - } - } - finally - { - s_symbolListPool.ClearAndFree(containers); - } - } - - private bool IsNamePrefix() - { - return IsNamePrefix(PeekNextChar()) && PeekNextChar(1) == ':'; - } - - private char? ParseNamePrefix() - { - if (PeekNextChar(1) == ':') - { - var prefix = PeekNextChar(); - if (IsNamePrefix(prefix)) - { - _index += 2; - return prefix; - } - } - - return null; - } - - private static bool IsNamePrefix(char ch) - { - switch (ch) - { - case AliasPrefix: - case EventPrefix: - case FieldPrefix: - case MethodPrefix: - case NamespacePrefix: - case PropertyPrefix: - case NamedTypePrefix: - case ErrorTypePrefix: - case LocalPrefix: - case LabelPrefix: - case RangeVariablePrefix: - case ParameterPrefix: - return true; - default: - return false; - } - - } - - private bool ParsePrefixedName(out char prefix, out string name) - { - var maybePrefix = ParseNamePrefix(); - if (maybePrefix != null) - { - prefix = maybePrefix.Value; - name = ParseName(); - return true; - } - else - { - prefix = default(char); - name = null; - return false; - } - } - - private ITypeSymbol ParseTypeSymbol() - { - var results = s_symbolListPool.Allocate(); - try - { - ParseSymbolId(results); - if (results.Count == 0) - { - return null; - } - else - { - return results[0] as ITypeSymbol; - } - } - finally - { - s_symbolListPool.ClearAndFree(results); - } - } - - private void ParseArrayAndPointerTypes(List symbols) - { - while (true) - { - var nextChar = PeekNextChar(); - if (nextChar == '[') - { - var bounds = ParseArrayBounds(); - ConstructArray(symbols, bounds); - } - else if (nextChar == '*') - { - _index++; - ConstructPointer(symbols); - } - else - { - break; - } - } - } - - private void ConstructArray(List symbols, int bounds) - { - for (int i = 0; i < symbols.Count;) - { - var typeSymbol = symbols[i] as ITypeSymbol; - if (typeSymbol != null) - { - symbols[i] = _compilation.CreateArrayTypeSymbol(typeSymbol, bounds); - i++; - } - else - { - symbols.RemoveAt(i); - } - } - } - - private void ConstructPointer(List symbols) - { - for (int i = 0; i < symbols.Count;) - { - var typeSymbol = symbols[i] as ITypeSymbol; - if (typeSymbol != null) - { - symbols[i] = _compilation.CreatePointerTypeSymbol(typeSymbol); - i++; - } - else - { - symbols.RemoveAt(i); - } - } - } - - private int ParseArrayBounds() - { - _index++; // skip '[' - - int bounds = 0; - - while (true) - { - if (char.IsDigit(PeekNextChar())) - { - ParseIntegerLiteral(); - } - - if (PeekNextChar() == ':') - { - _index++; - - if (char.IsDigit(PeekNextChar())) - { - ParseIntegerLiteral(); - } - } - - bounds++; - - if (PeekNextChar() == ',') - { - _index++; - continue; - } - - break; - } - - if (PeekNextChar() == ']') - { - _index++; - } - - return bounds; - } - - private ITypeSymbol[] ParseTypeArguments() - { - var list = s_symbolListPool.Allocate(); - try - { - ParseTypeArguments(list); - return list.OfType().ToArray(); - } - finally - { - s_symbolListPool.ClearAndFree(list); - } - } - - private void ParseTypeArguments(List typeArguments) - { - if (PeekNextChar() == '{') - { - _index++; - - while (true) - { - var type = ParseTypeSymbol(); - - if (type == null) - { - // if a type argument cannot be identified, argument list is no good - return; - } - - typeArguments.Add(type); - - if (PeekNextChar() == ',') - { - _index++; - continue; - } - - break; - } - - if (PeekNextChar() == '}') - { - _index++; - } - } - } - - private void ParseTypeParameterSymbol(List results) - { - // skip the first ` - System.Diagnostics.Debug.Assert(PeekNextChar() == '`'); - _index++; - - if (PeekNextChar() == '`') - { - // `` means this is a method type parameter - _index++; - var methodTypeParameterIndex = ParseIntegerLiteral(); - - var methodContext = _typeParameterContext as IMethodSymbol; - if (methodContext != null) - { - var count = methodContext.TypeParameters.Length; - if (count > 0 && methodTypeParameterIndex < count) - { - results.Add(methodContext.TypeParameters[methodTypeParameterIndex]); - } - } - } - else - { - // regular type parameter - var typeParameterIndex = ParseIntegerLiteral(); - - var methodContext = _typeParameterContext as IMethodSymbol; - var typeContext = methodContext != null ? methodContext.ContainingType : _typeParameterContext as INamedTypeSymbol; - - if (typeContext != null) - { - results.Add(GetNthTypeParameter(typeContext, typeParameterIndex)); - } - } - } - - private void GetErrorTypes(IReadOnlyList containers, string memberName, List results) - { - ITypeSymbol[] typeArguments = null; - if (PeekNextChar() == '{') - { - typeArguments = ParseTypeArguments(); - } - - for (int i = 0, n = containers.Count; i < n; i++) - { - var container = containers[i] as INamespaceOrTypeSymbol; - if (container != null) - { - results.Add(GetErrorType(container, memberName, typeArguments)); - } - } - } - - private ITypeSymbol GetErrorType(INamespaceOrTypeSymbol container, string name, ITypeSymbol[] typeArguments) - { - var errorType = _compilation.CreateErrorTypeSymbol(container, name, typeArguments != null ? typeArguments.Length : 0); - if (typeArguments != null) - { - errorType = errorType.Construct(typeArguments); - } - - return errorType; - } - - private void GetMatchingTypes(IReadOnlyList containers, string name, List results) - { - for (int i = 0, n = containers.Count; i < n; i++) - { - var container = containers[i] as INamespaceOrTypeSymbol; - if (container != null) - { - GetMatchingTypes(container, name, results); - } - } - } - - private void GetMatchingTypes(INamespaceOrTypeSymbol container, string name, List results) - { - var typeArguments = s_symbolListPool.Allocate(); - try - { - var startIndex = _index; - var endIndex = _index; - - var members = container.GetMembers(name); - - foreach (var symbol in members) - { - if (symbol.Kind == SymbolKind.NamedType) - { - var namedType = (INamedTypeSymbol)symbol; - _index = startIndex; - - // has type arguments? - if (PeekNextChar() == '{') - { - //_typeParameterContext = namedType; - - typeArguments.Clear(); - ParseTypeArguments(typeArguments); - - if (namedType.Arity != typeArguments.Count) - { - // if no type arguments are found then the type cannot be identified - continue; - } - - namedType = namedType.Construct(typeArguments.Cast().ToArray()); - } - // has type parameters? - else if (PeekNextChar() == '`') - { - _index++; - var arity = ParseIntegerLiteral(); - if (arity != namedType.Arity) - { - continue; - } - } - else if (namedType.Arity > 0) - { - continue; - } - - endIndex = _index; - results.Add(namedType); - } - } - - _index = endIndex; - } - finally - { - s_symbolListPool.ClearAndFree(typeArguments); - } - } - - private void GetMatchingNamespaces(IReadOnlyList containers, string name, List results) - { - for (int i = 0, n = containers.Count; i < n; i++) - { - GetMatchingNamespaces(containers[i] as INamespaceOrTypeSymbol, name, results); - } - } - - private void GetMatchingNamespaces(INamespaceOrTypeSymbol container, string name, List results) - { - if (container != null) - { - var members = container.GetMembers(name); - - foreach (var symbol in members) - { - if (symbol.Kind == SymbolKind.Namespace) - { - results.Add(symbol); - } - } - } - } - - private void GetMatchingMethods(IReadOnlyList containers, string name, List results) - { - var originalContext = _typeParameterContext; - var typeArguments = s_symbolListPool.Allocate(); - var parameters = s_parameterListPool.Allocate(); - try - { - var startIndex = _index; - var endIndex = _index; - - for (int i = 0, n = containers.Count; i < n; i++) - { - var container = containers[i] as INamespaceOrTypeSymbol; - if (container != null) - { - var members = container.GetMembers(name); - - foreach (var symbol in members) - { - - _index = startIndex; - - var methodSymbol = symbol as IMethodSymbol; - if (methodSymbol != null) - { - // has type arguments? - if (PeekNextChar() == '{') - { - _typeParameterContext = methodSymbol; - - typeArguments.Clear(); - ParseTypeArguments(typeArguments); - - if (methodSymbol.Arity != typeArguments.Count) - { - // if no type arguments are found then the type cannot be identified - continue; - } - - methodSymbol = methodSymbol.Construct(typeArguments.Cast().ToArray()); - } - // has type parameters? - else if (PeekNextChar() == '`') - { - _index++; - var arity = ParseIntegerLiteral(); - if (arity != methodSymbol.Arity) - { - continue; - } - } - - if (PeekNextChar() == '(') - { - parameters?.Clear(); - _typeParameterContext = methodSymbol; - - if (!ParseParameterList(parameters) || !AllParametersMatch(methodSymbol.Parameters, parameters)) - { - // if the parameters cannot be identified (some error), or parameter types don't match - continue; - } - } - else if (methodSymbol.Parameters.Length != 0) - { - continue; - } - - // extension method target type - if (PeekNextChar() == '!') - { - _index++; - - var targetType = ParseTypeSymbol(); - if (targetType == null || !methodSymbol.IsStatic || methodSymbol.Parameters.Length == 0) - { - continue; - } - - methodSymbol = methodSymbol.ReduceExtensionMethod(targetType); - } - - endIndex = _index; - results.Add(methodSymbol); - } - } - } - } - - _index = endIndex; - } - finally - { - s_parameterListPool.ClearAndFree(parameters); - s_symbolListPool.ClearAndFree(typeArguments); - _typeParameterContext = originalContext; - } - } - - private void GetMatchingProperties(IReadOnlyList containers, string name, List results) - { - int startIndex = _index; - int endIndex = _index; - - var originalContext = _typeParameterContext; - List parameters = null; - try - { - for (int i = 0, n = containers.Count; i < n; i++) - { - name = DecodePropertyName(name, _compilation.Language); - - var container = containers[i] as INamespaceOrTypeSymbol; - if (container != null) - { - _typeParameterContext = container; - var members = container.GetMembers(name); - - foreach (var symbol in members) - { - _index = startIndex; - - var propertySymbol = symbol as IPropertySymbol; - if (propertySymbol != null) - { - if (PeekNextChar() == '(') - { - if (parameters == null) - { - parameters = s_parameterListPool.Allocate(); - } - else - { - parameters.Clear(); - } - - if (ParseParameterList(parameters) - && AllParametersMatch(propertySymbol.Parameters, parameters)) - { - results.Add(propertySymbol); - endIndex = _index; - } - } - else if (propertySymbol.Parameters.Length == 0) - { - results.Add(propertySymbol); - endIndex = _index; - } - } - } - } - } - - _index = endIndex; - } - finally - { - if (parameters != null) - { - s_parameterListPool.ClearAndFree(parameters); - } - - _typeParameterContext = originalContext; - } - } - - private void GetMatchingFields(IReadOnlyList containers, string name, List results) - { - for (int i = 0, n = containers.Count; i < n; i++) - { - var container = containers[i] as INamespaceOrTypeSymbol; - if (container != null) - { - var members = container.GetMembers(name); - - foreach (var symbol in members) - { - if (symbol.Kind == SymbolKind.Field) - { - results.Add(symbol); - } - } - } - } - } - - private void GetMatchingEvents(IReadOnlyList containers, string name, List results) - { - for (int i = 0, n = containers.Count; i < n; i++) - { - var container = containers[i] as INamespaceOrTypeSymbol; - if (container != null) - { - var members = container.GetMembers(name); - - foreach (var symbol in members) - { - if (symbol.Kind == SymbolKind.Event) - { - results.Add(symbol); - } - } - } - } - } - - private bool AllParametersMatch(ImmutableArray symbolParameters, List expectedParameters) - { - if (symbolParameters.Length != expectedParameters.Count) - { - return false; - } - - for (int i = 0; i < expectedParameters.Count; i++) - { - if (!ParameterMatches(symbolParameters[i], expectedParameters[i])) - { - return false; - } - } - - return true; - } - - private bool ParameterMatches(IParameterSymbol symbol, ParameterInfo parameterInfo) - { - // same ref'ness? - if ((symbol.RefKind == RefKind.None) == parameterInfo.IsRefOrOut) - { - return false; - } - - var parameterType = parameterInfo.Type; - - return parameterType != null && symbol.Type.Equals(parameterType); - } - - private ITypeParameterSymbol GetNthTypeParameter(INamedTypeSymbol typeSymbol, int n) - { - var containingTypeParameterCount = GetTypeParameterCount(typeSymbol.ContainingType); - if (n < containingTypeParameterCount) - { - return GetNthTypeParameter(typeSymbol.ContainingType, n); - } - - var index = n - containingTypeParameterCount; - return typeSymbol.TypeParameters[index]; - } - - private int GetTypeParameterCount(INamedTypeSymbol typeSymbol) - { - if (typeSymbol == null) - { - return 0; - } - - return typeSymbol.TypeParameters.Length + GetTypeParameterCount(typeSymbol.ContainingType); - } - - [StructLayout(LayoutKind.Auto)] - private struct ParameterInfo - { - internal readonly ITypeSymbol Type; - internal readonly bool IsRefOrOut; - - public ParameterInfo(ITypeSymbol type, bool isRefOrOut) - { - this.Type = type; - this.IsRefOrOut = isRefOrOut; - } - } - - private static readonly ListPool s_parameterListPool = new ListPool(); - - private bool ParseParameterList(List parameters) - { - System.Diagnostics.Debug.Assert(_typeParameterContext != null); - - _index++; // skip over '(' - - if (PeekNextChar() == ')') - { - _index++; - return true; - } - - var parameter = ParseParameter(); - if (parameter == null) - { - return false; - } - - parameters.Add(parameter.Value); - - while (PeekNextChar() == ',') - { - _index++; - - parameter = ParseParameter(); - if (parameter == null) - { - return false; - } - - parameters.Add(parameter.Value); - } - - if (PeekNextChar() == ')') - { - _index++; - } - - return true; - } - - private ParameterInfo? ParseParameter() - { - bool isRefOrOut = false; - - var type = ParseTypeSymbol(); - - if (type == null) - { - // if no type can be identified, then there is no parameter - return null; - } - - if (PeekNextChar() == '@') - { - _index++; - isRefOrOut = true; - } - - return new ParameterInfo(type, isRefOrOut); - } - - private void GetParameterReferences(List symbols) - { - if (PeekNextChar() == '#') - { - _index++; - var ordinal = ParseIntegerLiteral(); - - for (int i = 0; i < symbols.Count;) - { - var method = symbols[i] as IMethodSymbol; - if (method != null && ordinal < method.Parameters.Length) - { - symbols[i] = method.Parameters[ordinal]; - i++; - continue; - } - - var property = symbols[i] as IPropertySymbol; - if (property != null && ordinal < property.Parameters.Length) - { - symbols[i] = property.Parameters[ordinal]; - i++; - continue; - } - - // not a symbol with parameters? - symbols.RemoveAt(i); - } - } - } - - private void GetMatchingParameterSymbols(IReadOnlyList containers, string name, List symbols) - { - for (int i = 0; i < containers.Count; i++) - { - var method = containers[i] as IMethodSymbol; - if (method != null) - { - var parameter = method.Parameters.FirstOrDefault(p => p.Name == name); - if (parameter != null) - { - symbols.Add(parameter); - } - } - - var property = containers[i] as IPropertySymbol; - if (property != null) - { - var parameter = property.Parameters.FirstOrDefault(p => p.Name == name); - if (parameter != null) - { - symbols.Add(parameter); - } - } - } - } - - private void GetMatchingInteriorSymbols(IReadOnlyList containers, SymbolKind kind, string name, List symbols) - { - int occurrence = 0; - if (PeekNextChar() == '`') - { - _index++; - occurrence = ParseIntegerLiteral(); - } - - for (int i = 0; i < containers.Count; i++) - { - var symbol = GetMatchingInteriorSymbol(containers[i], kind, name, occurrence); - if (symbol != null) - { - symbols.Add(symbol); - } - } - } - - private void GetMatchingAliases(string aliasName, string filePath, List results) - { - var tree = _compilation.SyntaxTrees.FirstOrDefault(t => t.FilePath == filePath); - if (tree != null) - { - var model = _compilation.GetSemanticModel(tree); - var symbol = GetMatchingDeclaredSymbol(model, tree.GetRoot(), SymbolKind.Alias, aliasName, 0); - if (symbol != null) - { - results.Add(symbol); - } - } - } - - private char PeekNextChar(int offset = 0) - { - return _index + offset >= _id.Length ? '\0' : _id[_index + offset]; - } - - private static readonly char[] s_nameDelimiters = { ':', '.', '(', ')', '{', '}', '[', ']', ',', '\'', '@', '*', '`', '~', '!' }; - - private string ParseName() - { - string name; - - int delimiterOffset = _id.IndexOfAny(s_nameDelimiters, _index); - if (delimiterOffset >= 0) - { - name = _id.Substring(_index, delimiterOffset - _index); - _index = delimiterOffset; - } - else - { - name = _id.Substring(_index); - _index = _id.Length; - } - - return DecodeName(name); - } - - // undoes dot encodings within names... - private static string DecodeName(string name) - { - if (name.IndexOf('#') >= 0) - { - return name.Replace('#', '.'); - } - - return name; - } - - private string ParseStringLiteral() - { - if (PeekNextChar() == '\'') - { - _index++; - - var start = _index; - char ch; - while ((ch = PeekNextChar()) != '\'' && ch != '\0') - { - _index++; - } - - var end = _index; - - if (PeekNextChar() == '\'') - { - _index++; - } - - return _id.Substring(start, end - start); - } - - return ""; - } - - private int ParseIntegerLiteral() - { - int n = 0; - - while (_index < _id.Length && char.IsDigit(_id[_index])) - { - n = n * 10 + (_id[_index] - '0'); - _index++; - } - - return n; - } - - private static void CopyTo(List source, List destination) - where TSource : class - where TDestination : class - { - if (destination.Count + source.Count > destination.Capacity) - { - destination.Capacity = destination.Count + source.Count; - } - - for (int i = 0, n = source.Count; i < n; i++) - { - destination.Add((TDestination)(object)source[i]); - } - } - } - } -} diff --git a/src/Workspaces/Core/Portable/SymbolId/SymbolKey.AbstractSymbolKey.cs b/src/Workspaces/Core/Portable/SymbolId/SymbolKey.AbstractSymbolKey.cs index 7ed8489f54488..a58193cb1110c 100644 --- a/src/Workspaces/Core/Portable/SymbolId/SymbolKey.AbstractSymbolKey.cs +++ b/src/Workspaces/Core/Portable/SymbolId/SymbolKey.AbstractSymbolKey.cs @@ -53,4 +53,4 @@ protected static IEnumerable InstantiateTypes( } } } -} +} \ No newline at end of file diff --git a/src/Workspaces/Core/Portable/SymbolId/SymbolKey.AliasSymbolKey.cs b/src/Workspaces/Core/Portable/SymbolId/SymbolKey.AliasSymbolKey.cs new file mode 100644 index 0000000000000..fe3eb3b6fb12e --- /dev/null +++ b/src/Workspaces/Core/Portable/SymbolId/SymbolKey.AliasSymbolKey.cs @@ -0,0 +1,112 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using System.Threading; +using System.Threading.Tasks; +using Microsoft.CodeAnalysis.Shared.Utilities; +using Newtonsoft.Json; +using Roslyn.Utilities; + +namespace Microsoft.CodeAnalysis +{ + internal abstract partial class SymbolKey + { + [JsonObject] + private class AliasSymbolKey : AbstractSymbolKey + { + [JsonProperty] private readonly string _name; + [JsonProperty] private readonly SymbolKey _target; + [JsonProperty] private readonly string _filePath; + + [JsonConstructor] + internal AliasSymbolKey(string _name, SymbolKey _target, string _filePath) + { + this._name = _name; + this._target = _target; + this._filePath = _filePath; + } + + public AliasSymbolKey(IAliasSymbol aliasSymbol, Visitor visitor) + { + _name = aliasSymbol.Name; + _target = GetOrCreate(aliasSymbol.Target, visitor); + _filePath = aliasSymbol.DeclaringSyntaxReferences.FirstOrDefault().SyntaxTree.FilePath; + } + + public override SymbolKeyResolution Resolve( + Compilation compilation, bool ignoreAssemblyKey = false, CancellationToken cancellationToken = default(CancellationToken)) + { + + var syntaxTree = compilation.SyntaxTrees.FirstOrDefault(t => t.FilePath == _filePath); + if (syntaxTree != null) + { + var target = _target.Resolve(compilation, ignoreAssemblyKey, cancellationToken).GetAnySymbol(); + if (target != null) + { + var semanticModel = compilation.GetSemanticModel(syntaxTree); + var result = Resolve(semanticModel, syntaxTree.GetRoot(cancellationToken), target, cancellationToken); + if (result.HasValue) + { + return result.Value; + } + } + } + + return default(SymbolKeyResolution); + } + + private SymbolKeyResolution? Resolve( + SemanticModel semanticModel, SyntaxNode syntaxNode, ISymbol target, + CancellationToken cancellationToken) + { + var symbol = semanticModel.GetDeclaredSymbol(syntaxNode, cancellationToken); + if (symbol != null) + { + if (symbol.Kind == SymbolKind.Alias) + { + var aliasSymbol = (IAliasSymbol)symbol; + if (aliasSymbol.Name == _name && + SymbolEquivalenceComparer.Instance.Equals(aliasSymbol.Target, target)) + { + return new SymbolKeyResolution(aliasSymbol); + } + } + else if (symbol.Kind != SymbolKind.Namespace) + { + // Don't recurse into anything except namespaces. We can't find aliases + // any deeper than that. + return null; + } + } + + foreach (var child in syntaxNode.ChildNodesAndTokens()) + { + if (child.IsNode) + { + var result = Resolve(semanticModel, child.AsNode(), target, cancellationToken); + if (result.HasValue) + { + return result; + } + } + } + + return null; + } + + internal override bool Equals(AliasSymbolKey other, ComparisonOptions options) + { + return _name == other._name && + _target.Equals(other._target, options); + } + + internal override int GetHashCode(ComparisonOptions options) + { + return Hash.Combine( + _target.GetHashCode(options), + _name.GetHashCode()); + } + } + } +} diff --git a/src/Workspaces/Core/Portable/SymbolId/SymbolKey.ArrayTypeSymbolKey.cs b/src/Workspaces/Core/Portable/SymbolId/SymbolKey.ArrayTypeSymbolKey.cs index c2fd342af5477..27cd8624773a6 100644 --- a/src/Workspaces/Core/Portable/SymbolId/SymbolKey.ArrayTypeSymbolKey.cs +++ b/src/Workspaces/Core/Portable/SymbolId/SymbolKey.ArrayTypeSymbolKey.cs @@ -4,16 +4,25 @@ using System.Linq; using System.Threading; using Microsoft.CodeAnalysis.Text; +using Newtonsoft.Json; using Roslyn.Utilities; namespace Microsoft.CodeAnalysis { internal abstract partial class SymbolKey { + [JsonObject(MemberSerialization = MemberSerialization.OptIn)] private class ArrayTypeSymbolKey : AbstractSymbolKey { - private readonly SymbolKey _elementKey; - private readonly int _rank; + [JsonProperty] private readonly SymbolKey _elementKey; + [JsonProperty] private readonly int _rank; + + [JsonConstructor] + internal ArrayTypeSymbolKey(SymbolKey _elementKey, int _rank) + { + this._elementKey = _elementKey; + this._rank = _rank; + } internal ArrayTypeSymbolKey(IArrayTypeSymbol symbol, Visitor visitor) { @@ -42,4 +51,4 @@ internal override int GetHashCode(ComparisonOptions options) } } } -} +} \ No newline at end of file diff --git a/src/Workspaces/Core/Portable/SymbolId/SymbolKey.AssemblySymbolKey.cs b/src/Workspaces/Core/Portable/SymbolId/SymbolKey.AssemblySymbolKey.cs index af19ae9cd31ee..98b521c7af64b 100644 --- a/src/Workspaces/Core/Portable/SymbolId/SymbolKey.AssemblySymbolKey.cs +++ b/src/Workspaces/Core/Portable/SymbolId/SymbolKey.AssemblySymbolKey.cs @@ -4,14 +4,22 @@ using System.Collections.Generic; using System.Threading; using Microsoft.CodeAnalysis.Shared.Extensions; +using Newtonsoft.Json; namespace Microsoft.CodeAnalysis { internal abstract partial class SymbolKey { + [JsonObject(MemberSerialization = MemberSerialization.OptIn)] private class AssemblySymbolKey : AbstractSymbolKey { - private readonly string _assemblyName; + [JsonProperty] private readonly string _assemblyName; + + [JsonConstructor] + internal AssemblySymbolKey(string _assemblyName) + { + this._assemblyName = _assemblyName; + } internal AssemblySymbolKey(IAssemblySymbol symbol) { @@ -55,4 +63,4 @@ internal override int GetHashCode(ComparisonOptions options) } } } -} +} \ No newline at end of file diff --git a/src/Workspaces/Core/Portable/SymbolId/SymbolKey.BodyLevelSymbolKey.cs b/src/Workspaces/Core/Portable/SymbolId/SymbolKey.BodyLevelSymbolKey.cs index 783d0a35d4e1a..b41c86d0d55bf 100644 --- a/src/Workspaces/Core/Portable/SymbolId/SymbolKey.BodyLevelSymbolKey.cs +++ b/src/Workspaces/Core/Portable/SymbolId/SymbolKey.BodyLevelSymbolKey.cs @@ -6,20 +6,34 @@ using System.Text; using System.Threading; using System.Threading.Tasks; +using Newtonsoft.Json; using Roslyn.Utilities; namespace Microsoft.CodeAnalysis { - internal abstract partial class SymbolKey + internal partial class SymbolKey { - private class NonDeclarationSymbolKey : AbstractSymbolKey> where TSymbol : class, ISymbol + [JsonObject(MemberSerialization = MemberSerialization.OptIn)] + private class NonDeclarationSymbolKey : AbstractSymbolKey { - private readonly SymbolKey _containingKey; - private readonly string _localName; - private readonly int _ordinal; + [JsonProperty] private readonly SymbolKey _containingKey; + [JsonProperty] private readonly string _localName; + [JsonProperty] private readonly int _ordinal; + [JsonProperty] private readonly SymbolKind _kind; + + [JsonConstructor] + internal NonDeclarationSymbolKey( + SymbolKey _containingKey, string _localName, int _ordinal, SymbolKind _kind) + { + this._containingKey = _containingKey; + this._localName = _localName; + this._ordinal = _ordinal; + this._kind = _kind; + } - internal NonDeclarationSymbolKey(TSymbol symbol, Visitor visitor) + internal NonDeclarationSymbolKey(ISymbol symbol, Visitor visitor) { + _kind = symbol.Kind; var containingSymbol = symbol.ContainingSymbol; while (!containingSymbol.DeclaringSyntaxReferences.Any()) @@ -32,8 +46,8 @@ internal NonDeclarationSymbolKey(TSymbol symbol, Visitor visitor) Contract.ThrowIfNull( visitor.Compilation, - message: $"visitor cannot be created with a null compilation and visit a {nameof(NonDeclarationSymbolKey)}."); - foreach (var possibleSymbol in EnumerateSymbols(visitor.Compilation, containingSymbol, _localName, visitor.CancellationToken)) + message: $"visitor cannot be created with a null compilation and visit a {nameof(NonDeclarationSymbolKey)}."); + foreach (var possibleSymbol in EnumerateSymbols(visitor.Compilation, containingSymbol, visitor.CancellationToken)) { if (possibleSymbol.Item1.Equals(symbol)) { @@ -52,7 +66,7 @@ internal NonDeclarationSymbolKey(TSymbol symbol, Visitor visitor) return new SymbolKeyResolution(); } - foreach (var symbol in EnumerateSymbols(compilation, containingSymbol, _localName, cancellationToken)) + foreach (var symbol in EnumerateSymbols(compilation, containingSymbol, cancellationToken)) { if (symbol.Item2 == _ordinal) { @@ -63,7 +77,9 @@ internal NonDeclarationSymbolKey(TSymbol symbol, Visitor visitor) return new SymbolKeyResolution(); } - private static IEnumerable> EnumerateSymbols(Compilation compilation, ISymbol containingSymbol, string name, CancellationToken cancellationToken) + private IEnumerable> EnumerateSymbols( + Compilation compilation, ISymbol containingSymbol, + CancellationToken cancellationToken) { int ordinal = 0; @@ -99,9 +115,11 @@ private static IEnumerable> EnumerateSymbols(Compilatio foreach (var token in node.DescendantNodes()) { - var symbol = semanticModel.GetDeclaredSymbol(token, cancellationToken) as TSymbol; + var symbol = semanticModel.GetDeclaredSymbol(token, cancellationToken); - if (symbol != null && Equals(compilation.IsCaseSensitive, symbol.Name, name)) + if (symbol != null && + symbol.Kind == _kind && + Equals(compilation.IsCaseSensitive, symbol.Name, _localName)) { yield return ValueTuple.Create(symbol, ordinal++); } @@ -109,7 +127,7 @@ private static IEnumerable> EnumerateSymbols(Compilatio } } - internal override bool Equals(NonDeclarationSymbolKey other, ComparisonOptions options) + internal override bool Equals(NonDeclarationSymbolKey other, ComparisonOptions options) { throw new NotImplementedException(); } @@ -120,4 +138,4 @@ internal override int GetHashCode(ComparisonOptions options) } } } -} +} \ No newline at end of file diff --git a/src/Workspaces/Core/Portable/SymbolId/SymbolKey.DynamicTypeSymbolKey.cs b/src/Workspaces/Core/Portable/SymbolId/SymbolKey.DynamicTypeSymbolKey.cs index ef3c74233f447..741b73bac73ad 100644 --- a/src/Workspaces/Core/Portable/SymbolId/SymbolKey.DynamicTypeSymbolKey.cs +++ b/src/Workspaces/Core/Portable/SymbolId/SymbolKey.DynamicTypeSymbolKey.cs @@ -4,16 +4,19 @@ using System.Runtime.CompilerServices; using System.Runtime.Serialization; using System.Threading; +using Newtonsoft.Json; namespace Microsoft.CodeAnalysis { internal abstract partial class SymbolKey { + [JsonObject(MemberSerialization = MemberSerialization.OptIn)] private class DynamicTypeSymbolKey : AbstractSymbolKey { internal static readonly DynamicTypeSymbolKey Instance = new DynamicTypeSymbolKey(); - private DynamicTypeSymbolKey() + [JsonConstructor] + internal DynamicTypeSymbolKey() { } @@ -24,13 +27,13 @@ public override SymbolKeyResolution Resolve(Compilation compilation, bool ignore internal override bool Equals(DynamicTypeSymbolKey other, ComparisonOptions options) { - return ReferenceEquals(this, other); + return true; } internal override int GetHashCode(ComparisonOptions options) { - return RuntimeHelpers.GetHashCode(this); + return RuntimeHelpers.GetHashCode(Instance); } } } -} +} \ No newline at end of file diff --git a/src/Workspaces/Core/Portable/SymbolId/SymbolKey.ErrorTypeSymbolKey.cs b/src/Workspaces/Core/Portable/SymbolId/SymbolKey.ErrorTypeSymbolKey.cs index 2494c50df0863..7ffb36a7c96a0 100644 --- a/src/Workspaces/Core/Portable/SymbolId/SymbolKey.ErrorTypeSymbolKey.cs +++ b/src/Workspaces/Core/Portable/SymbolId/SymbolKey.ErrorTypeSymbolKey.cs @@ -5,18 +5,30 @@ using System.Linq; using System.Threading; using Microsoft.CodeAnalysis.Text; +using Newtonsoft.Json; using Roslyn.Utilities; namespace Microsoft.CodeAnalysis { internal abstract partial class SymbolKey { + [JsonObject(MemberSerialization = MemberSerialization.OptIn)] private class ErrorTypeSymbolKey : AbstractSymbolKey { - private readonly SymbolKey _containerKey; - private readonly string _name; - private readonly int _arity; - private readonly SymbolKey[] _typeArgumentKeysOpt; + [JsonProperty] private readonly SymbolKey _containerKey; + [JsonProperty] private readonly string _name; + [JsonProperty] private readonly int _arity; + [JsonProperty] private readonly SymbolKey[] _typeArgumentKeysOpt; + + [JsonConstructor] + internal ErrorTypeSymbolKey( + SymbolKey _containerKey, string _name, int _arity, SymbolKey[] _typeArgumentKeysOpt) + { + this._containerKey = _containerKey; + this._name = _name; + this._arity = _arity; + this._typeArgumentKeysOpt = _typeArgumentKeysOpt; + } internal ErrorTypeSymbolKey(INamedTypeSymbol symbol, Visitor visitor) { @@ -94,4 +106,4 @@ internal override int GetHashCode(ComparisonOptions options) } } } -} +} \ No newline at end of file diff --git a/src/Workspaces/Core/Portable/SymbolId/SymbolKey.EventSymbolKey.cs b/src/Workspaces/Core/Portable/SymbolId/SymbolKey.EventSymbolKey.cs index ece0bc490e52b..3b7015a24ad8e 100644 --- a/src/Workspaces/Core/Portable/SymbolId/SymbolKey.EventSymbolKey.cs +++ b/src/Workspaces/Core/Portable/SymbolId/SymbolKey.EventSymbolKey.cs @@ -4,16 +4,25 @@ using System.Linq; using System.Threading; using Microsoft.CodeAnalysis.Text; +using Newtonsoft.Json; using Roslyn.Utilities; namespace Microsoft.CodeAnalysis { internal abstract partial class SymbolKey { + [JsonObject(MemberSerialization = MemberSerialization.OptIn)] private class EventSymbolKey : AbstractSymbolKey { - private readonly SymbolKey _containerKey; - private readonly string _metadataName; + [JsonProperty] private readonly SymbolKey _containerKey; + [JsonProperty] private readonly string _metadataName; + + [JsonConstructor] + internal EventSymbolKey(SymbolKey _containerKey, string _metadataName) + { + this._containerKey = _containerKey; + this._metadataName = _metadataName; + } internal EventSymbolKey(IEventSymbol symbol, Visitor visitor) { @@ -43,4 +52,4 @@ internal override int GetHashCode(ComparisonOptions options) } } } -} +} \ No newline at end of file diff --git a/src/Workspaces/Core/Portable/SymbolId/SymbolKey.FieldSymbolKey.cs b/src/Workspaces/Core/Portable/SymbolId/SymbolKey.FieldSymbolKey.cs index c0a4beff9eb67..ddaa2ee247c1c 100644 --- a/src/Workspaces/Core/Portable/SymbolId/SymbolKey.FieldSymbolKey.cs +++ b/src/Workspaces/Core/Portable/SymbolId/SymbolKey.FieldSymbolKey.cs @@ -4,16 +4,25 @@ using System.Linq; using System.Threading; using Microsoft.CodeAnalysis.Text; +using Newtonsoft.Json; using Roslyn.Utilities; namespace Microsoft.CodeAnalysis { internal abstract partial class SymbolKey { + [JsonObject(MemberSerialization = MemberSerialization.OptIn)] private class FieldSymbolKey : AbstractSymbolKey { - private readonly SymbolKey _containerKey; - private readonly string _metadataName; + [JsonProperty] private readonly SymbolKey _containerKey; + [JsonProperty] private readonly string _metadataName; + + [JsonConstructor] + internal FieldSymbolKey(SymbolKey _containerKey, string _metadataName) + { + this._containerKey = _containerKey; + this._metadataName = _metadataName; + } internal FieldSymbolKey(IFieldSymbol symbol, Visitor visitor) { @@ -43,4 +52,4 @@ internal override int GetHashCode(ComparisonOptions options) } } } -} +} \ No newline at end of file diff --git a/src/Workspaces/Core/Portable/SymbolId/SymbolKey.MethodSymbolKey.cs b/src/Workspaces/Core/Portable/SymbolId/SymbolKey.MethodSymbolKey.cs index c70741804440f..2db076f9df1d0 100644 --- a/src/Workspaces/Core/Portable/SymbolId/SymbolKey.MethodSymbolKey.cs +++ b/src/Workspaces/Core/Portable/SymbolId/SymbolKey.MethodSymbolKey.cs @@ -2,49 +2,196 @@ using System; using System.Collections.Generic; +using System.Diagnostics; using System.Linq; using System.Threading; +using Newtonsoft.Json; using Roslyn.Utilities; namespace Microsoft.CodeAnalysis { internal abstract partial class SymbolKey { + [JsonObject(MemberSerialization = MemberSerialization.OptIn)] + private class ReducedExtensionMethodSymbolKey : AbstractSymbolKey + { + [JsonProperty] private readonly SymbolKey _reducedFrom; + [JsonProperty] private readonly SymbolKey _receiverType; + + [JsonConstructor] + internal ReducedExtensionMethodSymbolKey( + SymbolKey _reducedFrom, SymbolKey _receiverType) + { + this._reducedFrom = _reducedFrom; + this._receiverType = _receiverType; + } + + internal ReducedExtensionMethodSymbolKey(IMethodSymbol symbol, Visitor visitor) + { + Debug.Assert(symbol.Equals(symbol.ConstructedFrom)); + + _reducedFrom = GetOrCreate(symbol.ReducedFrom, visitor); + _receiverType = GetOrCreate(symbol.ReceiverType, visitor); + } + + internal override bool Equals(ReducedExtensionMethodSymbolKey other, ComparisonOptions options) + { + var comparer = SymbolKeyComparer.GetComparer(options.IgnoreCase, options.IgnoreAssemblyKey, compareMethodTypeParametersByName: true); + + return _reducedFrom.Equals(other._reducedFrom, options) && + _receiverType.Equals(other._receiverType, options); + } + + internal override int GetHashCode(ComparisonOptions options) + { + return Hash.Combine(_reducedFrom.GetHashCode(options), _receiverType.GetHashCode(options)); + } + + public override SymbolKeyResolution Resolve(Compilation compilation, bool ignoreAssemblyKey = false, CancellationToken cancellationToken = default(CancellationToken)) + { + var q = from m in _reducedFrom.Resolve(compilation, ignoreAssemblyKey, cancellationToken).GetAllSymbols().OfType() + from t in _receiverType.Resolve(compilation, ignoreAssemblyKey, cancellationToken).GetAllSymbols().OfType() + let r = m.ReduceExtensionMethod(t) + where r != null + select r; + + return CreateSymbolInfo(q.ToArray()); + } + } + } + + internal abstract partial class SymbolKey + { + [JsonObject(MemberSerialization = MemberSerialization.OptIn)] + private class ConstructedMethodSymbolKey : AbstractSymbolKey + { + [JsonProperty] private readonly SymbolKey _constructedFrom; + [JsonProperty] private readonly SymbolKey[] _typeArgumentKeys; + + [JsonConstructor] + internal ConstructedMethodSymbolKey( + SymbolKey _constructedFrom, SymbolKey[] _typeArgumentKeys) + { + this._constructedFrom = _constructedFrom; + this._typeArgumentKeys = _typeArgumentKeys; + } + + internal ConstructedMethodSymbolKey(IMethodSymbol symbol, Visitor visitor) + { + _constructedFrom = GetOrCreate(symbol.ConstructedFrom, visitor); + _typeArgumentKeys = symbol.TypeArguments.Select(t => GetOrCreate(t, visitor)).ToArray(); + } + + internal override bool Equals(ConstructedMethodSymbolKey other, ComparisonOptions options) + { + var comparer = SymbolKeyComparer.GetComparer(options.IgnoreCase, options.IgnoreAssemblyKey, compareMethodTypeParametersByName: true); + + return _constructedFrom.Equals(other._constructedFrom, options) && + SequenceEquals(this._typeArgumentKeys, other._typeArgumentKeys, comparer); + } + + internal override int GetHashCode(ComparisonOptions options) + { + return _constructedFrom.GetHashCode(options); + } + + public override SymbolKeyResolution Resolve(Compilation compilation, bool ignoreAssemblyKey = false, CancellationToken cancellationToken = default(CancellationToken)) + { + var typeArguments = _typeArgumentKeys.Select(a => a.Resolve(compilation, ignoreAssemblyKey, cancellationToken: cancellationToken).Symbol as ITypeSymbol).ToArray(); + if (typeArguments.Any(a => a == null)) + { + return default(SymbolKeyResolution); + } + + var constructedFroms = _constructedFrom.Resolve(compilation, ignoreAssemblyKey, cancellationToken); + var constructeds = constructedFroms.GetAllSymbols() + .OfType() + .Select(m => m.Construct(typeArguments)); + + return CreateSymbolInfo(constructeds.ToArray()); + } + } + } + + internal abstract partial class SymbolKey + { + [JsonObject(MemberSerialization = MemberSerialization.OptIn)] private class MethodSymbolKey : AbstractSymbolKey { - private readonly SymbolKey _containerKey; - private readonly string _metadataName; - private readonly int _arity; - private readonly SymbolKey[] _typeArgumentKeysOpt; - private readonly RefKind[] _refKinds; - private readonly SymbolKey[] _originalParameterTypeKeys; - private readonly bool _isPartialMethodImplementationPart; - private readonly SymbolKey _returnType; + [JsonProperty] private readonly SymbolKey _containerKey; + [JsonProperty] private readonly string _metadataName; + [JsonProperty] private readonly RefKind[] _refKinds; + [JsonProperty] private readonly SymbolKey[] _originalParameterTypeKeys; + [JsonProperty] private readonly bool _isPartialMethodImplementationPart; + [JsonProperty] private readonly SymbolKey _returnType; + + /// + /// There is a circularity between methods and their type parameters. As such + /// we may generate the type parameter when processing the method. Or we may + /// generate the method when processing the type parameter. Because we may + /// be create before our contianing method is available, we may start out with + /// a null containerKey. However, once our containing method finishes being + /// created it will set itself as our container. + /// + [JsonProperty] internal readonly MethodTypeParameterSymbolKey[] _typeParameterKeysOpt; + + [JsonConstructor] + internal MethodSymbolKey( + SymbolKey _containerKey, string _metadataName, + MethodTypeParameterSymbolKey[] _typeParameterKeysOpt, + RefKind[] _refKinds, + SymbolKey[] _originalParameterTypeKeys, + bool _isPartialMethodImplementationPart, + SymbolKey _returnType) + { + this._containerKey = _containerKey; + this._metadataName = _metadataName; + this._typeParameterKeysOpt = _typeParameterKeysOpt; + this._refKinds = _refKinds; + this._originalParameterTypeKeys = _originalParameterTypeKeys; + this._isPartialMethodImplementationPart = _isPartialMethodImplementationPart; + this._returnType = _returnType; + + // Let our type parameters know about us in case they were created before we were. + if (_typeParameterKeysOpt != null) + { + foreach (var typeParameter in _typeParameterKeysOpt) + { + if (typeParameter != null) + { + typeParameter._containerKey = this; + } + } + } + } internal MethodSymbolKey(IMethodSymbol symbol, Visitor visitor) { + Debug.Assert(symbol.Equals(symbol.ConstructedFrom)); + // First thing we do when creating the symbol ID for a method is create symbol IDs // for it's type parameters. However, we pass ourselves to that type parameter so // that it does not recurse back to us. + List typeParameters = null; foreach (var typeParameter in symbol.TypeParameters) { - var symbolId = new MethodTypeParameterSymbol(this, typeParameter); + var symbolId = new MethodTypeParameterSymbolKey(this, typeParameter); + + typeParameters = typeParameters ?? new List(); + typeParameters.Add(symbolId); + visitor.SymbolCache.Add(typeParameter, symbolId); } + _typeParameterKeysOpt = typeParameters?.ToArray(); + _isPartialMethodImplementationPart = symbol.PartialDefinitionPart != null; _containerKey = GetOrCreate(symbol.ContainingSymbol, visitor); _metadataName = symbol.MetadataName; - _arity = symbol.Arity; _refKinds = symbol.Parameters.Select(p => p.RefKind).ToArray(); _originalParameterTypeKeys = symbol.OriginalDefinition.Parameters.Select(p => GetOrCreate(p.Type, visitor)).ToArray(); - if (!symbol.Equals(symbol.ConstructedFrom)) - { - _typeArgumentKeysOpt = symbol.TypeArguments.Select(t => GetOrCreate(t, visitor)).ToArray(); - } - // If this is conversion operator, we must also compare the return type. Otherwise, we'll return // an ambiguous result in the case that there are multiple conversions from the same type to different // types. @@ -61,25 +208,21 @@ public override SymbolKeyResolution Resolve(Compilation compilation, bool ignore return CreateSymbolInfo(methods); } + private int Arity => _typeParameterKeysOpt?.Length ?? 0; + private IEnumerable Resolve(Compilation compilation, INamedTypeSymbol container, bool ignoreAssemblyKey, CancellationToken cancellationToken) { var comparisonOptions = new ComparisonOptions(compilation.IsCaseSensitive, ignoreAssemblyKey, compareMethodTypeParametersByName: true); - ITypeSymbol[] typeArguments = null; - if (_typeArgumentKeysOpt != null) + foreach (var method in container.GetMembers().OfType()) { - typeArguments = _typeArgumentKeysOpt.Select(a => a.Resolve(compilation, cancellationToken: cancellationToken).Symbol as ITypeSymbol).ToArray(); - - if (typeArguments.Any(a => a == null)) + // Quick checks first + if (method.MetadataName != _metadataName || method.Parameters.Length != _originalParameterTypeKeys.Length) { - yield break; + continue; } - } - foreach (var method in container.GetMembers().OfType()) - { - // Quick checks first - if (method.MetadataName != _metadataName || method.Arity != _arity || method.Parameters.Length != _originalParameterTypeKeys.Length) + if (method.Arity != this.Arity) { continue; } @@ -106,11 +249,6 @@ private IEnumerable Resolve(Compilation compilation, INamedTypeSy methodToReturn = methodToReturn.PartialImplementationPart ?? methodToReturn; } - if (typeArguments != null) - { - methodToReturn = methodToReturn.Construct(typeArguments); - } - yield return methodToReturn; } } @@ -119,21 +257,20 @@ internal override bool Equals(MethodSymbolKey other, ComparisonOptions options) { var comparer = SymbolKeyComparer.GetComparer(options.IgnoreCase, options.IgnoreAssemblyKey, compareMethodTypeParametersByName: true); return - other._arity == _arity && other._refKinds.Length == _refKinds.Length && other._isPartialMethodImplementationPart == _isPartialMethodImplementationPart && + other.Arity == this.Arity && Equals(options.IgnoreCase, other._metadataName, _metadataName) && other._containerKey.Equals(_containerKey, options) && other._refKinds.SequenceEqual(_refKinds) && - other._originalParameterTypeKeys.SequenceEqual(_originalParameterTypeKeys, comparer) && - SequenceEquals(other._typeArgumentKeysOpt, _typeArgumentKeysOpt, comparer); + other._originalParameterTypeKeys.SequenceEqual(_originalParameterTypeKeys, comparer); } internal override int GetHashCode(ComparisonOptions options) { // TODO: Consider hashing the parameters as well return - Hash.Combine(_arity, + Hash.Combine(this.Arity, Hash.Combine(_refKinds.Length, Hash.Combine(_isPartialMethodImplementationPart, Hash.Combine(GetHashCode(options.IgnoreCase, _metadataName), @@ -141,4 +278,4 @@ internal override int GetHashCode(ComparisonOptions options) } } } -} +} \ No newline at end of file diff --git a/src/Workspaces/Core/Portable/SymbolId/SymbolKey.MethodTypeParameterSymbolKey.cs b/src/Workspaces/Core/Portable/SymbolId/SymbolKey.MethodTypeParameterSymbolKey.cs index 047fb083ba114..5e21db2dde0db 100644 --- a/src/Workspaces/Core/Portable/SymbolId/SymbolKey.MethodTypeParameterSymbolKey.cs +++ b/src/Workspaces/Core/Portable/SymbolId/SymbolKey.MethodTypeParameterSymbolKey.cs @@ -4,21 +4,50 @@ using System.Collections.Generic; using System.Linq; using System.Threading; +using Newtonsoft.Json; using Roslyn.Utilities; namespace Microsoft.CodeAnalysis { internal abstract partial class SymbolKey { - private class MethodTypeParameterSymbol : AbstractSymbolKey + [JsonObject(MemberSerialization = MemberSerialization.OptIn)] + private class MethodTypeParameterSymbolKey : AbstractSymbolKey { - private readonly SymbolKey _containerKey; - private readonly string _metadataName; + /// + /// There is a circularity between methods and their type parameters. As such + /// we may generate the type parameter when processing the method. Or we may + /// generate the method when processing the type parameter. Because we may + /// be created before our containing method is available, we may start out with + /// a null containerKey. However, once our containing method finishes being + /// created it will set itself as our container. + /// + [JsonProperty] internal MethodSymbolKey _containerKey; - public MethodTypeParameterSymbol(SymbolKey containerKey, ITypeParameterSymbol symbol) + [JsonProperty] private readonly string _metadataName; + [JsonProperty] private readonly int _ordinal; + + [JsonConstructor] + internal MethodTypeParameterSymbolKey( + MethodSymbolKey _containerKey, string _metadataName, int _ordinal) + { + this._containerKey = _containerKey; + this._metadataName = _metadataName; + this._ordinal = _ordinal; + + // Let out method know about us in case it was created before we were. + if (_containerKey != null && _containerKey._typeParameterKeysOpt != null) + { + _containerKey._typeParameterKeysOpt[_ordinal] = this; + } + } + + public MethodTypeParameterSymbolKey( + MethodSymbolKey containerKey, ITypeParameterSymbol symbol) { _containerKey = containerKey; _metadataName = symbol.MetadataName; + _ordinal = symbol.Ordinal; } public override SymbolKeyResolution Resolve(Compilation compilation, bool ignoreAssemblyKey, CancellationToken cancellationToken) @@ -33,7 +62,7 @@ private IEnumerable Resolve(Compilation compilation, IMeth return container.TypeParameters.Where(t => Equals(compilation, t.MetadataName, _metadataName)); } - internal override bool Equals(MethodTypeParameterSymbol other, ComparisonOptions options) + internal override bool Equals(MethodTypeParameterSymbolKey other, ComparisonOptions options) { return Equals(options.IgnoreCase, other._metadataName, _metadataName) && (options.CompareMethodTypeParametersByName || other._containerKey.Equals(_containerKey, options)); @@ -47,4 +76,4 @@ internal override int GetHashCode(ComparisonOptions options) } } } -} +} \ No newline at end of file diff --git a/src/Workspaces/Core/Portable/SymbolId/SymbolKey.ModuleSymbolKey.cs b/src/Workspaces/Core/Portable/SymbolId/SymbolKey.ModuleSymbolKey.cs index a15d2b75fc007..276872b31d459 100644 --- a/src/Workspaces/Core/Portable/SymbolId/SymbolKey.ModuleSymbolKey.cs +++ b/src/Workspaces/Core/Portable/SymbolId/SymbolKey.ModuleSymbolKey.cs @@ -5,16 +5,25 @@ using System.Linq; using System.Threading; using Microsoft.CodeAnalysis.Text; +using Newtonsoft.Json; using Roslyn.Utilities; namespace Microsoft.CodeAnalysis { internal abstract partial class SymbolKey { + [JsonObject(MemberSerialization = MemberSerialization.OptIn)] private class ModuleSymbolKey : AbstractSymbolKey { - private readonly SymbolKey _containerKey; - private readonly string _metadataName; + [JsonProperty] private readonly SymbolKey _containerKey; + [JsonProperty] private readonly string _metadataName; + + [JsonConstructor] + internal ModuleSymbolKey(SymbolKey _containerKey, string _metadataName) + { + this._containerKey = _containerKey; + this._metadataName = _metadataName; + } internal ModuleSymbolKey(IModuleSymbol symbol, Visitor visitor) { @@ -46,4 +55,4 @@ internal override int GetHashCode(ComparisonOptions options) } } } -} +} \ No newline at end of file diff --git a/src/Workspaces/Core/Portable/SymbolId/SymbolKey.NamedTypeSymbolKey.cs b/src/Workspaces/Core/Portable/SymbolId/SymbolKey.NamedTypeSymbolKey.cs index c81403c912af2..5d35292282cbf 100644 --- a/src/Workspaces/Core/Portable/SymbolId/SymbolKey.NamedTypeSymbolKey.cs +++ b/src/Workspaces/Core/Portable/SymbolId/SymbolKey.NamedTypeSymbolKey.cs @@ -5,20 +5,34 @@ using System.Linq; using System.Threading; using Microsoft.CodeAnalysis.Text; +using Newtonsoft.Json; using Roslyn.Utilities; namespace Microsoft.CodeAnalysis { internal abstract partial class SymbolKey { + [JsonObject(MemberSerialization = MemberSerialization.OptIn)] private class NamedTypeSymbolKey : AbstractSymbolKey { - private readonly SymbolKey _containerKey; - private readonly string _metadataName; - private readonly int _arity; - private readonly SymbolKey[] _typeArgumentKeysOpt; - private readonly TypeKind _typeKind; - private readonly bool _isUnboundGenericType; + [JsonProperty] private readonly SymbolKey _containerKey; + [JsonProperty] private readonly string _metadataName; + [JsonProperty] private readonly int _arity; + [JsonProperty] private readonly SymbolKey[] _typeArgumentKeysOpt; + [JsonProperty] private readonly TypeKind _typeKind; + [JsonProperty] private readonly bool _isUnboundGenericType; + + public NamedTypeSymbolKey( + SymbolKey _containerKey, string _metadataName, int _arity, + SymbolKey[] _typeArgumentKeysOpt, TypeKind _typeKind, bool _isUnboundGenericType) + { + this._containerKey = _containerKey; + this._metadataName = _metadataName; + this._arity = _arity; + this._typeArgumentKeysOpt = _typeArgumentKeysOpt; + this._typeKind = _typeKind; + this._isUnboundGenericType = _isUnboundGenericType; + } internal NamedTypeSymbolKey(INamedTypeSymbol symbol, Visitor visitor) { @@ -74,4 +88,4 @@ internal override int GetHashCode(ComparisonOptions options) } } } -} +} \ No newline at end of file diff --git a/src/Workspaces/Core/Portable/SymbolId/SymbolKey.NamespaceSymbolKey.cs b/src/Workspaces/Core/Portable/SymbolId/SymbolKey.NamespaceSymbolKey.cs index 87431ddb1fc55..dae9e30f64faf 100644 --- a/src/Workspaces/Core/Portable/SymbolId/SymbolKey.NamespaceSymbolKey.cs +++ b/src/Workspaces/Core/Portable/SymbolId/SymbolKey.NamespaceSymbolKey.cs @@ -1,17 +1,17 @@ // 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.Diagnostics; using System.Linq; using System.Threading; -using Microsoft.CodeAnalysis.Text; +using Newtonsoft.Json; using Roslyn.Utilities; namespace Microsoft.CodeAnalysis { internal abstract partial class SymbolKey { + [JsonObject] private class NamespaceSymbolKey : AbstractSymbolKey { // This can be one of many things. @@ -21,8 +21,15 @@ private class NamespaceSymbolKey : AbstractSymbolKey // 3) The SymbolId for a module symbol if this is the global namespace for a module. // 4) The SymbolId for the containing namespace symbol if this is not a global // namespace. - private readonly SymbolKey _containerKeyOpt; - private readonly string _metadataName; + [JsonProperty] private readonly SymbolKey _containerKeyOpt; + [JsonProperty] private readonly string _metadataName; + + [JsonConstructor] + internal NamespaceSymbolKey(SymbolKey _containerKeyOpt, string _metadataName) + { + this._containerKeyOpt = _containerKeyOpt; + this._metadataName = _metadataName; + } internal NamespaceSymbolKey(INamespaceSymbol symbol, Visitor visitor) { @@ -107,4 +114,4 @@ internal override int GetHashCode(ComparisonOptions options) } } } -} +} \ No newline at end of file diff --git a/src/Workspaces/Core/Portable/SymbolId/SymbolKey.NullSymbolKey.cs b/src/Workspaces/Core/Portable/SymbolId/SymbolKey.NullSymbolKey.cs index 24944464afdce..4f0f872cb027a 100644 --- a/src/Workspaces/Core/Portable/SymbolId/SymbolKey.NullSymbolKey.cs +++ b/src/Workspaces/Core/Portable/SymbolId/SymbolKey.NullSymbolKey.cs @@ -4,27 +4,36 @@ using System.Runtime.CompilerServices; using System.Runtime.Serialization; using System.Threading; +using Newtonsoft.Json; namespace Microsoft.CodeAnalysis { internal abstract partial class SymbolKey { - private class NullSymbolKey : SymbolKey + [JsonObject(MemberSerialization = MemberSerialization.OptIn)] + private class NullSymbolKey : AbstractSymbolKey { + public static readonly NullSymbolKey Instance = new NullSymbolKey(); + + [JsonConstructor] + internal NullSymbolKey() + { + } + public override SymbolKeyResolution Resolve(Compilation compilation, bool ignoreAssemblyKey, CancellationToken cancellationToken) { return default(SymbolKeyResolution); } - internal override bool Equals(SymbolKey other, ComparisonOptions options) + internal override bool Equals(NullSymbolKey other, ComparisonOptions options) { - return ReferenceEquals(this, other); + return true; } internal override int GetHashCode(ComparisonOptions options) { - return RuntimeHelpers.GetHashCode(this); + return RuntimeHelpers.GetHashCode(Instance); } } } -} +} \ No newline at end of file diff --git a/src/Workspaces/Core/Portable/SymbolId/SymbolKey.ParameterSymbolKey.cs b/src/Workspaces/Core/Portable/SymbolId/SymbolKey.ParameterSymbolKey.cs index 76010097eea4f..c36693db2aff4 100644 --- a/src/Workspaces/Core/Portable/SymbolId/SymbolKey.ParameterSymbolKey.cs +++ b/src/Workspaces/Core/Portable/SymbolId/SymbolKey.ParameterSymbolKey.cs @@ -5,16 +5,25 @@ using System.Linq; using System.Threading; using Microsoft.CodeAnalysis.Text; +using Newtonsoft.Json; using Roslyn.Utilities; namespace Microsoft.CodeAnalysis { internal abstract partial class SymbolKey { + [JsonObject(MemberSerialization = MemberSerialization.OptIn)] private class ParameterSymbolKey : AbstractSymbolKey { - private readonly SymbolKey _containerKey; - private readonly string _metadataName; + [JsonProperty] private readonly SymbolKey _containerKey; + [JsonProperty] private readonly string _metadataName; + + [JsonConstructor] + internal ParameterSymbolKey(SymbolKey _containerKey, string _metadataName) + { + this._containerKey = _containerKey; + this._metadataName = _metadataName; + } internal ParameterSymbolKey(IParameterSymbol symbol, Visitor visitor) { @@ -60,4 +69,4 @@ internal override int GetHashCode(ComparisonOptions options) } } } -} +} \ No newline at end of file diff --git a/src/Workspaces/Core/Portable/SymbolId/SymbolKey.PointerTypeSymbolKey.cs b/src/Workspaces/Core/Portable/SymbolId/SymbolKey.PointerTypeSymbolKey.cs index 09b36e12e5952..35cfabc64ba4a 100644 --- a/src/Workspaces/Core/Portable/SymbolId/SymbolKey.PointerTypeSymbolKey.cs +++ b/src/Workspaces/Core/Portable/SymbolId/SymbolKey.PointerTypeSymbolKey.cs @@ -4,15 +4,23 @@ using System.Linq; using System.Threading; using Microsoft.CodeAnalysis.Text; +using Newtonsoft.Json; using Roslyn.Utilities; namespace Microsoft.CodeAnalysis { internal abstract partial class SymbolKey { + [JsonObject(MemberSerialization = MemberSerialization.OptIn)] private class PointerTypeSymbolKey : AbstractSymbolKey { - private readonly SymbolKey _pointedAtKey; + [JsonProperty] private readonly SymbolKey _pointedAtKey; + + [JsonConstructor] + internal PointerTypeSymbolKey(SymbolKey _pointedAtKey) + { + this._pointedAtKey = _pointedAtKey; + } public PointerTypeSymbolKey(IPointerTypeSymbol symbol, Visitor visitor) { @@ -36,4 +44,4 @@ internal override int GetHashCode(ComparisonOptions options) } } } -} +} \ No newline at end of file diff --git a/src/Workspaces/Core/Portable/SymbolId/SymbolKey.PropertySymbolKey.cs b/src/Workspaces/Core/Portable/SymbolId/SymbolKey.PropertySymbolKey.cs index 3422d3b9d7dc2..525427d05f8f0 100644 --- a/src/Workspaces/Core/Portable/SymbolId/SymbolKey.PropertySymbolKey.cs +++ b/src/Workspaces/Core/Portable/SymbolId/SymbolKey.PropertySymbolKey.cs @@ -1,23 +1,33 @@ // 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.Linq; using System.Threading; -using Microsoft.CodeAnalysis.Text; +using Newtonsoft.Json; using Roslyn.Utilities; namespace Microsoft.CodeAnalysis { internal abstract partial class SymbolKey { + [JsonObject(MemberSerialization = MemberSerialization.OptIn)] private class PropertySymbolKey : AbstractSymbolKey { - private readonly SymbolKey _containerKey; - private readonly string _metadataName; - private readonly RefKind[] _refKinds; - private readonly SymbolKey[] _originalParameterTypeKeys; - private readonly bool _isIndexer; + [JsonProperty] private readonly SymbolKey _containerKey; + [JsonProperty] private readonly string _metadataName; + [JsonProperty] private readonly RefKind[] _refKinds; + [JsonProperty] private readonly SymbolKey[] _originalParameterTypeKeys; + [JsonProperty] private readonly bool _isIndexer; + + public PropertySymbolKey( + SymbolKey _containerKey, string _metadataName, RefKind[] _refKinds, + SymbolKey[] _originalParameterTypeKeys, bool _isIndexer) + { + this._containerKey = _containerKey; + this._metadataName = _metadataName; + this._refKinds = _refKinds; + this._originalParameterTypeKeys = _originalParameterTypeKeys; + this._isIndexer = _isIndexer; + } internal PropertySymbolKey(IPropertySymbol symbol, Visitor visitor) { @@ -67,4 +77,4 @@ internal override int GetHashCode(ComparisonOptions options) } } } -} +} \ No newline at end of file diff --git a/src/Workspaces/Core/Portable/SymbolId/SymbolKey.TupleTypeSymbolKey.cs b/src/Workspaces/Core/Portable/SymbolId/SymbolKey.TupleTypeSymbolKey.cs index 5916bf8cc1ff3..ceb7d98f6e2d5 100644 --- a/src/Workspaces/Core/Portable/SymbolId/SymbolKey.TupleTypeSymbolKey.cs +++ b/src/Workspaces/Core/Portable/SymbolId/SymbolKey.TupleTypeSymbolKey.cs @@ -6,16 +6,25 @@ using System.Diagnostics; using System.Linq; using System.Threading; +using Newtonsoft.Json; using Roslyn.Utilities; namespace Microsoft.CodeAnalysis { internal abstract partial class SymbolKey { + [JsonObject(MemberSerialization = MemberSerialization.OptIn)] private class TupleTypeSymbolKey : AbstractSymbolKey { - private readonly SymbolKey _underlyingType; - private readonly string[] _names; + [JsonProperty] private readonly SymbolKey _underlyingType; + [JsonProperty] private readonly string[] _names; + + [JsonConstructor] + internal TupleTypeSymbolKey(SymbolKey _underlyingType, string[] _names) + { + this._underlyingType = _underlyingType; + this._names = _names; + } internal TupleTypeSymbolKey(INamedTypeSymbol symbol, Visitor visitor) { @@ -60,8 +69,8 @@ private IEnumerable Resolve( internal override bool Equals(TupleTypeSymbolKey other, ComparisonOptions options) { - return _underlyingType.Equals(other._underlyingType, options) - && SequenceEquals(other._names, _names, StringComparer.Ordinal); + return _underlyingType.Equals(other._underlyingType, options) && + SequenceEquals(other._names, _names, StringComparer.Ordinal); } internal override int GetHashCode(ComparisonOptions options) @@ -71,4 +80,4 @@ internal override int GetHashCode(ComparisonOptions options) } } } -} +} \ No newline at end of file diff --git a/src/Workspaces/Core/Portable/SymbolId/SymbolKey.TypeParameterSymbolKey.cs b/src/Workspaces/Core/Portable/SymbolId/SymbolKey.TypeParameterSymbolKey.cs index 49e3f23c6c5b4..7771be3339b6b 100644 --- a/src/Workspaces/Core/Portable/SymbolId/SymbolKey.TypeParameterSymbolKey.cs +++ b/src/Workspaces/Core/Portable/SymbolId/SymbolKey.TypeParameterSymbolKey.cs @@ -5,16 +5,25 @@ using System.Linq; using System.Threading; using Microsoft.CodeAnalysis.Text; +using Newtonsoft.Json; using Roslyn.Utilities; namespace Microsoft.CodeAnalysis { internal abstract partial class SymbolKey { + [JsonObject(MemberSerialization = MemberSerialization.OptIn)] private class TypeParameterSymbolKey : AbstractSymbolKey { - private readonly SymbolKey _containerKey; - private readonly string _metadataName; + [JsonProperty] private readonly SymbolKey _containerKey; + [JsonProperty] private readonly string _metadataName; + + [JsonConstructor] + internal TypeParameterSymbolKey(SymbolKey _containerKey, string _metadataName) + { + this._containerKey = _containerKey; + this._metadataName = _metadataName; + } public TypeParameterSymbolKey(ITypeParameterSymbol symbol, Visitor visitor) { @@ -49,4 +58,4 @@ internal override int GetHashCode(ComparisonOptions options) } } } -} +} \ No newline at end of file diff --git a/src/Workspaces/Core/Portable/SymbolId/SymbolKey.Visitor.cs b/src/Workspaces/Core/Portable/SymbolId/SymbolKey.Visitor.cs index 49f5786f98737..bd78d30c9a03a 100644 --- a/src/Workspaces/Core/Portable/SymbolId/SymbolKey.Visitor.cs +++ b/src/Workspaces/Core/Portable/SymbolId/SymbolKey.Visitor.cs @@ -2,6 +2,7 @@ using System.Collections.Generic; using System.Diagnostics; +using System.Linq; using System.Threading; namespace Microsoft.CodeAnalysis @@ -22,7 +23,10 @@ public Visitor(Compilation compilation, CancellationToken cancellationToken) public override SymbolKey VisitAlias(IAliasSymbol aliasSymbol) { - return GetOrCreate(aliasSymbol.Target, this); + var syntaxRef = aliasSymbol.DeclaringSyntaxReferences.FirstOrDefault(); + return syntaxRef == null + ? (SymbolKey)NullSymbolKey.Instance + : new AliasSymbolKey(aliasSymbol, this); } public override SymbolKey VisitArrayType(IArrayTypeSymbol arrayTypeSymbol) @@ -47,17 +51,28 @@ public override SymbolKey VisitField(IFieldSymbol fieldSymbol) public override SymbolKey VisitLabel(ILabelSymbol labelSymbol) { - return new NonDeclarationSymbolKey(labelSymbol, this); + return new NonDeclarationSymbolKey(labelSymbol, this); } public override SymbolKey VisitLocal(ILocalSymbol localSymbol) { - return new NonDeclarationSymbolKey(localSymbol, this); + return new NonDeclarationSymbolKey(localSymbol, this); } public override SymbolKey VisitMethod(IMethodSymbol methodSymbol) { - return new MethodSymbolKey(methodSymbol, this); + if (!methodSymbol.Equals(methodSymbol.ConstructedFrom)) + { + return new ConstructedMethodSymbolKey(methodSymbol, this); + } + else if (methodSymbol.MethodKind == MethodKind.ReducedExtension) + { + return new ReducedExtensionMethodSymbolKey(methodSymbol, this); + } + else + { + return new MethodSymbolKey(methodSymbol, this); + } } public override SymbolKey VisitModule(IModuleSymbol moduleSymbol) @@ -127,13 +142,13 @@ public override SymbolKey VisitTypeParameter(ITypeParameterSymbol typeParameterS } else { - return SymbolKey.s_null; + return NullSymbolKey.Instance; } } public override SymbolKey VisitRangeVariable(IRangeVariableSymbol rangeVariableSymbol) { - return new NonDeclarationSymbolKey(rangeVariableSymbol, this); + return new NonDeclarationSymbolKey(rangeVariableSymbol, this); } } } diff --git a/src/Workspaces/Core/Portable/SymbolId/SymbolKey.cs b/src/Workspaces/Core/Portable/SymbolId/SymbolKey.cs index 78a555731ac2f..adc3d503cd9bd 100644 --- a/src/Workspaces/Core/Portable/SymbolId/SymbolKey.cs +++ b/src/Workspaces/Core/Portable/SymbolId/SymbolKey.cs @@ -6,7 +6,8 @@ using System.Linq; using System.Threading; using Microsoft.CodeAnalysis.Shared.Utilities; -using Microsoft.CodeAnalysis.Text; +using Newtonsoft.Json; +using Newtonsoft.Json.Linq; using Roslyn.Utilities; namespace Microsoft.CodeAnalysis @@ -58,8 +59,6 @@ namespace Microsoft.CodeAnalysis /// internal abstract partial class SymbolKey { - private static readonly SymbolKey s_null = new NullSymbolKey(); - public abstract SymbolKeyResolution Resolve(Compilation compilation, bool ignoreAssemblyKey = false, CancellationToken cancellationToken = default(CancellationToken)); public static IEqualityComparer GetComparer(bool ignoreCase, bool ignoreAssemblyKeys) @@ -112,7 +111,7 @@ private static SymbolKey GetOrCreate(ISymbol symbol, Visitor visitor) { if (symbol == null) { - return s_null; + return NullSymbolKey.Instance; } SymbolKey result; @@ -288,5 +287,24 @@ private static string GetName(string metadataName) ? metadataName.Substring(0, index) : metadataName; } + + private static readonly JsonSerializerSettings serializerSettings = new JsonSerializerSettings + { + TypeNameHandling = TypeNameHandling.All, + PreserveReferencesHandling = PreserveReferencesHandling.Objects, +#if DEBUG + Formatting = Newtonsoft.Json.Formatting.Indented +#endif + }; + + internal string Serialize() + { + return JsonConvert.SerializeObject(this, serializerSettings); + } + + internal static SymbolKey Deserialize(string encoded) + { + return JsonConvert.DeserializeObject(encoded, serializerSettings); + } } -} +} \ No newline at end of file diff --git a/src/Workspaces/Core/Portable/Workspaces.csproj b/src/Workspaces/Core/Portable/Workspaces.csproj index 8772e3053cedc..8c6561fb11c57 100644 --- a/src/Workspaces/Core/Portable/Workspaces.csproj +++ b/src/Workspaces/Core/Portable/Workspaces.csproj @@ -422,10 +422,10 @@ + - @@ -1012,4 +1012,4 @@ - + \ No newline at end of file diff --git a/src/Workspaces/Core/Portable/project.json b/src/Workspaces/Core/Portable/project.json index 65b29938ab338..fb48f19bd981a 100644 --- a/src/Workspaces/Core/Portable/project.json +++ b/src/Workspaces/Core/Portable/project.json @@ -1,5 +1,6 @@ { "dependencies": { + "Newtonsoft.Json": "6.0.4" }, "frameworks": { ".NETPortable,Version=v4.5,Profile=Profile7": {} diff --git a/src/Workspaces/CoreTest/ServicesTest.csproj b/src/Workspaces/CoreTest/ServicesTest.csproj index 0d0b8e01a645c..055a2275afef0 100644 --- a/src/Workspaces/CoreTest/ServicesTest.csproj +++ b/src/Workspaces/CoreTest/ServicesTest.csproj @@ -15,7 +15,6 @@ v4.6 true - $(DefineConstants);MSBUILD12 @@ -75,7 +74,7 @@ - + diff --git a/src/Workspaces/CoreTest/SymbolIdTests.cs b/src/Workspaces/CoreTest/SymbolKeyTests.cs similarity index 98% rename from src/Workspaces/CoreTest/SymbolIdTests.cs rename to src/Workspaces/CoreTest/SymbolKeyTests.cs index 61bdfbfbb2a46..e4a5181d7956c 100644 --- a/src/Workspaces/CoreTest/SymbolIdTests.cs +++ b/src/Workspaces/CoreTest/SymbolKeyTests.cs @@ -17,7 +17,7 @@ namespace Microsoft.CodeAnalysis.UnitTests { - public class SymbolIdTests : TestBase + public class SymbolKeyTests : TestBase { [Fact] public void TestMemberDeclarations() @@ -470,7 +470,7 @@ void foo() var xSymbol = testModel.LookupSymbols(position).First(s => s.Name == "x"); // This should not throw an exception. - Assert.NotNull(SymbolId.CreateId(xSymbol)); + Assert.NotNull(SymbolKey.Create(xSymbol)); } private void TestRoundTrip(IEnumerable symbols, Compilation compilation, Func fnId = null) @@ -483,9 +483,9 @@ private void TestRoundTrip(IEnumerable symbols, Compilation compilation private void TestRoundTrip(ISymbol symbol, Compilation compilation, Func fnId = null) { - var id = SymbolId.CreateId(symbol); + var id = SymbolKey.Create(symbol).Serialize(); Assert.NotNull(id); - var found = SymbolId.GetFirstSymbolForId(id, compilation); + var found = SymbolKey.Deserialize(id).Resolve(compilation).GetAnySymbol(); Assert.NotNull(found); if (fnId != null) From 1fb1048050045647cc16adb930c2b6b349562d23 Mon Sep 17 00:00:00 2001 From: dpen2000 Date: Wed, 25 May 2016 23:27:49 +0100 Subject: [PATCH 031/255] Fixes #556 - Add Fields/Constants to VB Nav Bar --- .../VisualBasicNavigationBarTests.vb | 20 +++++++++++++++++++ .../VisualBasicNavigationBarItemService.vb | 10 +++++++++- 2 files changed, 29 insertions(+), 1 deletion(-) diff --git a/src/EditorFeatures/Test2/NavigationBar/VisualBasicNavigationBarTests.vb b/src/EditorFeatures/Test2/NavigationBar/VisualBasicNavigationBarTests.vb index 4233e561489ed..e786c4162ea8f 100644 --- a/src/EditorFeatures/Test2/NavigationBar/VisualBasicNavigationBarTests.vb +++ b/src/EditorFeatures/Test2/NavigationBar/VisualBasicNavigationBarTests.vb @@ -302,6 +302,26 @@ End Class Item("Finalize", Glyph.MethodProtected, bolded:=True)})) End Function + + Public Async Function TestFieldsAndConstants() As Task + Await AssertItemsAreAsync( + + + + Class C + Private Const Co = 1 + Private F As Integer + End Class + + + , + Item("C", Glyph.ClassInternal, bolded:=True, children:={ + Item(NavigationItemNew, Glyph.MethodPublic, hasNavigationSymbolId:=False), + Item("Finalize", Glyph.MethodProtected, hasNavigationSymbolId:=False), + Item("Co", Glyph.ConstantPrivate, bolded:=True), + Item("F", Glyph.FieldPrivate, bolded:=True)})) + End Function + Public Async Function TestGenerateFinalizer() As Task Await AssertGeneratedResultIsAsync( diff --git a/src/EditorFeatures/VisualBasic/NavigationBar/VisualBasicNavigationBarItemService.vb b/src/EditorFeatures/VisualBasic/NavigationBar/VisualBasicNavigationBarItemService.vb index 52a9a52d7ef31..6dfd5765328c8 100644 --- a/src/EditorFeatures/VisualBasic/NavigationBar/VisualBasicNavigationBarItemService.vb +++ b/src/EditorFeatures/VisualBasic/NavigationBar/VisualBasicNavigationBarItemService.vb @@ -269,7 +269,15 @@ Namespace Microsoft.CodeAnalysis.Editor.VisualBasic.NavigationBar Return Not p.IsWithEvents End If - Return symbol.Kind = SymbolKind.Event + If symbol.Kind = SymbolKind.Event Then + Return True + End If + + If symbol.Kind = SymbolKind.Field AndAlso Not symbol.IsImplicitlyDeclared Then + Return True + End If + + Return False End Function ''' From 5d3bd14b3ac031f9d011267e6ea0e9c7fb1da5c5 Mon Sep 17 00:00:00 2001 From: VSadov Date: Fri, 27 May 2016 17:08:54 -0700 Subject: [PATCH 032/255] Skip lambda relaxation in expression trees when relaxation is used just to drop the return value. Expression trees can naturally ignore return value when necessary and old compiler was skipping relaxation in this case. Fixes: #8804 --- .../LocalRewriter/LocalRewriter_Conversion.vb | 25 ++- .../Emit/ExpressionTrees/CodeGenExprLambda.vb | 189 ++++++++++++++++++ 2 files changed, 213 insertions(+), 1 deletion(-) diff --git a/src/Compilers/VisualBasic/Portable/Lowering/LocalRewriter/LocalRewriter_Conversion.vb b/src/Compilers/VisualBasic/Portable/Lowering/LocalRewriter/LocalRewriter_Conversion.vb index ab5776c7409ed..b1770bd9dac25 100644 --- a/src/Compilers/VisualBasic/Portable/Lowering/LocalRewriter/LocalRewriter_Conversion.vb +++ b/src/Compilers/VisualBasic/Portable/Lowering/LocalRewriter/LocalRewriter_Conversion.vb @@ -96,10 +96,24 @@ Namespace Microsoft.CodeAnalysis.VisualBasic End If If node.RelaxationLambdaOpt IsNot Nothing Then - returnValue = node.Update(VisitExpressionNode(node.RelaxationLambdaOpt), + + If _inExpressionLambda AndAlso + NoParameterRelaxation(DirectCast(node.Operand, BoundLambda).LambdaSymbol, node.RelaxationLambdaOpt.LambdaSymbol) Then + + ' COMPAT: skip relaxation in this case. ET can drop the return value of the inner lambda. + returnValue = MyBase.VisitConversion( + node.Update(node.Operand, + node.ConversionKind, node.Checked, node.ExplicitCastInCode, + node.ConstantValueOpt, node.ConstructorOpt, + relaxationLambdaOpt:=Nothing, relaxationReceiverPlaceholderOpt:=Nothing, type:=node.Type)) + + returnValue = TransformRewrittenConversion(DirectCast(returnValue, BoundConversion)) + Else + returnValue = node.Update(VisitExpressionNode(node.RelaxationLambdaOpt), node.ConversionKind, node.Checked, node.ExplicitCastInCode, node.ConstantValueOpt, node.ConstructorOpt, relaxationLambdaOpt:=Nothing, relaxationReceiverPlaceholderOpt:=Nothing, type:=node.Type) + End If ElseIf node.ConversionKind = ConversionKind.InterpolatedString Then returnValue = RewriteInterpolatedStringConversion(node) @@ -115,6 +129,15 @@ Namespace Microsoft.CodeAnalysis.VisualBasic Return returnValue End Function + Private Shared Function NoParameterRelaxation(fromLambda As LambdaSymbol, toLambda As LambdaSymbol) As Boolean + ' are we are relaxing for the purpose of dropping return? + Return Not fromLambda.IsSub AndAlso + toLambda.IsSub AndAlso + MethodSignatureComparer.HaveSameParameterTypes(fromLambda.Parameters, Nothing, toLambda.Parameters, Nothing, considerByRef:=True, considerCustomModifiers:=False) + + End Function + + ' Rewrite Anonymous Delegate conversion into a delegate creation Private Function RewriteAnonymousDelegateConversion(node As BoundConversion) As BoundNode Debug.Assert(Not Conversions.IsIdentityConversion(node.ConversionKind)) diff --git a/src/Compilers/VisualBasic/Test/Emit/ExpressionTrees/CodeGenExprLambda.vb b/src/Compilers/VisualBasic/Test/Emit/ExpressionTrees/CodeGenExprLambda.vb index 3eb523e992682..94c987bcf05db 100644 --- a/src/Compilers/VisualBasic/Test/Emit/ExpressionTrees/CodeGenExprLambda.vb +++ b/src/Compilers/VisualBasic/Test/Emit/ExpressionTrees/CodeGenExprLambda.vb @@ -2807,6 +2807,195 @@ Lambda( ]]>) End Sub + + Public Sub Relaxation01() + Dim file = + + TestExpressionTrees(file, + c.ProcessSub() +c => c.Process() +]]>) + End Sub + + + + Public Sub Relaxation02() + Dim file = + + TestExpressionTrees(file, + ProcessSub(ConvertChecked(c)) +c => Process(ConvertChecked(c)) +]]>) + End Sub + + + Public Sub Relaxation03() + Dim file = + + TestExpressionTrees(file, + ProcessSub() +c => Process() +]]>) + End Sub + + + Public Sub Relaxation04() + Dim file = + + TestExpressionTrees(file, + Invoke(() => ProcessSub()) +a0 => Invoke(() => Process()) +]]>) + End Sub + + + #End Region #Region "Xml Literals" From 6d81a8e93d9f36d324a78a02a3055b7860c6419c Mon Sep 17 00:00:00 2001 From: VSadov Date: Sat, 28 May 2016 15:17:57 -0700 Subject: [PATCH 033/255] CR feedback --- .../LocalRewriter/LocalRewriter_Conversion.vb | 104 ++++++++--- .../Emit/ExpressionTrees/CodeGenExprLambda.vb | 165 +++++++++++++++++- 2 files changed, 242 insertions(+), 27 deletions(-) diff --git a/src/Compilers/VisualBasic/Portable/Lowering/LocalRewriter/LocalRewriter_Conversion.vb b/src/Compilers/VisualBasic/Portable/Lowering/LocalRewriter/LocalRewriter_Conversion.vb index b1770bd9dac25..b77119b6355cf 100644 --- a/src/Compilers/VisualBasic/Portable/Lowering/LocalRewriter/LocalRewriter_Conversion.vb +++ b/src/Compilers/VisualBasic/Portable/Lowering/LocalRewriter/LocalRewriter_Conversion.vb @@ -96,24 +96,7 @@ Namespace Microsoft.CodeAnalysis.VisualBasic End If If node.RelaxationLambdaOpt IsNot Nothing Then - - If _inExpressionLambda AndAlso - NoParameterRelaxation(DirectCast(node.Operand, BoundLambda).LambdaSymbol, node.RelaxationLambdaOpt.LambdaSymbol) Then - - ' COMPAT: skip relaxation in this case. ET can drop the return value of the inner lambda. - returnValue = MyBase.VisitConversion( - node.Update(node.Operand, - node.ConversionKind, node.Checked, node.ExplicitCastInCode, - node.ConstantValueOpt, node.ConstructorOpt, - relaxationLambdaOpt:=Nothing, relaxationReceiverPlaceholderOpt:=Nothing, type:=node.Type)) - - returnValue = TransformRewrittenConversion(DirectCast(returnValue, BoundConversion)) - Else - returnValue = node.Update(VisitExpressionNode(node.RelaxationLambdaOpt), - node.ConversionKind, node.Checked, node.ExplicitCastInCode, - node.ConstantValueOpt, node.ConstructorOpt, - relaxationLambdaOpt:=Nothing, relaxationReceiverPlaceholderOpt:=Nothing, type:=node.Type) - End If + returnValue = RewriteLambdaRelaxationConversion(node) ElseIf node.ConversionKind = ConversionKind.InterpolatedString Then returnValue = RewriteInterpolatedStringConversion(node) @@ -129,9 +112,82 @@ Namespace Microsoft.CodeAnalysis.VisualBasic Return returnValue End Function - Private Shared Function NoParameterRelaxation(fromLambda As LambdaSymbol, toLambda As LambdaSymbol) As Boolean + Private Function RewriteLambdaRelaxationConversion(node As BoundConversion) As BoundNode + Dim returnValue As BoundNode + + If _inExpressionLambda AndAlso + NoParameterRelaxation(node.Operand, node.RelaxationLambdaOpt.LambdaSymbol) Then + + ' COMPAT: skip relaxation in this case. ET can drop the return value of the inner lambda. + returnValue = MyBase.VisitConversion( + node.Update(node.Operand, + node.ConversionKind, node.Checked, node.ExplicitCastInCode, + node.ConstantValueOpt, node.ConstructorOpt, + relaxationLambdaOpt:=Nothing, relaxationReceiverPlaceholderOpt:=Nothing, type:=node.Type)) + + returnValue = TransformRewrittenConversion(DirectCast(returnValue, BoundConversion)) + Else + returnValue = node.Update(VisitExpressionNode(node.RelaxationLambdaOpt), + node.ConversionKind, node.Checked, node.ExplicitCastInCode, + node.ConstantValueOpt, node.ConstructorOpt, + relaxationLambdaOpt:=Nothing, relaxationReceiverPlaceholderOpt:=Nothing, type:=node.Type) + End If + + Return returnValue + End Function + + Private Function RewriteLambdaRelaxationConversion(node As BoundDirectCast) As BoundNode + Dim returnValue As BoundNode + + If _inExpressionLambda AndAlso + NoParameterRelaxation(node.Operand, node.RelaxationLambdaOpt.LambdaSymbol) Then + + ' COMPAT: skip relaxation in this case. ET can drop the return value of the inner lambda. + returnValue = MyBase.VisitDirectCast( + node.Update(node.Operand, + node.ConversionKind, node.SuppressVirtualCalls, + node.ConstantValueOpt, + relaxationLambdaOpt:=Nothing, type:=node.Type)) + + Else + returnValue = node.Update(VisitExpressionNode(node.RelaxationLambdaOpt), + node.ConversionKind, node.SuppressVirtualCalls, + node.ConstantValueOpt, + relaxationLambdaOpt:=Nothing, type:=node.Type) + End If + + Return returnValue + End Function + + Private Function RewriteLambdaRelaxationConversion(node As BoundTryCast) As BoundNode + Dim returnValue As BoundNode + + If _inExpressionLambda AndAlso + NoParameterRelaxation(node.Operand, node.RelaxationLambdaOpt.LambdaSymbol) Then + + ' COMPAT: skip relaxation in this case. ET can drop the return value of the inner lambda. + returnValue = MyBase.VisitTryCast( + node.Update(node.Operand, + node.ConversionKind, + node.ConstantValueOpt, + relaxationLambdaOpt:=Nothing, type:=node.Type)) + + Else + returnValue = node.Update(VisitExpressionNode(node.RelaxationLambdaOpt), + node.ConversionKind, + node.ConstantValueOpt, + relaxationLambdaOpt:=Nothing, type:=node.Type) + End If + + Return returnValue + End Function + + Private Shared Function NoParameterRelaxation(from As BoundExpression, toLambda As LambdaSymbol) As Boolean + Dim fromLambda As LambdaSymbol = TryCast(from, BoundLambda)?.LambdaSymbol + ' are we are relaxing for the purpose of dropping return? - Return Not fromLambda.IsSub AndAlso + Return fromLambda IsNot Nothing AndAlso + Not fromLambda.IsSub AndAlso toLambda.IsSub AndAlso MethodSignatureComparer.HaveSameParameterTypes(fromLambda.Parameters, Nothing, toLambda.Parameters, Nothing, considerByRef:=True, considerCustomModifiers:=False) @@ -1221,9 +1277,7 @@ Namespace Microsoft.CodeAnalysis.VisualBasic If node.RelaxationLambdaOpt Is Nothing Then returnValue = MyBase.VisitDirectCast(node) Else - returnValue = node.Update(VisitExpressionNode(node.RelaxationLambdaOpt), - node.ConversionKind, node.SuppressVirtualCalls, node.ConstantValueOpt, - relaxationLambdaOpt:=Nothing, type:=node.Type) + returnValue = RewriteLambdaRelaxationConversion(node) End If _inExpressionLambda = wasInExpressionlambda @@ -1273,9 +1327,7 @@ Namespace Microsoft.CodeAnalysis.VisualBasic End If Else - returnValue = node.Update(VisitExpressionNode(node.RelaxationLambdaOpt), - node.ConversionKind, node.ConstantValueOpt, - relaxationLambdaOpt:=Nothing, type:=node.Type) + returnValue = RewriteLambdaRelaxationConversion(node) End If _inExpressionLambda = wasInExpressionlambda diff --git a/src/Compilers/VisualBasic/Test/Emit/ExpressionTrees/CodeGenExprLambda.vb b/src/Compilers/VisualBasic/Test/Emit/ExpressionTrees/CodeGenExprLambda.vb index 94c987bcf05db..106b1f63807b3 100644 --- a/src/Compilers/VisualBasic/Test/Emit/ExpressionTrees/CodeGenExprLambda.vb +++ b/src/Compilers/VisualBasic/Test/Emit/ExpressionTrees/CodeGenExprLambda.vb @@ -2831,13 +2831,15 @@ Class C0 End Sub End Class -Class C1(Of T As C0) +Class C1(Of T As {New, C0}) Public ProcessMethodSub As MethodInfo = RegisterMethod(Sub(c) c.ProcessSub()) Public ProcessMethod As MethodInfo = RegisterMethod(Function(c) c.Process) Public Function RegisterMethod(methodLambdaExpression As Expression(Of Action(Of T))) As MethodInfo System.Console.WriteLine(methodLambdaExpression.ToString()) + methodLambdaExpression.Compile()(new T()) + Return Nothing End Function @@ -2886,6 +2888,8 @@ Class C1(Of T) System.Console.WriteLine(methodLambdaExpression.ToString()) + methodLambdaExpression.Compile()(1) + Return Nothing End Function @@ -2933,6 +2937,8 @@ Class C1(Of T) System.Console.WriteLine(methodLambdaExpression.ToString()) + methodLambdaExpression.Compile()("qq") + Return Nothing End Function @@ -2979,6 +2985,8 @@ Class C1(Of T) System.Console.WriteLine(methodLambdaExpression.ToString()) + methodLambdaExpression.Compile()(1) + Return Nothing End Function @@ -2994,7 +3002,162 @@ a0 => Invoke(() => Process()) ]]>) End Sub + + Public Sub Relaxation05() + Dim file = + + TestExpressionTrees(file, + ProcessSub(tt => ProcessSub(null)) +t => Process(tt => Process(null)) +]]>) + End Sub + + + Public Sub Relaxation06() + Dim file = + + TestExpressionTrees(file, + ProcessSub(tt => ProcessSub(null)) +t => Process(tt => Process(null)) +]]>) + End Sub + + + Public Sub Relaxation07() + Dim file = + + TestExpressionTrees(file, + ProcessSub(tt => ProcessSub(null)) +t => Process(tt => Process(null)) +]]>) + End Sub #End Region From ad5e7628e1a3bf0798e31d21311321140b46d5cc Mon Sep 17 00:00:00 2001 From: VSadov Date: Sat, 28 May 2016 19:01:27 -0700 Subject: [PATCH 034/255] Added an anonymous delegate test. --- .../Emit/ExpressionTrees/CodeGenExprLambda.vb | 44 +++++++++++++++++++ 1 file changed, 44 insertions(+) diff --git a/src/Compilers/VisualBasic/Test/Emit/ExpressionTrees/CodeGenExprLambda.vb b/src/Compilers/VisualBasic/Test/Emit/ExpressionTrees/CodeGenExprLambda.vb index 106b1f63807b3..c989cbdead501 100644 --- a/src/Compilers/VisualBasic/Test/Emit/ExpressionTrees/CodeGenExprLambda.vb +++ b/src/Compilers/VisualBasic/Test/Emit/ExpressionTrees/CodeGenExprLambda.vb @@ -3159,6 +3159,50 @@ t => Process(tt => Process(null)) ]]>) End Sub + + Public Sub Relaxation08() + Dim file = + + TestExpressionTrees(file, + M1(a0 => Invoke(value(C1`1+_Closure$__1-0[System.String]).$VB$Local_anonymousDelegate, a0)) +]]>) + End Sub + + #End Region #Region "Xml Literals" From b01c83908e699806a00b17147477177562e27312 Mon Sep 17 00:00:00 2001 From: Tomas Matousek Date: Fri, 27 May 2016 12:40:24 -0700 Subject: [PATCH 035/255] Update nuget.exe to 3.5.0.1348 --- nuget.exe | Bin 3944664 -> 4081880 bytes 1 file changed, 0 insertions(+), 0 deletions(-) diff --git a/nuget.exe b/nuget.exe index 39fa53ac3f542c883ee69244823e438d56c2fb3b..2831a8e23a8999b61757e0ea21aa9157cc8df911 100644 GIT binary patch literal 4081880 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

Zt1#7J%B~F4h%LQ7y2a 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

n=S@$aI=Ke*--Zxm>ScYJ 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

gux#N9ix!KQ4Y^7s?Jh(8+$nmY?fU|6$Gg|%^ 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%0A@hZ9C_+*tzt+ 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