2 instantiations of ProjectId
Microsoft.CodeAnalysis.Workspaces (2)
Workspace\Solution\ProjectId.cs (2)
57=> new(Guid.NewGuid(), debugName); 66return new ProjectId(id, debugName);
2274 references to ProjectId
Analyzer.Utilities.UnitTests (4)
FlowAnalysis\Analysis\PropertySetAnalysis\PropertySetAnalysisTests.cs (2)
1226ProjectId projectId = ProjectId.CreateNewId(debugName: TestProjectName);
Options\SymbolNamesWithValueOptionTests.cs (2)
423var projectId = ProjectId.CreateNewId(debugName: TestProjectName);
AnalyzerRunner (11)
DiagnosticAnalyzerRunner.cs (10)
43foreach (var projectId in solution.ProjectIds) 103var projectPerformance = new Dictionary<ProjectId, double>(); 105foreach (var projectId in solution.ProjectIds) 146foreach (var projectId in solution.ProjectIds) 200private static void WriteDiagnosticResults(ImmutableArray<Tuple<ProjectId, Diagnostic>> diagnostics, string fileName) 314private static async Task<ImmutableDictionary<ProjectId, AnalysisResult>> GetAnalysisResultAsync( 320var projectDiagnosticBuilder = ImmutableDictionary.CreateBuilder<ProjectId, AnalysisResult>(); 324var projectDiagnosticTasks = new List<KeyValuePair<ProjectId, Task<AnalysisResult>>>(); 345projectDiagnosticTasks.Add(new KeyValuePair<ProjectId, Task<AnalysisResult>>(project.Id, resultTask)); 407internal static void WriteTelemetry(ImmutableDictionary<ProjectId, AnalysisResult> dictionary)
Program.cs (1)
140foreach (var projectId in projectIds)
GenerateDocumentationAndConfigFiles (1)
src\Workspaces\SharedUtilitiesAndExtensions\Workspace\Core\Extensions\ISolutionExtensions.cs (1)
38public static Project GetRequiredProject(this Solution solution, ProjectId projectId)
IdeCoreBenchmarks (8)
FormatterBenchmarks.cs (2)
45var projectId = ProjectId.CreateNewId();
ProjectOperationBenchmarks.cs (2)
65var projectId = ProjectId.CreateNewId(name);
RenameBenchmarks.cs (2)
39var projectId = ProjectId.CreateNewId();
SwitchStatementBenchmarks.cs (2)
62var projectId = ProjectId.CreateNewId();
Microsoft.AspNetCore.Analyzer.Testing (5)
DiagnosticProject.cs (3)
40var projectId = ProjectId.CreateNewId(debugName: TestProjectName); 67var testProject = solution.ProjectIds.Single();
DiagnosticVerifier.cs (2)
158var projectId = ProjectId.CreateNewId(debugName: TestProjectName);
Microsoft.AspNetCore.Components.Analyzers.Tests (2)
Helpers\DiagnosticVerifier.Helper.cs (2)
149var projectId = ProjectId.CreateNewId(debugName: TestProjectName);
Microsoft.AspNetCore.Components.SdkAnalyzers.Tests (2)
Helpers\DiagnosticVerifier.Helper.cs (2)
149var projectId = ProjectId.CreateNewId(debugName: TestProjectName);
Microsoft.CodeAnalysis.Analyzers (4)
MetaAnalyzers\Fixers\AnalyzerReleaseTrackingFix.FixAllProvider.cs (3)
161private readonly ImmutableArray<ProjectId> _projectIds; 164public FixAllAddAdditionalDocumentsAction(ImmutableArray<ProjectId> projectIds, Solution solution) 176foreach (var projectId in _projectIds)
src\Workspaces\SharedUtilitiesAndExtensions\Workspace\Core\Extensions\ISolutionExtensions.cs (1)
38public static Project GetRequiredProject(this Solution solution, ProjectId projectId)
Microsoft.CodeAnalysis.Analyzers.UnitTests (2)
MetaAnalyzers\DiagnosticDescriptorCreationAnalyzerTests.cs (1)
4673private static Solution WithoutEnableReleaseTrackingWarning(Solution solution, ProjectId projectId)
MetaAnalyzers\ReleaseTrackingAnalyzerTests.cs (1)
994private static Solution DisableNonReleaseTrackingWarnings(Solution solution, ProjectId projectId)
Microsoft.CodeAnalysis.BannedApiAnalyzers (1)
src\Workspaces\SharedUtilitiesAndExtensions\Workspace\Core\Extensions\ISolutionExtensions.cs (1)
38public static Project GetRequiredProject(this Solution solution, ProjectId projectId)
Microsoft.CodeAnalysis.BannedApiAnalyzers.UnitTests (1)
RestrictedInternalsVisibleToAnalyzerTests.cs (1)
127private static Solution ApplySolutionTransforms(Solution solution, ProjectId apiConsumerProjectId)
Microsoft.CodeAnalysis.CodeStyle.Fixes (2)
src\Analyzers\Core\CodeFixes\UpgradeProject\AbstractUpgradeProjectCodeFixProvider.cs (1)
79foreach (var projectId in solution.Projects.Select(p => p.Id))
src\Workspaces\SharedUtilitiesAndExtensions\Workspace\Core\Extensions\ISolutionExtensions.cs (1)
38public static Project GetRequiredProject(this Solution solution, ProjectId projectId)
Microsoft.CodeAnalysis.CodeStyle.UnitTestUtilities (1)
src\Features\DiagnosticsTestUtilities\CodeActions\SharedVerifierState.cs (1)
31private Func<Solution, ProjectId, Solution>? _remainingOptionsSolutionTransform;
Microsoft.CodeAnalysis.CSharp.CodeStyle.UnitTests (1)
src\Analyzers\CSharp\Tests\MatchFolderAndNamespace\CSharpMatchFolderAndNamespaceTests.cs (1)
937foreach (var id in solution.ProjectIds)
Microsoft.CodeAnalysis.CSharp.EditorFeatures.UnitTests (42)
CodeActions\AddUsing\AddUsingNuGetTests.cs (18)
56installerServiceMock.Setup(i => i.IsEnabled(It.IsAny<ProjectId>())).Returns(true); 57installerServiceMock.Setup(i => i.IsInstalled(It.IsAny<ProjectId>(), "NuGetPackage")).Returns(false); 93installerServiceMock.Setup(i => i.IsEnabled(It.IsAny<ProjectId>())).Returns(true); 94installerServiceMock.Setup(i => i.IsInstalled(It.IsAny<ProjectId>(), "NuGetPackage")).Returns(false); 128installerServiceMock.Setup(i => i.IsEnabled(It.IsAny<ProjectId>())).Returns(true); 129installerServiceMock.Setup(i => i.IsInstalled(It.IsAny<ProjectId>(), "NuGetPackage")).Returns(false); 163installerServiceMock.Setup(i => i.IsEnabled(It.IsAny<ProjectId>())).Returns(true); 164installerServiceMock.Setup(i => i.IsInstalled(It.IsAny<ProjectId>(), "NuGetPackage")).Returns(false); 198installerServiceMock.Setup(i => i.IsEnabled(It.IsAny<ProjectId>())).Returns(true); 200installerServiceMock.Setup(s => s.IsInstalled(It.IsAny<ProjectId>(), "NuGetPackage")) 223installerServiceMock.Setup(i => i.IsEnabled(It.IsAny<ProjectId>())).Returns(true); 224installerServiceMock.Setup(i => i.IsInstalled(It.IsAny<ProjectId>(), "NuGetPackage")).Returns(false); 274installerServiceMock.Setup(i => i.IsEnabled(It.IsAny<ProjectId>())).Returns(true); 275installerServiceMock.Setup(i => i.IsInstalled(It.IsAny<ProjectId>(), "NuGetPackage")).Returns(false); 310installerServiceMock.Setup(i => i.IsEnabled(It.IsAny<ProjectId>())).Returns(true); 311installerServiceMock.Setup(i => i.IsInstalled(It.IsAny<ProjectId>(), "NuGetPackage")).Returns(false); 347installerServiceMock.Setup(i => i.IsEnabled(It.IsAny<ProjectId>())).Returns(true); 348installerServiceMock.Setup(i => i.IsInstalled(It.IsAny<ProjectId>(), "NuGetPackage")).Returns(false);
CodeActions\PreviewTests.cs (2)
35private static readonly ProjectId s_addedProjectId = ProjectId.CreateNewId();
EditorConfigSettings\Updater\SettingsUpdaterTests.cs (2)
35var projectId = ProjectId.CreateNewId();
ExtractMethod\ExtractMethodTests.cs (2)
10051var projectId = ProjectId.CreateNewId();
SymbolKey\SymbolKeyTests.cs (3)
304(ProjectId bodyLocalProjectId, ProjectId referenceAssemblyProjectId) GetOriginatingProjectIds(Solution solution, ISymbol bodyLocalSymbol, ISymbol referenceAssemblySymbol) 307ProjectId bodyLocalProjectId, referenceAssemblyProjectId;
Workspaces\WorkspaceTests_EditorFeatures.cs (15)
285var id1 = snapshot.Projects.First(p => p.Name == project1.Name).Id; 286var id2 = snapshot.Projects.First(p => p.Name == project2.Name).Id; 324var id1 = snapshot.Projects.First(p => p.Name == project1.Name).Id; 325var id2 = snapshot.Projects.First(p => p.Name == project2.Name).Id; 411var id1 = snapshot.Projects.First(p => p.Name == project1.Name).Id; 433var id1 = snapshot.Projects.First(p => p.Name == project1.Name).Id; 434var id2 = snapshot.Projects.First(p => p.Name == project2.Name).Id; 461var id1 = snapshot.Projects.First(p => p.Name == project1.Name).Id; 462var id2 = snapshot.Projects.First(p => p.Name == project2.Name).Id; 498var id1 = solutionY.Projects.First(p => p.Name == project1.Name).Id; 499var id2 = solutionY.Projects.First(p => p.Name == project2.Name).Id; 556var id1 = solutionY.Projects.First(p => p.Name == project1.Name).Id; 557var id2 = solutionY.Projects.First(p => p.Name == project2.Name).Id; 628var id1 = solutionY.Projects.First(p => p.Name == project1.Name).Id; 629var id2 = solutionY.Projects.First(p => p.Name == project2.Name).Id;
Microsoft.CodeAnalysis.CSharp.Features (1)
CodeRefactorings\EnableNullable\EnableNullableCodeRefactoringProvider.FixAllProvider.cs (1)
43foreach (var projectId in solution.ProjectIds)
Microsoft.CodeAnalysis.CSharp.Features.UnitTests (5)
Diagnostics\Suppression\RemoveUnnecessaryPragmaSuppressionsTests.cs (1)
1249var projectId = workspace.Projects[0].Id;
EnableNullable\EnableNullableTests.cs (3)
26private static readonly Func<Solution, ProjectId, Solution> s_enableNullableInFixedSolution = 42private static readonly Func<Solution, ProjectId, Solution> s_enableNullableInFixedSolutionFromRestoreKeyword = 58private static readonly Func<Solution, ProjectId, Solution> s_enableNullableInFixedSolutionFromDisableKeyword =
src\Analyzers\CSharp\Tests\MatchFolderAndNamespace\CSharpMatchFolderAndNamespaceTests.cs (1)
937foreach (var id in solution.ProjectIds)
Microsoft.CodeAnalysis.CSharp.Workspaces.UnitTests (5)
CodeGeneration\AddAttributesTests.cs (1)
29ProjectId.CreateNewId(),
CodeGeneration\AddImportsTests.cs (2)
33ProjectId.CreateNewId(), 854ProjectId.CreateNewId(),
CodeGeneration\SymbolEditorTests.cs (2)
34var pid = ProjectId.CreateNewId();
Microsoft.CodeAnalysis.EditorFeatures (20)
EditAndContinue\EditAndContinueLanguageService.cs (1)
372ImmutableArray<ProjectInstanceId> ToProjectIntanceIds(IEnumerable<ProjectId> ids)
ExternalAccess\UnitTestGenerator\Api\WrappedAddImportFixData.cs (2)
32public ProjectId? ProjectReferenceToAdd => Underlying.ProjectReferenceToAdd; 38public ProjectId? PortableExecutableReferenceProjectId => Underlying.PortableExecutableReferenceProjectId;
Interactive\InteractiveSession.cs (7)
57private ProjectId? _lastSuccessfulSubmissionProjectId; 58private ProjectId? _currentSubmissionProjectId; 183ProjectId? initializationScriptProjectId = null; 210initializationScriptProjectId = ProjectId.CreateNewId(CreateNewSubmissionName()); 224_currentSubmissionProjectId = ProjectId.CreateNewId(newSubmissionProjectName); 271private Project CreateSubmissionProjectNoLock(Solution solution, ProjectId newSubmissionProjectId, ProjectId? previousSubmissionProjectId, string languageName, ImmutableArray<string> imports, ImmutableArray<MetadataReference> references)
Peek\DefinitionPeekableItem.cs (2)
20private readonly ProjectId _projectId; 27Workspace workspace, ProjectId projectId, SymbolKey symbolKey,
Preview\AbstractPreviewFactoryService.cs (2)
88var projectId = projectChanges.ProjectId; 235foreach (var projectId in preservedProjectIds)
Preview\SolutionPreviewItem.cs (3)
21internal sealed class SolutionPreviewItem(ProjectId? projectId, DocumentId? documentId, Func<CancellationToken, Task<object?>> lazyPreview) 23public readonly ProjectId? ProjectId = projectId; 28public SolutionPreviewItem(ProjectId? projectId, DocumentId? documentId, string text)
Preview\SolutionPreviewResult.cs (1)
33public async Task<IReadOnlyList<object>?> GetPreviewsAsync(DocumentId? preferredDocumentId = null, ProjectId? preferredProjectId = null, CancellationToken cancellationToken = default)
SolutionEvents\HostLegacySolutionEventsWorkspaceEventListener.cs (1)
77var projectId = e.ProjectId ?? e.DocumentId?.ProjectId;
Suggestions\SuggestedActionWithNestedFlavors.cs (1)
158var preferredProjectId = preferredDocumentId?.ProjectId;
Microsoft.CodeAnalysis.EditorFeatures.Test.Utilities (12)
Diagnostics\GenerateType\TestProjectManagementService.cs (1)
26public IList<string> GetFolders(ProjectId projectId, Workspace workspace)
Rename\RenamerTests.cs (6)
43var projectId = ProjectId.CreateNewId(); 178var projectId = ProjectId.CreateNewId(); 217var projectId = ProjectId.CreateNewId();
Workspaces\EditorTestWorkspace.cs (2)
217internal override bool CanAddProjectReference(ProjectId referencingProject, ProjectId referencedProject)
Workspaces\TestAddMetadataReferenceCodeActionOperationFactoryWorkspaceService.cs (3)
24public CodeActionOperation CreateAddMetadataReferenceOperation(ProjectId projectId, AssemblyIdentity assemblyIdentity) 29public readonly ProjectId ProjectId; 32public Operation(ProjectId projectId, AssemblyIdentity assemblyIdentity)
Microsoft.CodeAnalysis.EditorFeatures.UnitTests (30)
CodeGeneration\AbstractCodeGenerationTests.cs (2)
29var projectId = ProjectId.CreateNewId();
CodeGeneration\CodeGenerationTests.cs (2)
646var projectId = ProjectId.CreateNewId();
Diagnostics\DiagnosticAnalyzerServiceTests.cs (7)
154ProjectId.CreateNewId(), 242var projectId = ProjectId.CreateNewId(); 313var projectId = ProjectId.CreateNewId(); 361var projectInfo = ProjectInfo.Create(ProjectId.CreateNewId(), VersionStamp.Create(), "CSharpProject", "CSharpProject", LanguageNames.CSharp); 814ProjectId.CreateNewId(),
EditAndContinue\EditAndContinueLanguageServiceTests.cs (7)
122.AddTestProject("proj", out var projectId) 214ProjectsToRestart = ImmutableDictionary<ProjectId, ImmutableArray<ProjectId>>.Empty.Add(projectId, []), 285ProjectsToRestart = ImmutableDictionary<ProjectId, ImmutableArray<ProjectId>>.Empty, 362var projectId = ProjectId.CreateNewId();
MetadataAsSource\AbstractMetadataAsSourceTests.cs (2)
90var projectId = ProjectId.CreateNewId();
MetadataAsSource\MetadataAsSourceTests.cs (4)
1852var projectId = ProjectId.CreateNewId(); 1866var projectId = ProjectId.CreateNewId();
SymbolFinder\SymbolFinderTests.cs (5)
28private static Solution AddProjectWithMetadataReferences(Solution solution, string projectName, string languageName, string code, MetadataReference metadataReference, params ProjectId[] projectReferences) 31var pid = ProjectId.CreateNewId(); 815var referencedProjectId = solution.Projects.Single(p => p.Name == "ReferencedProject").Id; 858var referencedProjectId = solution.Projects.Single(p => p.Name == "ReferencedProject").Id;
TextEditor\OpenDocumentTests.cs (1)
41var projectId = workspace.AddProject($"Project{i}", LanguageNames.CSharp).Id;
Microsoft.CodeAnalysis.EditorFeatures2.UnitTests (5)
Diagnostics\DiagnosticProviderTests.vb (4)
327Private Shared Function GetProjectId(workspace As EditorTestWorkspace, projectName As String) As ProjectId 339Private Shared Function SourceError(id As String, message As String, docId As DocumentId, projId As ProjectId, mappedLine As Integer, originalLine As Integer, mappedColumn As Integer, 344Private Shared Function SourceWarning(id As String, message As String, docId As DocumentId, projId As ProjectId, mappedLine As Integer, originalLine As Integer, mappedColumn As Integer, 349Private Shared Function CreateDiagnostic(id As String, message As String, severity As DiagnosticSeverity, docId As DocumentId, projId As ProjectId, mappedLine As Integer, originalLine As Integer, mappedColumn As Integer,
Simplification\ParameterSimplificationTests.vb (1)
19Dim projId = ProjectId.CreateNewId()
Microsoft.CodeAnalysis.ExternalAccess.Copilot (2)
Internal\SemanticSearch\CopilotSemanticSearchSolutionService.cs (1)
31public (WorkspaceChangeKind changeKind, ProjectId? projectId, DocumentId? documentId) GetWorkspaceChangeKind(Solution oldSolution, Solution newSolution)
SemanticSearch\ICopilotSemanticSearchSolutionService.cs (1)
12(WorkspaceChangeKind changeKind, ProjectId? projectId, DocumentId? documentId) GetWorkspaceChangeKind(Solution oldSolution, Solution newSolution);
Microsoft.CodeAnalysis.ExternalAccess.Debugger (1)
GlassTestsHotReloadService.cs (1)
87var results = (await _encService.EmitSolutionUpdateAsync(GetSessionId(), solution, runningProjects: ImmutableDictionary<ProjectId, RunningProjectOptions>.Empty, s_noActiveStatementSpanProvider, cancellationToken).ConfigureAwait(false)).Dehydrate();
Microsoft.CodeAnalysis.ExternalAccess.FSharp (8)
Diagnostics\IFSharpDiagnosticAnalyzerService.cs (1)
16void Reanalyze(Workspace workspace, IEnumerable<ProjectId> projectIds = null, IEnumerable<DocumentId> documentIds = null, bool highPriority = false);
Internal\Diagnostics\FSharpDiagnosticAnalyzerService.cs (1)
21public void Reanalyze(Workspace workspace, IEnumerable<ProjectId> projectIds = null, IEnumerable<DocumentId> documentIds = null, bool highPriority = false)
LanguageServices\FSharpVisualStudioWorkspaceExtensions.cs (4)
22public static bool TryGetProjectIdByBinPath(this VisualStudioWorkspace workspace, string filePath, [NotNullWhen(true)] out ProjectId? projectId) 39public static ProjectId GetOrCreateProjectIdForPath(this VisualStudioWorkspace workspace, string filePath, string projectDisplayName) 44return workspace.CurrentSolution.Projects.FirstOrDefault(p => p.FilePath == filePath)?.Id ?? ProjectId.CreateNewId("ProjectNotFound"); 48public static string? GetProjectFilePath(this VisualStudioWorkspace workspace, ProjectId projectId)
VS\IFSharpWorkspaceProjectContextFactory.cs (2)
26ProjectId Id { get; } 130public ProjectId Id
Microsoft.CodeAnalysis.ExternalAccess.OmniSharp (1)
Workspace\OmniSharpDocumentId.cs (1)
11public static DocumentId CreateFromSerialized(ProjectId projectId, Guid id, bool isSourceGenerated, string? debugName)
Microsoft.CodeAnalysis.ExternalAccess.Razor.Features (7)
IRazorDynamicFileInfoProvider.cs (3)
15/// indicate content of a file has updated. the event argument "string" should be same as "filepath" given to <see cref="GetDynamicFileInfoAsync(ProjectId, string, string, CancellationToken)"/> 22Task<RazorDynamicFileInfo?> GetDynamicFileInfoAsync(ProjectId projectId, string? projectFilePath, string filePath, CancellationToken cancellationToken); 27Task RemoveDynamicFileInfoAsync(ProjectId projectId, string? projectFilePath, string filePath, CancellationToken cancellationToken);
RazorLspDynamicFileInfoProvider.cs (2)
13public abstract Task<RazorDynamicFileInfo?> GetDynamicFileInfoAsync(Workspace workspace, ProjectId projectId, string? projectFilePath, string filePath, CancellationToken cancellationToken); 14public abstract Task RemoveDynamicFileInfoAsync(Workspace workspace, ProjectId projectId, string? projectFilePath, string filePath, CancellationToken cancellationToken);
RazorWorkspaceService.cs (1)
10public abstract void NotifyDynamicFile(ProjectId projectId);
Remote\JsonSerializableDocumentId.cs (1)
24return DocumentId.CreateFromSerialized(CodeAnalysis.ProjectId.CreateFromSerialized(serializableDocumentId.ProjectId), serializableDocumentId.Id);
Microsoft.CodeAnalysis.Features (253)
AddImport\AddImportFixData.cs (6)
22ProjectId projectReferenceToAdd = null, 23ProjectId portableExecutableReferenceProjectId = null, 67public readonly ProjectId ProjectReferenceToAdd = projectReferenceToAdd; 79public readonly ProjectId PortableExecutableReferenceProjectId = portableExecutableReferenceProjectId; 113public static AddImportFixData CreateForProjectSymbol(ImmutableArray<TextChange> textChanges, string title, ImmutableArray<string> tags, CodeActionPriority priority, ProjectId projectReferenceToAdd) 121public static AddImportFixData CreateForMetadataSymbol(ImmutableArray<TextChange> textChanges, string title, ImmutableArray<string> tags, CodeActionPriority priority, ProjectId portableExecutableReferenceProjectId, string portableExecutableReferenceFilePathToAdd)
AddImport\CodeActions\ProjectSymbolReferenceCodeAction.cs (4)
55private sealed class AddProjectReferenceCodeActionOperation(ProjectId referencingProject, ProjectId referencedProject, ApplyChangesOperation applyOperation) : CodeActionOperation 57private readonly ProjectId _referencingProject = referencingProject; 58private readonly ProjectId _referencedProject = referencedProject;
AddImport\References\MetadataSymbolReference.cs (2)
24ProjectId referenceProjectId, 27private readonly ProjectId _referenceProjectId = referenceProjectId;
AddMissingReference\AddMissingReferenceCodeAction.cs (1)
50foreach (var candidateProjectId in dependencyGraph.GetProjectsThatThisProjectTransitivelyDependsOn(project.Id))
CodeFixes\Configuration\ConfigurationUpdater.cs (1)
305foreach (var projectId in _project.Solution.ProjectIds)
CodeLens\CodeLensHelpers.cs (2)
19var projectId = ProjectId.CreateFromSerialized(projectIdGuid);
CodeLens\CodeLensReferencesService.cs (1)
84public async ValueTask<VersionStamp> GetProjectCodeLensVersionAsync(Solution solution, ProjectId projectId, CancellationToken cancellationToken)
CodeLens\ICodeLensReferencesService.cs (1)
14ValueTask<VersionStamp> GetProjectCodeLensVersionAsync(Solution solution, ProjectId projectId, CancellationToken cancellationToken);
CodeRefactorings\WorkspaceServices\IAddMetadataReferenceCodeActionOperationFactoryWorkspaceService.cs (1)
11CodeActionOperation CreateAddMetadataReferenceOperation(ProjectId projectId, AssemblyIdentity assemblyIdentity);
Completion\Providers\AbstractInternalsVisibleToCompletionProvider.cs (2)
271var projectId = ProjectId.CreateFromSerialized(new Guid(projectIdGuid));
Completion\Providers\AbstractSymbolCompletionProvider.cs (8)
151Dictionary<ISymbol, ArrayBuilder<ProjectId>>? invalidProjectMap, 152ImmutableArray<ProjectId> totalProjects) 250Dictionary<ISymbol, ArrayBuilder<ProjectId>>? invalidProjectMap, 251ImmutableArray<ProjectId> totalProjects) 256ArrayBuilder<ProjectId>? invalidProjects = null; 453private static Dictionary<ISymbol, ArrayBuilder<ProjectId>> FindSymbolsMissingInLinkedContexts( 457var missingSymbols = new Dictionary<ISymbol, ArrayBuilder<ProjectId>>(LinkedFilesSymbolEquivalenceComparer.Instance); 463missingSymbols.GetOrAdd(symbol, m => ArrayBuilder<ProjectId>.GetInstance()).Add(documentId.ProjectId);
Completion\Providers\CompletionUtilities.cs (1)
34using var _ = PooledHashSet<ProjectId>.GetInstance(out var projectIds);
Completion\Providers\ImportCompletionProvider\AbstractTypeImportCompletionService.cs (3)
27private static readonly ConditionalWeakTable<ProjectId, TypeImportCompletionCacheEntry> s_projectItemsCache = new(); 90using var _3 = PooledHashSet<ProjectId>.GetInstance(out var nonGlobalAliasedProjectReferencesSet); 102var projectId = project.Id;
Completion\Providers\ImportCompletionProvider\ExtensionMethodImportCompletionHelper.cs (2)
33private static readonly ConcurrentDictionary<ProjectId, ExtensionMethodImportCompletionCacheEntry> s_projectItemsCache = new(); 236var projectId = project.Id;
Completion\Providers\ImportCompletionProvider\IRemoteExtensionMethodImportCompletionService.cs (1)
24ValueTask WarmUpCacheAsync(Checksum solutionChecksum, ProjectId projectId, CancellationToken cancellationToken);
Completion\Providers\SymbolCompletionItem.cs (4)
245private static ImmutableArray<ProjectId> SplitIntoProjectIds(string projectIds) 250using var _ = ArrayBuilder<ProjectId>.GetInstance(out var builder); 259builder.Add(ProjectId.CreateFromSerialized(projectGuid)); 271builder.Add(ProjectId.CreateFromSerialized(projectGuid));
Contracts\EditAndContinue\ManagedHotReloadUpdate.cs (2)
15ProjectId projectId, 33public ProjectId ProjectId { get; } = projectId;
ConvertTupleToStruct\AbstractConvertTupleToStructCodeRefactoringProvider.cs (1)
461var allProjects = dependentProjects.Select<ProjectId, Project>(solution.GetRequiredProject)
DesignerAttribute\DesignerAttributeDiscoveryService.cs (1)
171foreach (var projectId in dependencyGraph.GetTopologicallySortedProjects(cancellationToken))
Diagnostics\CodeAnalysisDiagnosticAnalyzerService.cs (4)
35private readonly ConcurrentDictionary<ProjectId, ImmutableArray<DiagnosticData>> _analyzedProjectToDiagnostics = []; 44private readonly ConcurrentSet<ProjectId> _clearedProjectIds = []; 82public bool HasProjectBeenAnalyzed(ProjectId projectId) 136public ImmutableArray<DiagnosticData> GetLastComputedProjectDiagnostics(ProjectId projectId)
Diagnostics\DiagnosticsUpdatedArgs.cs (4)
19public readonly ProjectId? ProjectId; 29ProjectId? projectId, 46ProjectId? projectId, 55ProjectId? projectId,
Diagnostics\ICodeAnalysisDiagnosticAnalyzerService.cs (4)
31bool HasProjectBeenAnalyzed(ProjectId projectId); 36/// caller is expected to check <see cref="HasProjectBeenAnalyzed(ProjectId)"/> prior to calling this method. 46/// solution. The caller is expected to check <see cref="HasProjectBeenAnalyzed(ProjectId)"/> prior to calling this 52ImmutableArray<DiagnosticData> GetLastComputedProjectDiagnostics(ProjectId projectId);
Diagnostics\Service\EngineV2\DiagnosticIncrementalAnalyzer.StateManager.cs (2)
35private ImmutableDictionary<ProjectId, ProjectAnalyzerInfo> _projectAnalyzerStateMap = ImmutableDictionary<ProjectId, ProjectAnalyzerInfo>.Empty;
EditAndContinue\CommittedSolution.cs (6)
79private ImmutableDictionary<ProjectId, Guid> _staleProjects = ImmutableDictionary<ProjectId, Guid>.Empty; 141public Project? GetProject(ProjectId id) 144public Project GetRequiredProject(ProjectId id) 147public ImmutableDictionary<ProjectId, Guid> StaleProjects 458public void CommitChanges(Solution solution, ImmutableDictionary<ProjectId, Guid> staleProjects)
EditAndContinue\DebuggingSession.cs (14)
77private readonly Dictionary<ProjectId, ImmutableList<ProjectBaseline>> _projectBaselines = []; 373ProjectId projectId, 526ImmutableDictionary<ProjectId, RunningProjectOptions> runningProjects, 593using var _ = PooledHashSet<ProjectId>.GetInstance(out var projectsToRebuildTransitive); 594IEnumerable<ProjectId> baselinesToDiscard = []; 615foreach (var projectId in pendingSolutionUpdate.ProjectsToRebuild) 624foreach (var projectId in projectsToRebuildTransitive) 663private void DiscardProjectBaselinesNoLock(Solution solution, IEnumerable<ProjectId> projects) 665foreach (var projectId in projects) 700using var _1 = PooledDictionary<string, ArrayBuilder<(ProjectId, int)>>.GetInstance(out var documentIndicesByMappedPath); 701using var _2 = PooledHashSet<ProjectId>.GetInstance(out var projectIds); 735foreach (var projectId in projectIds) 942public ImmutableList<ProjectBaseline> GetProjectBaselines(ProjectId projectId) 950public bool HasProjectEmitBaseline(ProjectId projectId)
EditAndContinue\EditAndContinueService.cs (1)
223ImmutableDictionary<ProjectId, RunningProjectOptions> runningProjects,
EditAndContinue\EditSession.cs (4)
960ImmutableDictionary<ProjectId, RunningProjectOptions> runningProjects, 972using var _4 = ArrayBuilder<ProjectId>.GetInstance(out var addedUnbuiltProjects); 973using var _5 = ArrayBuilder<ProjectId>.GetInstance(out var projectsToRedeploy); 974using var _6 = PooledDictionary<ProjectId, ArrayBuilder<Diagnostic>>.GetInstance(out var diagnosticBuilders);
EditAndContinue\EmitSolutionUpdateResults.cs (38)
36public required ImmutableDictionary<ProjectId, ImmutableArray<ProjectId>> ProjectsToRestart { get; init; } 39public required ImmutableArray<ProjectId> ProjectsToRebuild { get; init; } 42public required ImmutableArray<ProjectId> ProjectsToRedeploy { get; init; } 81public static Data CreateFromInternalError(Solution solution, string errorMessage, ImmutableDictionary<ProjectId, RunningProjectOptions> runningProjects) 110ProjectsToRestart = ImmutableDictionary<ProjectId, ImmutableArray<ProjectId>>.Empty, 137public required ImmutableDictionary<ProjectId, ImmutableArray<ProjectId>> ProjectsToRestart { get; init; } 144public required ImmutableArray<ProjectId> ProjectsToRebuild { get; init; } 150public required ImmutableArray<ProjectId> ProjectsToRedeploy { get; init; } 159ProjectsToRestart = ImmutableDictionary<ProjectId, ImmutableArray<ProjectId>>.Empty, 202IReadOnlyCollection<ProjectId> addedUnbuiltProjects, 203ImmutableDictionary<ProjectId, RunningProjectOptions> runningProjects, 204out ImmutableDictionary<ProjectId, ImmutableArray<ProjectId>> projectsToRestart, 205out ImmutableArray<ProjectId> projectsToRebuild) 232using var _1 = ArrayBuilder<ProjectId>.GetInstance(out var traversalStack); 235using var _2 = PooledHashSet<ProjectId>.GetInstance(out var projectsToRestartBuilder); 236var projectsToRebuildBuilder = PooledDictionary<ProjectId, ArrayBuilder<ProjectId>>.GetInstance(); 238using var _3 = ArrayBuilder<(ProjectId projectWithRudeEdits, ImmutableArray<ProjectId> impactedRunningProjects)>.GetInstance(out var impactedRunningProjectMap); 249foreach (var ancestor in GetAncestorsAndSelf(projectId)) 271foreach (var projectId in addedUnbuiltProjects) 292using var _6 = PooledHashSet<ProjectId>.GetInstance(out var updatedProjects); 293using var _7 = ArrayBuilder<ProjectId>.GetInstance(out var updatedProjectsToRemove); 294using var _8 = PooledHashSet<ProjectId>.GetInstance(out var projectsThatCausedRebuild); 302foreach (var updatedProjectId in updatedProjects) 310foreach (var ancestor in GetAncestorsAndSelf(updatedProjectId)) 324foreach (var ancestor in GetAncestorsAndSelf(updatedProjectId)) 369IEnumerable<ProjectId> GetAncestorsAndSelf(ProjectId initialProject) 376var projectId = traversalStack.Pop(); 379foreach (var referencingProjectId in graph.GetProjectsThatDirectlyDependOnThisProject(projectId)) 424public ImmutableArray<(ProjectId projectId, ImmutableArray<Diagnostic> diagnostics)> GetTransientDiagnostics() 426using var _ = ArrayBuilder<(ProjectId projectId, ImmutableArray<Diagnostic> diagnostics)>.GetInstance(out var result);
EditAndContinue\IEditAndContinueService.cs (1)
22ValueTask<EmitSolutionUpdateResults> EmitSolutionUpdateAsync(DebuggingSessionId sessionId, Solution solution, ImmutableDictionary<ProjectId, RunningProjectOptions> runningProjects, ActiveStatementSpanProvider activeStatementSpanProvider, CancellationToken cancellationToken);
EditAndContinue\PendingSolutionUpdate.cs (4)
21ImmutableDictionary<ProjectId, Guid> staleProjects, 22ImmutableArray<ProjectId> projectsToRebuild, 28public readonly ImmutableDictionary<ProjectId, Guid> StaleProjects = staleProjects; 29public readonly ImmutableArray<ProjectId> ProjectsToRebuild = projectsToRebuild;
EditAndContinue\ProjectBaseline.cs (2)
12internal sealed class ProjectBaseline(Guid moduleId, ProjectId projectId, EmitBaseline emitBaseline, ImmutableDictionary<string, OneOrMany<AssemblyIdentity>> initiallyReferencedAssemblies, int generation) 15public ProjectId ProjectId { get; } = projectId;
EditAndContinue\ProjectDiagnostics.cs (1)
12internal readonly record struct ProjectDiagnostics(ProjectId ProjectId, ImmutableArray<Diagnostic> Diagnostics);
EditAndContinue\Remote\IRemoteEditAndContinueService.cs (1)
30ValueTask<EmitSolutionUpdateResults.Data> EmitSolutionUpdateAsync(Checksum solutionChecksum, RemoteServiceCallbackId callbackId, DebuggingSessionId sessionId, ImmutableDictionary<ProjectId, RunningProjectOptions> runningProjects, CancellationToken cancellationToken);
EditAndContinue\Remote\RemoteDebuggingSessionProxy.cs (1)
57ImmutableDictionary<ProjectId, RunningProjectOptions> runningProjects,
EditAndContinue\RunningProjectOptions.cs (2)
25public static ImmutableDictionary<ProjectId, RunningProjectOptions> ToRunningProjectOptions<TInfo>( 42var result = ImmutableDictionary.CreateBuilder<ProjectId, RunningProjectOptions>();
EditAndContinue\SolutionUpdate.cs (13)
14ImmutableDictionary<ProjectId, Guid> staleProjects, 19ImmutableDictionary<ProjectId, ImmutableArray<ProjectId>> projectsToRestart, 20ImmutableArray<ProjectId> projectsToRebuild, 21ImmutableArray<ProjectId> projectsToRedeploy) 24public readonly ImmutableDictionary<ProjectId, Guid> StaleProjects = staleProjects; 31public readonly ImmutableDictionary<ProjectId, ImmutableArray<ProjectId>> ProjectsToRestart = projectsToRestart; 32public readonly ImmutableArray<ProjectId> ProjectsToRebuild = projectsToRebuild; 33public readonly ImmutableArray<ProjectId> ProjectsToRedeploy = projectsToRedeploy; 38ImmutableDictionary<ProjectId, Guid> staleProjects, 47projectsToRestart: ImmutableDictionary<ProjectId, ImmutableArray<ProjectId>>.Empty,
Emit\ICompilationOutputsProviderService.cs (1)
11CompilationOutputs GetCompilationOutputs(ProjectId projectId);
EncapsulateField\AbstractEncapsulateFieldService.cs (3)
236var projectId = document.Project.Id; 238using var _ = PooledHashSet<ProjectId>.GetInstance(out var linkedProjectIds); 279HashSet<ProjectId> linkedProjectIds,
ExternalAccess\UnitTesting\API\UnitTestingHotReloadService.cs (1)
95.EmitSolutionUpdateAsync(sessionId, solution, runningProjects: ImmutableDictionary<ProjectId, RunningProjectOptions>.Empty, s_solutionActiveStatementSpanProvider, cancellationToken)
ExternalAccess\UnitTesting\IRemoteUnitTestingSearchService.cs (2)
16Checksum solutionChecksum, ProjectId projectId, UnitTestingSearchQuery query, CancellationToken cancellationToken); 18Checksum solutionChecksum, ProjectId projectId, UnitTestingSearchQuery query, CancellationToken cancellationToken);
ExternalAccess\UnitTesting\SolutionCrawler\IUnitTestingSolutionCrawlerService.cs (2)
16/// Ask solution crawler to re-analyze given <see cref="ProjectId"/>s or/and <see cref="DocumentId"/>s 19void Reanalyze(string? workspaceKind, SolutionServices services, IUnitTestingIncrementalAnalyzer analyzer, IEnumerable<ProjectId>? projectIds = null, IEnumerable<DocumentId>? documentIds = null);
ExternalAccess\UnitTesting\SolutionCrawler\UnitTestingSolutionCrawlerLogger.cs (1)
151public static void LogWorkItemEnqueue(CountLogAggregator<object> logAggregator, ProjectId _)
ExternalAccess\UnitTesting\SolutionCrawler\UnitTestingSolutionCrawlerRegistrationService.cs (1)
128public void Reanalyze(string? workspaceKind, SolutionServices services, IUnitTestingIncrementalAnalyzer analyzer, IEnumerable<ProjectId>? projectIds, IEnumerable<DocumentId>? documentIds)
ExternalAccess\UnitTesting\SolutionCrawler\UnitTestingSolutionCrawlerService.cs (1)
30public void Reanalyze(string? workspaceKind, SolutionServices services, IUnitTestingIncrementalAnalyzer analyzer, IEnumerable<ProjectId>? projectIds = null, IEnumerable<DocumentId>? documentIds = null)
ExternalAccess\UnitTesting\SolutionCrawler\UnitTestingWorkCoordinator.cs (7)
248foreach (var projectId in solution.ProjectIds) 255private void EnqueueProjectChangedEvent(Solution oldSolution, Solution newSolution, ProjectId projectId) 267private void EnqueueFullProjectEvent(Solution solution, ProjectId projectId, UnitTestingInvocationReasons invocationReasons) 524public UnitTestingReanalyzeScope(IEnumerable<ProjectId>? projectIds = null, IEnumerable<DocumentId>? documentIds = null) 567case ProjectId projectId: 615case ProjectId projectId: 658case ProjectId projectId:
ExternalAccess\UnitTesting\SolutionCrawler\UnitTestingWorkCoordinator.UnitTestingAsyncDocumentWorkItemQueue.cs (4)
18private readonly Dictionary<ProjectId, Dictionary<DocumentId, UnitTestingWorkItem>> _documentWorkQueue = []; 43ProjectId? preferableProjectId, 63ProjectId? preferableProjectId) 65var projectId = GetBestProjectId_NoLock(
ExternalAccess\UnitTesting\SolutionCrawler\UnitTestingWorkCoordinator.UnitTestingAsyncProjectWorkItemQueue.cs (6)
16private sealed class UnitTestingAsyncProjectWorkItemQueue(UnitTestingSolutionCrawlerProgressReporter progressReporter) : UnitTestingAsyncWorkItemQueue<ProjectId>(progressReporter) 18private readonly Dictionary<ProjectId, UnitTestingWorkItem> _projectWorkQueue = []; 32protected override bool TryTake_NoLock(ProjectId key, out UnitTestingWorkItem workInfo) 44ProjectId? preferableProjectId, 54var projectId = GetBestProjectId_NoLock( 66var key = item.ProjectId;
ExternalAccess\UnitTesting\SolutionCrawler\UnitTestingWorkCoordinator.UnitTestingAsyncWorkItemQueue.cs (5)
40ProjectId? preferableProjectId, 208ProjectId? preferableProjectId, 240protected static ProjectId GetBestProjectId_NoLock<T>( 241Dictionary<ProjectId, T> workQueue, 242ProjectId? projectId)
ExternalAccess\UnitTesting\SolutionCrawler\UnitTestingWorkCoordinator.UnitTestingLowPriorityProcessor.cs (2)
125var projectId = workItem.ProjectId; 196var uniqueIds = new HashSet<ProjectId>();
ExternalAccess\UnitTesting\SolutionCrawler\UnitTestingWorkCoordinator.UnitTestingNormalPriorityProcessor.cs (2)
36private ProjectId? _currentProjectProcessing; 165private void SetProjectProcessing(ProjectId currentProject)
ExternalAccess\UnitTesting\SolutionCrawler\UnitTestingWorkCoordinator.UnitTestingSemanticChangeProcessor.cs (11)
177var projectId = thisDocument.Id.ProjectId; 211var self = project.Id; 224foreach (var projectId in GetProjectsToAnalyze(solution, self)) 300private static IEnumerable<ProjectId> GetProjectsToAnalyze(Solution solution, ProjectId projectId) 323private static readonly Func<int, ProjectId, string> s_enqueueLogger = (t, i) => string.Format("[{0}] {1}", t, i.ToString()); 331private readonly Dictionary<ProjectId, UnitTestingData> _pendingWork = []; 361public void Enqueue(ProjectId projectId, bool needDependencyTracking = false) 419foreach (var projectId in GetProjectsToAnalyze(solution, data.ProjectId)) 439private readonly struct UnitTestingData(ProjectId projectId, bool needDependencyTracking, IAsyncToken asyncToken) 442public readonly ProjectId ProjectId = projectId;
ExternalAccess\UnitTesting\SolutionCrawler\UnitTestingWorkCoordinator.UnitTestingWorkItem.cs (2)
23public readonly ProjectId ProjectId; 57ProjectId projectId,
ExternalAccess\VSTypeScript\Api\IVSTypeScriptDiagnosticAnalyzerService.cs (1)
17void Reanalyze(Workspace? workspace = null, IEnumerable<ProjectId>? projectIds = null, IEnumerable<DocumentId>? documentIds = null, bool highPriority = false);
ExternalAccess\VSTypeScript\VSTypeScriptDiagnosticAnalyzerService.cs (1)
19public void Reanalyze(Workspace? workspace, IEnumerable<ProjectId>? projectIds, IEnumerable<DocumentId>? documentIds, bool highPriority)
ExternalAccess\Watch\Api\WatchHotReloadService.cs (8)
41public readonly ProjectId ProjectId; 50ProjectId projectId, 111public required ImmutableArray<(ProjectId project, ImmutableArray<Diagnostic> diagnostics)> RudeEdits { get; init; } 122public required ImmutableDictionary<ProjectId, ImmutableArray<ProjectId>> ProjectsToRestart { get; init; } 127public required ImmutableArray<ProjectId> ProjectsToRebuild { get; init; } 132public required ImmutableArray<ProjectId> ProjectsToRedeploy { get; init; } 205public async Task<Updates2> GetUpdatesAsync(Solution solution, ImmutableDictionary<ProjectId, RunningProjectInfo> runningProjects, CancellationToken cancellationToken)
FindUsages\DefinitionItem.DefaultDefinitionItem.cs (1)
68var project = solution.GetProject(ProjectId.CreateFromSerialized(Guid.Parse(projectIdGuid), projectDebugName));
FindUsages\DefinitionItemFactory.cs (4)
123var metadataLocations = GetMetadataLocations(definition, solution, out var originatingProjectId); 148internal static ImmutableDictionary<string, string> WithMetadataSymbolProperties(this ImmutableDictionary<string, string> properties, ISymbol symbol, ProjectId originatingProjectId) 154internal static AssemblyLocation GetMetadataLocation(IAssemblySymbol assembly, Solution solution, out ProjectId originatingProjectId) 164internal static ImmutableArray<AssemblyLocation> GetMetadataLocations(ISymbol definition, Solution solution, out ProjectId? originatingProjectId)
InheritanceMargin\AbstractInheritanceMarginService_Helpers.cs (1)
731var metadataLocation = DefinitionItemFactory.GetMetadataLocation(symbol.ContainingAssembly, solution, out var originatingProjectId);
LegacySolutionEvents\IRemoteLegacySolutionEventsAggregationService.cs (1)
24ValueTask OnWorkspaceChangedAsync(Checksum oldSolutionChecksum, Checksum newSolutionChecksum, WorkspaceChangeKind kind, ProjectId? projectId, DocumentId? documentId, CancellationToken cancellationToken);
MetadataAsSource\DecompilationMetadataAsSourceFileProvider.cs (2)
318var projectId = ProjectId.CreateNewId();
MetadataAsSource\MetadataAsSourceGeneratedFileInfo.cs (1)
16public ProjectId SourceProjectId { get; }
MoveStaticMembers\MoveStaticMembersWithDialogCodeAction.cs (2)
217ILookup<ProjectId, (ReferenceLocation location, bool isExtensionMethod)> projectToLocations, 346ProjectId projectId,
NavigateTo\AbstractNavigateToSearchService.InProcess.cs (6)
55using var _ = ArrayBuilder<(TopLevelSyntaxTreeIndex, ProjectId)>.GetInstance(out var linkedIndices); 76ArrayBuilder<(TopLevelSyntaxTreeIndex, ProjectId)>? linkedIndices, 133ImmutableArray<ProjectId> additionalMatchingProjects) 164private static ImmutableArray<ProjectId> GetAdditionalProjectsWithMatch( 167ArrayBuilder<(TopLevelSyntaxTreeIndex, ProjectId)>? linkedIndices) 172using var result = TemporaryArray<ProjectId>.Empty;
NavigateTo\IRemoteNavigateToSearchService.cs (2)
21ValueTask SearchProjectsAsync(Checksum solutionChecksum, ImmutableArray<ProjectId> projectIds, ImmutableArray<DocumentId> priorityDocumentIds, string searchPattern, ImmutableArray<string> kinds, RemoteServiceCallbackId callbackId, CancellationToken cancellationToken); 23ValueTask SearchGeneratedDocumentsAsync(Checksum solutionChecksum, ImmutableArray<ProjectId> projectIds, string searchPattern, ImmutableArray<string> kinds, RemoteServiceCallbackId callbackId, CancellationToken cancellationToken);
NavigateTo\NavigateToSearcher.cs (1)
467using var _ = PooledHashSet<ProjectId>.GetInstance(out var allProjectIdSet);
NavigateTo\RoslynNavigateToItem.cs (3)
30ImmutableArray<ProjectId> additionalMatchingProjects, 45public readonly ImmutableArray<ProjectId> AdditionalMatchingProjects = additionalMatchingProjects; 156foreach (var additionalProjectId in item.AdditionalMatchingProjects)
Navigation\INavigableItem.cs (1)
90record struct NavigableProject(string Name, ProjectId Id)
PdbSourceDocument\PdbSourceDocumentMetadataAsSourceFileProvider.cs (8)
52private readonly Dictionary<string, ProjectId> _assemblyToProjectMap = []; 59private readonly HashSet<ProjectId> _sourceLinkEnabledProjects = []; 209if (!_assemblyToProjectMap.TryGetValue(assemblyName, out var projectId)) 310var projectId = ProjectId.CreateNewId(); 326SourceFileInfo?[] sourceFileInfos, Encoding encoding, ProjectId projectId, Workspace sourceWorkspace, Project sourceProject) 402foreach (var projectId in _assemblyToProjectMap.Values) 433internal record struct SourceDocumentInfo(DocumentId DocumentId, Encoding Encoding, SourceHashAlgorithm ChecksumAlgorithm, ProjectId SourceProjectId, Workspace SourceWorkspace, DocumentInfo DocumentInfo);
ProjectManagement\IProjectManagementService.cs (1)
16IList<string> GetFolders(ProjectId projectId, Workspace workspace);
QuickInfo\CommonSemanticQuickInfoProvider.cs (1)
123using var _ = ArrayBuilder<ProjectId>.GetInstance(out var invalidProjects);
Rename\SymbolicRenameInfo.cs (1)
234var projectIdOfLocation = sourceDocument.Project.Id;
SemanticSearch\ISemanticSearchSolutionService.cs (1)
27(WorkspaceChangeKind changeKind, ProjectId? projectId, DocumentId? documentId) GetWorkspaceChangeKind(Solution oldSolution, Solution newSolution);
Shared\Utilities\ExtractTypeHelpers.cs (1)
54ProjectId projectId,
Shared\Utilities\SupportedPlatformData.cs (4)
13internal sealed class SupportedPlatformData(Solution solution, ImmutableArray<ProjectId> invalidProjects, ImmutableArray<ProjectId> candidateProjects) 18public readonly ImmutableArray<ProjectId> InvalidProjects = invalidProjects; 19public readonly ImmutableArray<ProjectId> CandidateProjects = candidateProjects;
SignatureHelp\AbstractSignatureHelpProvider.cs (1)
281using var _ = ArrayBuilder<ProjectId>.GetInstance(out var invalidProjectsForCurrentSymbol);
src\Analyzers\Core\CodeFixes\UpgradeProject\AbstractUpgradeProjectCodeFixProvider.cs (1)
79foreach (var projectId in solution.Projects.Select(p => p.Id))
Workspace\MiscellaneousFileUtilities.cs (2)
55var projectId = ProjectId.CreateNewId(debugName: $"{workspace.GetType().Name} Files Project for {filePath}");
Microsoft.CodeAnalysis.Features.Test.Utilities (18)
EditAndContinue\EditAndContinueWorkspaceTestBase.cs (8)
45private protected readonly Dictionary<ProjectId, CompilationOutputs> _mockCompilationOutputs = []; 244internal static IEnumerable<string> InspectDiagnostics(ImmutableArray<(ProjectId project, ImmutableArray<Diagnostic> diagnostics)> diagnostics) 280ProjectId projectId, 305ProjectId projectId, 331ProjectId projectId, 362ProjectId projectId, 428internal Guid EmitLibrary(ProjectId projectId, Compilation compilation, DebugInformationFormat pdbFormat = DebugInformationFormat.PortablePdb) 493internal static DocumentInfo CreateDesignTimeOnlyDocument(ProjectId projectId, string name = "design-time-only.cs", string path = "design-time-only.cs")
EditAndContinue\Extensions.cs (8)
57public static Project AddTestProject(this Solution solution, string projectName, out ProjectId id) 60public static Project AddTestProject(this Solution solution, string projectName, string language, out ProjectId id) 61=> AddTestProject(solution, projectName, language, TargetFramework.NetLatest, id = ProjectId.CreateNewId(debugName: projectName)); 63public static Project AddTestProject(this Solution solution, string projectName, string language, TargetFramework targetFramework, out ProjectId id) 70public static Project AddTestProject(this Solution solution, string projectName, string language = LanguageNames.CSharp, TargetFramework targetFramework = TargetFramework.NetLatest, ProjectId? id = null) 72id ??= ProjectId.CreateNewId(debugName: projectName); 87public static Document AddTestDocument(this Solution solution, ProjectId projectId, string source, string path, out DocumentId id) 106public static ProjectInfo CreateProjectInfo(string projectName, ProjectId id, string language = LanguageNames.CSharp)
EditAndContinue\MockEditAndContinueService.cs (2)
26public Func<Solution, ImmutableDictionary<ProjectId, RunningProjectOptions>, ActiveStatementSpanProvider, EmitSolutionUpdateResults>? EmitSolutionUpdateImpl; 42public ValueTask<EmitSolutionUpdateResults> EmitSolutionUpdateAsync(DebuggingSessionId sessionId, Solution solution, ImmutableDictionary<ProjectId, RunningProjectOptions> runningProjects, ActiveStatementSpanProvider activeStatementSpanProvider, CancellationToken cancellationToken)
Microsoft.CodeAnalysis.Features.UnitTests (149)
EditAndContinue\CompileTimeSolutionProviderTests.cs (4)
28var projectId = ProjectId.CreateNewId(); 77var projectId = ProjectId.CreateNewId();
EditAndContinue\EditAndContinueWorkspaceServiceTests.cs (53)
70var projectPId = ProjectId.CreateNewId("P"); 279AddTestProject("test", out var projectId). 366AddTestProject("test", language, out var projectId). 459AddTestProject("test", language, out var projectId). 538AddTestProject("test", LanguageNames.VisualBasic, out var projectId). 606AddTestProject("A", out var projectId). 666AddTestProject("test", out var projectId). 712AddTestProject("test", out var projectId). 761AddTestProject("test", out var projectId). 794AddTestProject("test", out var projectId). 833var projectId = document1.Project.Id; 922AddTestProject("test", language, out var projectId). 1021var projectId = document1.Project.Id; 1275AddTestProject("test", out var projectId). 1306AddTestProject("test", out var projectId). 1517var projectId = ProjectId.CreateNewId(); 1749var projectId = project.Id; 1943var projectId = document.Project.Id; 2143var projectAId = ProjectId.CreateNewId("A"); 2144var projectBId = ProjectId.CreateNewId("B"); 2145var projectCId = ProjectId.CreateNewId("C"); 2248var projectId = project.Id; 2418var projectId = project.Id; 2475AddTestProject("A", out var projectId). 2498AddTestProject("A", out var projectAId).Solution. 2499AddTestProject("B", out var projectBId).Solution; 2532.AddTestProject("A", out var projectAId) 2541.AddTestProject("B", out var projectBId) 2545var runningProjects = ImmutableDictionary<ProjectId, RunningProjectOptions>.Empty 2573.AddTestProject("A", out var projectAId) 2575.AddTestProject("B", out var projectBId) 2586var runningProjects = ImmutableDictionary<ProjectId, RunningProjectOptions>.Empty 2618.AddTestProject("A", out var projectAId) 2621var projectBId = ProjectId.CreateNewId("B"); 3518.AddTestProject("A", out var projectAId) 3530.AddTestProject("B", out var projectBId) 3599.AddTestProject("A", out var projectAId) 3609.AddTestProject("B", out var projectBId) 3655var runningProjects = ImmutableDictionary<ProjectId, RunningProjectOptions>.Empty 3750var projectId = document1.Project.Id; 4294var projectAId = documentA.Project.Id; 4295var projectBId = documentB.Project.Id; 4394var projectAId = documentA.Project.Id; 4395var projectBId = documentB.Project.Id; 5510var result1 = await encService.EmitSolutionUpdateAsync(sessionId, solution1, runningProjects: ImmutableDictionary<ProjectId, RunningProjectOptions>.Empty, s_noActiveSpans, CancellationToken.None); 5517var result2 = await encService.EmitSolutionUpdateAsync(sessionId, solution2, runningProjects: ImmutableDictionary<ProjectId, RunningProjectOptions>.Empty, s_noActiveSpans, CancellationToken.None); 5540await Assert.ThrowsAsync<ObjectDisposedException>(async () => await debuggingSession.EmitSolutionUpdateAsync(solution, runningProjects: ImmutableDictionary<ProjectId, RunningProjectOptions>.Empty, s_noActiveSpans, CancellationToken.None));
EditAndContinue\EditSessionActiveStatementsTests.cs (1)
181var projectId = solution.ProjectIds.Single();
EditAndContinue\EmitSolutionUpdateResultsTests.cs (82)
32private static ManagedHotReloadUpdate CreateMockUpdate(ProjectId projectId) 47private static ImmutableArray<ManagedHotReloadUpdate> CreateValidUpdates(params IEnumerable<ProjectId> projectIds) 50private static ImmutableArray<ProjectDiagnostics> CreateProjectRudeEdits(IEnumerable<ProjectId> blocking, IEnumerable<ProjectId> noEffect) 56private static ImmutableDictionary<ProjectId, RunningProjectOptions> CreateRunningProjects(IEnumerable<(ProjectId id, bool noEffectRestarts)> projectIds) 59private static IEnumerable<string> Inspect(ImmutableDictionary<ProjectId, ImmutableArray<ProjectId>> projectsToRestart) 144ProjectsToRestart = ImmutableDictionary<ProjectId, ImmutableArray<ProjectId>>.Empty, 166.AddTestProject("C", out var c).Solution 167.AddTestProject("D", out var d).Solution 168.AddTestProject("A", out var a).AddProjectReferences([new(c)]).Solution 169.AddTestProject("B", out var b).AddProjectReferences([new(c), new(d)]).Solution; 190.AddTestProject("C", out var c).Solution 191.AddTestProject("D", out var d).Solution 192.AddTestProject("A", out var a).AddProjectReferences([new(c)]).Solution 193.AddTestProject("B", out var b).AddProjectReferences([new(c), new(d)]).Solution; 216.AddTestProject("C", out var c).Solution 217.AddTestProject("D", out var d).Solution 218.AddTestProject("A", out var a).AddProjectReferences([new(c)]).Solution 219.AddTestProject("B", out var b).AddProjectReferences([new(c), new(d)]).Solution; 247.AddTestProject("C", out var c).Solution 248.AddTestProject("D", out var d).Solution 249.AddTestProject("A", out var a).AddProjectReferences([new(c)]).Solution 250.AddTestProject("B", out var b).AddProjectReferences([new(c), new(d)]).Solution; 274.AddTestProject("C", out var c).Solution 275.AddTestProject("D", out var d).Solution 276.AddTestProject("A", out var a).AddProjectReferences([new(c)]).Solution 277.AddTestProject("B", out var b).AddProjectReferences([new(c), new(d)]).Solution; 308.AddTestProject("C", out var c).Solution 309.AddTestProject("D", out var d).Solution 310.AddTestProject("A", out var a).AddProjectReferences([new(c)]).Solution 311.AddTestProject("B", out var b).AddProjectReferences([new(c), new(d)]).Solution; 336.AddTestProject("C", out var c).Solution 337.AddTestProject("D", out var d).Solution 338.AddTestProject("A", out var a).AddProjectReferences([new(c)]).Solution 339.AddTestProject("B", out var b).AddProjectReferences([new(c), new(d)]).Solution; 360.AddTestProject("C", out var c).Solution 361.AddTestProject("D", out var d).Solution 362.AddTestProject("A", out var a).AddProjectReferences([new(c)]).Solution 363.AddTestProject("B", out var b).AddProjectReferences([new(c), new(d)]).Solution; 391.AddTestProject("Q", out var q).Solution 392.AddTestProject("P0", out var p0).AddProjectReferences([new(q)]).Solution 393.AddTestProject("P1", out var p1).AddProjectReferences([new(q)]).Solution 394.AddTestProject("P2", out var p2).Solution 395.AddTestProject("R0", out var r0).AddProjectReferences([new(p0)]).Solution 396.AddTestProject("R1", out var r1).AddProjectReferences([new(p1), new(p0)]).Solution 397.AddTestProject("R2", out var r2).AddProjectReferences([new(p2), new(p0)]).Solution; 431.AddTestProject("C", out var c).Solution 432.AddTestProject("D", out var d).Solution 433.AddTestProject("A", out var a).AddProjectReferences([new(c)]).Solution 434.AddTestProject("B", out var b).AddProjectReferences([new(c), new(d)]).Solution; 462.AddTestProject("C", out var c).Solution 463.AddTestProject("D", out var d).Solution 464.AddTestProject("A", out var a).AddProjectReferences([new(c)]).Solution 465.AddTestProject("B", out var b).AddProjectReferences([new(c), new(d)]).Solution; 493.AddTestProject("C", out var c).Solution 494.AddTestProject("D", out var d).Solution 495.AddTestProject("A", out var a).AddProjectReferences([new(c)]).Solution 496.AddTestProject("B", out var b).AddProjectReferences([new(c), new(d)]).Solution; 519.AddTestProject("C", out var c).Solution 520.AddTestProject("D", out var d).Solution 521.AddTestProject("A", out var a).AddProjectReferences([new(c)]).Solution 522.AddTestProject("B", out var b).AddProjectReferences([new(c), new(d)]).Solution 523.AddTestProject("E", out var e).AddProjectReferences([new(b)]).Solution; 552.AddTestProject("C", out var c).Solution 553.AddTestProject("D", out var d).Solution 554.AddTestProject("A", out var a).AddProjectReferences([new(c)]).Solution 555.AddTestProject("B", out var b).AddProjectReferences([new(d)]).Solution; 577.AddTestProject("C", out var c).Solution 578.AddTestProject("D", out var d).Solution 579.AddTestProject("A", out var a).AddProjectReferences([new(c)]).Solution 580.AddTestProject("B", out var b).AddProjectReferences([new(c), new(d)]).Solution; 611.AddTestProject("P1", out var p1).Solution 612.AddTestProject("P2", out var p2).Solution 613.AddTestProject("P3", out var p3).Solution 614.AddTestProject("P4", out var p4).Solution 615.AddTestProject("R1", out var r1).AddProjectReferences([new(p1), new(p2)]).Solution 616.AddTestProject("R2", out var r2).AddProjectReferences([new(p2), new(p3)]).Solution 617.AddTestProject("R3", out var r3).AddProjectReferences([new(p3), new(p4)]).Solution 618.AddTestProject("R4", out var r4).AddProjectReferences([new(p4)]).Solution;
EditAndContinue\RemoteEditAndContinueServiceTests.cs (9)
37private static IEnumerable<string> Inspect(ImmutableDictionary<ProjectId, ImmutableArray<ProjectId>> projects) 76var projectId = ProjectId.CreateNewId(); 78var inProcOnlyProjectId = ProjectId.CreateNewId(); 179var runningProjects1 = new Dictionary<ProjectId, RunningProjectOptions> 221ProjectsToRestart = ImmutableDictionary<ProjectId, ImmutableArray<ProjectId>>.Empty.Add(projectId, [projectId]),
Microsoft.CodeAnalysis.LanguageServer (7)
HostWorkspace\LanguageServerProjectLoader.cs (2)
76public sealed record Primordial(ProjectSystemProjectFactory PrimordialProjectFactory, ProjectId PrimordialProjectId) : ProjectLoadState; 388protected async ValueTask BeginLoadingProjectWithPrimordialAsync(string projectPath, ProjectSystemProjectFactory primordialProjectFactory, ProjectId primordialProjectId, bool doDesignTimeBuild)
HostWorkspace\Razor\RazorDynamicFileInfoProvider.cs (2)
31public async Task<DynamicFileInfo?> GetDynamicFileInfoAsync(ProjectId projectId, string? projectFilePath, string filePath, CancellationToken cancellationToken) 74public async Task RemoveDynamicFileInfoAsync(ProjectId projectId, string? projectFilePath, string filePath, CancellationToken cancellationToken)
LanguageServer\Handler\DebugConfiguration\ProjectTargetFrameworkManager.cs (3)
17private readonly ConcurrentDictionary<ProjectId, string?> _projectToTargetFrameworkIdentifer = new(); 25public void UpdateIdentifierForProject(ProjectId projectId, string? identifier) 30public bool IsDotnetCoreProject(ProjectId projectId)
Microsoft.CodeAnalysis.LanguageServer.Protocol (12)
Extensions\Extensions.cs (2)
136Func<T, ProjectId> projectIdGetter, 144var projectId = ProtocolConversions.ProjectContextToProjectId(vsDocumentIdentifier.ProjectContext);
Extensions\ProtocolConversions.cs (3)
815public static string ProjectIdToProjectContextId(ProjectId id) 820public static ProjectId ProjectContextToProjectId(LSP.VSProjectContext projectContext) 824return ProjectId.CreateFromSerialized(
Extensions\SourceGeneratedDocumentUri.cs (3)
57var projectIdGuidOnly = ProjectId.CreateFromSerialized(Guid.ParseExact(documentUri.Host, GuidFormat)); 58var projectId = solution.GetProject(projectIdGuidOnly)?.Id;
Handler\Diagnostics\ProjectOrDocumentId.cs (2)
21private readonly ProjectId? _projectId; 23public ProjectOrDocumentId(ProjectId projectId)
Handler\SemanticTokens\SemanticTokensRefreshQueue.cs (1)
29private readonly Dictionary<ProjectId, Checksum> _projectIdToLastComputedChecksum = [];
Handler\SourceGenerators\SourceGeneratorRefreshQueue.cs (1)
76var projectId = e.ProjectId ?? e.DocumentId?.ProjectId;
Microsoft.CodeAnalysis.LanguageServer.Protocol.UnitTests (4)
Diagnostics\PullDiagnosticTests.cs (2)
1015var projectId = scopeRunCodeAnalysisToProject ? testLspServer.GetCurrentSolution().Projects.Single().Id : null; 1055var projectId = scopeRunCodeAnalysisToProject ? testLspServer.GetCurrentSolution().Projects.Single().Id : null;
Hover\HoverTests.cs (1)
606ProjectId projectContext = null)
Workspaces\SourceGeneratedDocumentTests.cs (1)
279var projectId1 = initialSolution.ProjectIds.Single();
Microsoft.CodeAnalysis.LanguageServer.UnitTests (1)
Utilities\AbstractLanguageServerClientTests.cs (1)
122private protected static TextDocumentIdentifier CreateTextDocumentIdentifier(DocumentUri uri, ProjectId? projectContext = null)
Microsoft.CodeAnalysis.PerformanceSensitiveAnalyzers (1)
src\Workspaces\SharedUtilitiesAndExtensions\Workspace\Core\Extensions\ISolutionExtensions.cs (1)
38public static Project GetRequiredProject(this Solution solution, ProjectId projectId)
Microsoft.CodeAnalysis.PublicApiAnalyzers.CodeFixes (5)
DeclarePublicApiFix.cs (3)
242var addedPublicSurfaceAreaText = new List<KeyValuePair<ProjectId, SourceText>>(); 319addedPublicSurfaceAreaText.Add(new KeyValuePair<ProjectId, SourceText>(project.Id, newSourceText)); 332foreach (KeyValuePair<ProjectId, SourceText> pair in addedPublicSurfaceAreaText)
PublicApiFixHelpers.cs (2)
55var projectId = ProjectId.CreateFromSerialized(projectGuid);
Microsoft.CodeAnalysis.Remote.ServiceHub (32)
Host\AssetProvider.cs (1)
188ArrayBuilder<ProjectStateChecksums> allProjectChecksums, ProjectId? projectId, bool freeArrayBuilder, CancellationToken cancellationToken)
Host\RemoteWorkspace.SolutionCreator.cs (8)
153using var _1 = PooledDictionary<ProjectId, Checksum>.GetInstance(out var oldProjectIdToChecksum); 154using var _2 = PooledDictionary<ProjectId, Checksum>.GetInstance(out var newProjectIdToChecksum); 195using var _3 = PooledDictionary<ProjectId, ProjectStateChecksums>.GetInstance(out var oldProjectIdToStateChecksums); 196using var _4 = PooledDictionary<ProjectId, ProjectStateChecksums>.GetInstance(out var newProjectIdToStateChecksums); 235Dictionary<ProjectId, ProjectStateChecksums> oldProjectIdToStateChecksums, 236Dictionary<ProjectId, ProjectStateChecksums> newProjectIdToStateChecksums, 300using var _4 = ArrayBuilder<ProjectId>.GetInstance(out var projectsToRemove); 605ProjectId? projectConeId,
Host\TestUtils.cs (4)
44ProjectId? projectConeId) 158public static async Task<Dictionary<Checksum, object>> GetAssetMapAsync(this Solution solution, ProjectId? projectConeId, CancellationToken cancellationToken) 186this Solution solution, Dictionary<Checksum, object> map, ProjectId? projectId, CancellationToken cancellationToken) 219foreach (var dep in solution.GetProjectDependencyGraph().GetProjectsThatThisProjectTransitivelyDependsOn(projectId))
Services\DependentTypeFinder\RemoteDependentTypeFinderService.cs (1)
30ImmutableArray<ProjectId> projectIdsOpt,
Services\DiagnosticAnalyzer\DiagnosticComputer.cs (1)
50/// We use this checksum and the <see cref="ProjectId"/> of the diagnostic request as the key
Services\DiagnosticAnalyzer\RemoteDiagnosticAnalyzerService.cs (2)
53var projectId = arguments.ProjectId; 82public async ValueTask<ImmutableArray<DiagnosticData>> GetSourceGeneratorDiagnosticsAsync(Checksum solutionChecksum, ProjectId projectId, CancellationToken cancellationToken)
Services\EditAndContinue\RemoteEditAndContinueService.cs (1)
144Checksum solutionChecksum, RemoteServiceCallbackId callbackId, DebuggingSessionId sessionId, ImmutableDictionary<ProjectId, RunningProjectOptions> runningProjects, CancellationToken cancellationToken)
Services\ExtensionMethodImportCompletion\RemoteExtensionMethodImportCompletionService.cs (1)
61public ValueTask WarmUpCacheAsync(Checksum solutionChecksum, ProjectId projectId, CancellationToken cancellationToken)
Services\LegacySolutionEvents\RemoteLegacySolutionEventsAggregationService.cs (1)
40ProjectId? projectId,
Services\NavigateToSearch\RemoteNavigateToSearchService.cs (2)
68ImmutableArray<ProjectId> projectIds, 89ImmutableArray<ProjectId> projectIds,
Services\SourceGeneration\RemoteSourceGenerationService.cs (5)
33Checksum solutionChecksum, ProjectId projectId, bool withFrozenSourceGeneratedDocuments, CancellationToken cancellationToken) 53Checksum solutionChecksum, ProjectId projectId, ImmutableArray<DocumentId> documentIds, bool withFrozenSourceGeneratedDocuments, CancellationToken cancellationToken) 89ProjectId projectId, 139ProjectId projectId, 155ProjectId projectId,
Services\SymbolFinder\RemoteSymbolFinderService.cs (3)
93ProjectId projectId, 130ProjectId projectId, 160Checksum solutionChecksum, ProjectId projectId, string pattern, SymbolFilter criteria, CancellationToken cancellationToken)
Services\UnitTesting\RemoteUnitTestingSearchService.cs (2)
29ProjectId projectId, 51ProjectId projectId,
Microsoft.CodeAnalysis.Remote.Workspaces (16)
AbstractAssetProvider.cs (1)
80var projectId = projectChecksums.ProjectId;
BrokeredServiceConnection.cs (4)
197public override async ValueTask<bool> TryInvokeAsync(SolutionCompilationState compilationState, ProjectId projectId, Func<TService, Checksum, CancellationToken, ValueTask> invocation, CancellationToken cancellationToken) 213public override async ValueTask<Optional<TResult>> TryInvokeAsync<TResult>(SolutionCompilationState compilationState, ProjectId projectId, Func<TService, Checksum, CancellationToken, ValueTask<TResult>> invocation, CancellationToken cancellationToken) 268public override async ValueTask<bool> TryInvokeAsync(SolutionCompilationState compilationState, ProjectId projectId, Func<TService, Checksum, RemoteServiceCallbackId, CancellationToken, ValueTask> invocation, CancellationToken cancellationToken) 287public override async ValueTask<Optional<TResult>> TryInvokeAsync<TResult>(SolutionCompilationState compilationState, ProjectId projectId, Func<TService, Checksum, RemoteServiceCallbackId, CancellationToken, ValueTask<TResult>> invocation, CancellationToken cancellationToken)
EditAndContinue\ManagedHotReloadLanguageService.cs (1)
293ImmutableArray<ProjectInstanceId> ToProjectIntanceIds(IEnumerable<ProjectId> ids)
Serialization\MessagePackFormatters.cs (9)
43/// Specialized formatter used so we can cache and reuse <see cref="ProjectId"/> instances. This is valuable as 48internal sealed class ProjectIdFormatter : IMessagePackFormatter<ProjectId?> 57private readonly ConcurrentDictionary<Guid, ProjectId> _projectIds = new ConcurrentDictionary<Guid, ProjectId>(); 59public ProjectId? Deserialize(ref MessagePackReader reader, MessagePackSerializerOptions options) 71ProjectId? projectId; 82projectId = ProjectId.CreateFromSerialized(id); 92projectId = ProjectId.CreateFromSerialized(id, debugName); 104public void Serialize(ref MessagePackWriter writer, ProjectId? value, MessagePackSerializerOptions options)
SolutionAssetStorage.cs (1)
63public async ValueTask<Scope> StoreAssetsAsync(SolutionCompilationState compilationState, ProjectId? projectId, CancellationToken cancellationToken)
Microsoft.CodeAnalysis.VisualBasic.Workspaces.UnitTests (1)
CodeGeneration\AddImportsTests.vb (1)
33ProjectId.CreateNewId(),
Microsoft.CodeAnalysis.Workspaces (710)
Diagnostics\DiagnosticAnalysisResult.cs (3)
24public readonly ProjectId ProjectId; 47ProjectId projectId, 66public static DiagnosticAnalysisResult CreateEmpty(ProjectId projectId)
Diagnostics\DiagnosticArguments.cs (2)
58public ProjectId ProjectId; 78ProjectId projectId,
Diagnostics\DiagnosticData.cs (3)
31ProjectId projectId, 68public readonly ProjectId ProjectId = projectId; 233ProjectId projectId,
Diagnostics\IRemoteDiagnosticAnalyzerService.cs (1)
16ValueTask<ImmutableArray<DiagnosticData>> GetSourceGeneratorDiagnosticsAsync(Checksum solutionChecksum, ProjectId projectId, CancellationToken cancellationToken);
Editing\SymbolEditor.cs (4)
117foreach (var projectId in this.GetProjectsForAssembly(symbol.ContainingAssembly)) 129private ImmutableDictionary<string, ImmutableArray<ProjectId>> _assemblyNameToProjectIdMap; 131private ImmutableArray<ProjectId> GetProjectsForAssembly(IAssemblySymbol assembly) 145private static async Task<ISymbol> GetSymbolAsync(Solution solution, ProjectId projectId, string symbolId, CancellationToken cancellationToken)
ExternalAccess\UnitTesting\Api\UnitTestingProjectExtensions.cs (1)
12public static string? GetDebugName(this ProjectId projectId)
FindSymbols\FindReferences\DependentProjectsFinder.cs (7)
198using var _1 = PooledDictionary<ProjectId, List<ProjectId>>.GetInstance(out var projectIdsToReferencingSubmissionIds); 201foreach (var projectId in solution.ProjectIds) 227using var _2 = ArrayBuilder<ProjectId>.GetInstance(out var projectIdsToProcess); 228foreach (var dependentProject in dependentProjects.Select(dp => dp.project.Id)) 231while (projectIdsToProcess.TryPop(out var toProcess)) 235foreach (var pId in submissionIds)
FindSymbols\FindReferences\DependentTypeFinder.cs (7)
399private static async Task<ISet<ProjectId>> GetProjectsThatCouldReferenceTypeAsync( 430return SpecializedCollections.EmptySet<ProjectId>(); 440private static IEnumerable<ProjectId> GetProjectsThatCouldReferenceType( 451IEnumerable<ProjectId> projectsThatCouldReferenceType) 465var order = new Dictionary<ProjectId, int>(capacity: solution.ProjectIds.Count); 470foreach (var projectId in dependencyGraph.GetTopologicallySortedProjects()) 482IEnumerable<ProjectId> projectsThatCouldReferenceType)
FindSymbols\FindReferences\FindReferencesSearchEngine.cs (1)
138foreach (var projectId in dependencyGraph.GetTopologicallySortedProjects(cancellationToken))
FindSymbols\FindReferences\FindReferencesSearchEngine_FindReferencesInDocuments.cs (1)
62foreach (var projectId in dependencyGraph.GetTopologicallySortedProjects(cancellationToken))
FindSymbols\FindReferences\IRemoteDependentTypeFinderService.cs (1)
17ImmutableArray<ProjectId> projectsOpt,
FindSymbols\IRemoteSymbolFinderService.cs (3)
36Checksum solutionChecksum, ProjectId projectId, string name, SearchKind searchKind, SymbolFilter criteria, CancellationToken cancellationToken); 42Checksum solutionChecksum, ProjectId projectId, string name, bool ignoreCase, SymbolFilter criteria, CancellationToken cancellationToken); 48Checksum solutionChecksum, ProjectId projectId, string pattern, SymbolFilter criteria, CancellationToken cancellationToken);
FindSymbols\SymbolFinder_Declarations_CustomQueries.cs (1)
59foreach (var projectId in solution.ProjectIds)
FindSymbols\SymbolTree\MetadataInfo.cs (2)
26public readonly HashSet<ProjectId> ReferencingProjects; 28public MetadataInfo(SymbolTreeInfo info, HashSet<ProjectId> referencingProjects)
FindSymbols\SymbolTree\SymbolTreeInfoCacheService.cs (11)
30private readonly ConcurrentDictionary<ProjectId, (VersionStamp semanticVersion, SymbolTreeInfo info)> _projectIdToInfo = []; 36private readonly AsyncBatchingWorkQueue<ProjectId> _workQueue; 47_workQueue = new AsyncBatchingWorkQueue<ProjectId>( 50EqualityComparer<ProjectId>.Default, 89var referencingProjects = new HashSet<ProjectId>(solution.Projects.Where(p => p.MetadataReferences.Contains(reference)).Select(p => p.Id)); 120ImmutableSegmentedList<ProjectId> projectIds, CancellationToken cancellationToken) 124foreach (var projectId in projectIds) 140foreach (var projectId in removedProjectIds) 216public void RemoveProject(ProjectId projectId) 222private void RemoveMetadataReferences(ProjectId projectId) 244foreach (var projectId in service._workspace.CurrentSolution.ProjectIds)
Packaging\IPackageInstallerService.cs (2)
17bool IsEnabled(ProjectId projectId); 19bool IsInstalled(ProjectId projectId, string packageName);
Remote\RemoteArguments.cs (3)
24internal sealed class SerializableSymbolAndProjectId(string symbolKeyData, ProjectId projectId) : IEquatable<SerializableSymbolAndProjectId> 30public readonly ProjectId ProjectId = projectId; 102var projectId = ProjectId;
Remote\RemoteHostClient.cs (1)
151ProjectId projectId,
Remote\RemoteServiceConnection.cs (4)
68ProjectId projectId, 74ProjectId projectId, 118ProjectId projectId, 124ProjectId projectId,
Rename\ConflictEngine\ConflictResolver.cs (2)
145private static bool IsIdentifierValid_Worker(Solution solution, string replacementText, IEnumerable<ProjectId> projectIds) 222ProjectId projectId,
Rename\ConflictEngine\ConflictResolver.Session.cs (1)
309ProjectId projectId,
Serialization\SerializerService_Asset.cs (2)
78var projectId = ProjectId.ReadFrom(reader);
Shared\Extensions\ISolutionExtensions.cs (1)
24foreach (var projectId in solution.ProjectIds)
SourceGeneration\IRemoteSourceGenerationService.cs (5)
35Checksum solutionChecksum, ProjectId projectId, bool withFrozenSourceGeneratedDocuments, CancellationToken cancellationToken); 46Checksum solutionChecksum, ProjectId projectId, ImmutableArray<DocumentId> documentIds, bool withFrozenSourceGeneratedDocuments, CancellationToken cancellationToken); 52Checksum solutionChecksum, ProjectId projectId, ImmutableArray<Checksum> analyzerReferenceChecksums, string language, CancellationToken cancellationToken); 59Checksum solutionChecksum, ProjectId projectId, string analyzerReferenceFullPath, CancellationToken cancellationToken); 66Checksum solutionChecksum, ProjectId projectId, string analyzerReferenceFullPath, CancellationToken cancellationToken);
src\Workspaces\SharedUtilitiesAndExtensions\Workspace\Core\Extensions\ISolutionExtensions.cs (4)
38public static Project GetRequiredProject(this Solution solution, ProjectId projectId) 112public static Solution WithUpToDateSourceGeneratorDocuments(this Solution solution, IEnumerable<ProjectId> projectIds) 119var projectIdToSourceGenerationVersion = ImmutableSortedDictionary.CreateBuilder<ProjectId, SourceGeneratorExecutionVersion>(); 121foreach (var projectId in projectIds)
Storage\SQLite\v2\SQLitePersistentStorage_ProjectIds.cs (1)
19private readonly ConcurrentDictionary<ProjectId, ProjectPrimaryKey> _projectIdToPrimaryKeyMap = [];
Workspace\AdhocWorkspace.cs (2)
65var info = ProjectInfo.Create(ProjectId.CreateNewId(), VersionStamp.Create(), name, name, language); 108public Document AddDocument(ProjectId projectId, string name, SourceText text)
Workspace\CommandLineProject.cs (2)
104var projectId = ProjectId.CreateNewId(debugName: projectName);
Workspace\Host\Metadata\FrameworkAssemblyPathResolverFactory.cs (1)
34public string? ResolveAssemblyPath(ProjectId projectId, string assemblyName, string? fullyQualifiedTypeName)
Workspace\Host\Metadata\IFrameworkAssemblyPathResolver.cs (1)
22string? ResolveAssemblyPath(ProjectId projectId, string assemblyName, string? fullyQualifiedName);
Workspace\Host\PersistentStorage\ProjectKey.cs (2)
17internal readonly struct ProjectKey(SolutionKey solution, ProjectId id, string? filePath, string name, Checksum parseOptionsChecksum) 23public readonly ProjectId Id = id;
Workspace\Host\SourceFiles\IDynamicFileInfoProvider.cs (5)
22/// <param name="projectId"><see cref="ProjectId"/> this file belongs to</param> 26Task<DynamicFileInfo?> GetDynamicFileInfoAsync(ProjectId projectId, string? projectFilePath, string filePath, CancellationToken cancellationToken); 31/// <param name="projectId"><see cref="ProjectId"/> this file belongs to</param> 34Task RemoveDynamicFileInfoAsync(ProjectId projectId, string? projectFilePath, string filePath, CancellationToken cancellationToken); 37/// indicate content of a file has updated. the event argument "string" should be same as "filepath" given to <see cref="GetDynamicFileInfoAsync(ProjectId, string, string, CancellationToken)"/>
Workspace\ProjectSystem\ProjectSystemProject.BatchingDocumentCollection.cs (1)
584ProjectId projectId,
Workspace\ProjectSystem\ProjectSystemProject.cs (7)
143public ProjectId Id { get; } 149ProjectId id, 306Solution solution, ProjectId projectId) 679var projectId = projectBeforeMutation.Id; 746ProjectId projectId, 764ProjectId projectId, 785ProjectId projectId,
Workspace\ProjectSystem\ProjectSystemProjectFactory.cs (25)
61private ImmutableDictionary<ProjectId, string?> _projectToMaxSupportedLangVersionMap = ImmutableDictionary<ProjectId, string?>.Empty; 64private ImmutableDictionary<ProjectId, string> _projectToDependencyNodeTargetIdentifier = ImmutableDictionary<ProjectId, string>.Empty; 102var projectId = ProjectId.CreateNewId(projectSystemName); 191public string? TryGetDependencyNodeTargetIdentifier(ProjectId projectId) 198public string? TryGetMaxSupportedLanguageVersion(ProjectId projectId) 269public void ApplyChangeToWorkspace(ProjectId projectId, Func<CodeAnalysis.Solution, CodeAnalysis.Solution> solutionTransformation) 360private static ProjectUpdateState GetReferenceInformation(ProjectId projectId, ProjectUpdateState projectUpdateState, out ProjectReferenceInformation projectReference) 381internal void RemoveProjectFromTrackingMaps_NoLock(ProjectId projectId) 413ImmutableInterlocked.TryRemove<ProjectId, string?>(ref _projectToMaxSupportedLangVersionMap, projectId, out _); 473internal void SetMaxLanguageVersion(ProjectId projectId, string? maxLanguageVersion) 482internal void SetDependencyNodeTargetIdentifier(ProjectId projectId, string targetIdentifier) 492ProjectId projectId, 522foreach (var otherProjectId in projectsForOutputPath) 541/// <param name="projectIdToReference">The <see cref="ProjectId"/> of the project that could be referenced in place 548ProjectId projectIdToReference, 638/// <param name="projectId">The <see cref="ProjectId"/> of the project being referenced.</param> 645ProjectId projectId, 650foreach (var projectIdToRetarget in solutionChanges.Solution.ProjectIds) 707var projectIdToReference = ids.First(); 737ProjectId referencingProject, 765ProjectId projectId, 872Func<Solution, ProjectId, ProjectUpdateState, TReference, TReference, (Solution newSolution, ProjectUpdateState newProjectUpdateState)> update,
Workspace\ProjectSystem\ProjectSystemProjectFactory.ProjectUpdateState.cs (13)
53ImmutableDictionary<string, ImmutableArray<ProjectId>> ProjectsByOutputPath, 54ImmutableDictionary<ProjectId, ProjectReferenceInformation> ProjectReferenceInfos, 61ImmutableDictionary<string, ImmutableArray<ProjectId>>.Empty.WithComparers(StringComparer.OrdinalIgnoreCase), 62ImmutableDictionary<ProjectId, ProjectReferenceInformation>.Empty, [], [], [], []); 64public ProjectUpdateState WithProjectReferenceInfo(ProjectId projectId, ProjectReferenceInformation projectReferenceInformation) 72public ProjectUpdateState WithProjectOutputPath(string projectOutputPath, ProjectId projectId) 79static ImmutableDictionary<string, ImmutableArray<ProjectId>> AddProject(string path, ProjectId projectId, ImmutableDictionary<string, ImmutableArray<ProjectId>> map) 92public ProjectUpdateState RemoveProjectOutputPath(string projectOutputPath, ProjectId projectId) 99static ImmutableDictionary<string, ImmutableArray<ProjectId>> RemoveProject(string path, ProjectId projectId, ImmutableDictionary<string, ImmutableArray<ProjectId>> map)
Workspace\ProjectSystem\SolutionChangeAccumulator.cs (2)
29public ProjectId? WorkspaceChangeProjectId { get; private set; } 89public void UpdateSolutionForProjectAction(ProjectId projectId, Solution newSolution)
Workspace\Solution\AssetPath.cs (6)
31public readonly ProjectId? ProjectId; 39public AssetPath(AssetPathKind kind, ProjectId? projectId = null, DocumentId? documentId = null) 46public AssetPath(AssetPathKind kind, ProjectId? projectId) 87public static implicit operator AssetPath(ProjectId projectId) => new(AssetPathKind.Projects, projectId); 98public static AssetPath SolutionAndProjectForTesting(ProjectId projectId) 105public static AssetPath DocumentsInProject(ProjectId projectId)
Workspace\Solution\ChecksumsAndIds.cs (5)
13/// A paired list of <see cref="ProjectId"/>s, and the checksums for their corresponding <see 19public readonly ImmutableArray<ProjectId> Ids; 21public ProjectChecksumsAndIds(ChecksumCollection checksums, ImmutableArray<ProjectId> ids) 42reader.ReadArray(static reader => ProjectId.ReadFrom(reader))); 56public readonly (Checksum checksum, ProjectId id) Current
Workspace\Solution\DocumentId.cs (7)
22public ProjectId ProjectId { get; } 30private DocumentId(ProjectId projectId, Guid guid, bool isSourceGenerated, string? debugName) 43public static DocumentId CreateNewId(ProjectId projectId, string? debugName = null) 46public static DocumentId CreateFromSerialized(ProjectId projectId, Guid id, string? debugName = null) 49internal static DocumentId CreateFromSerialized(ProjectId projectId, Guid id, bool isSourceGenerated, string? debugName) 97var projectId = ProjectId.ReadFrom(reader);
Workspace\Solution\Project.cs (1)
56public ProjectId Id => State.Id;
Workspace\Solution\ProjectChanges.cs (1)
18public ProjectId ProjectId => NewProject.Id;
Workspace\Solution\ProjectCone.cs (5)
16public readonly ProjectId RootProjectId; 17public readonly FrozenSet<ProjectId> ProjectIds; 19public ProjectCone(ProjectId rootProjectId, FrozenSet<ProjectId> projectIds) 26public bool Contains(ProjectId projectId)
Workspace\Solution\ProjectDependencyGraph.cs (110)
35private readonly ImmutableDictionary<ProjectId, ImmutableHashSet<ProjectId>> _referencesMap; 45private ImmutableDictionary<ProjectId, ImmutableHashSet<ProjectId>>? _lazyReverseReferencesMap; 48private ImmutableArray<ProjectId> _lazyTopologicallySortedProjects; 53private ImmutableArray<IEnumerable<ProjectId>> _lazyDependencySets; 56private ImmutableDictionary<ProjectId, ImmutableHashSet<ProjectId>> _transitiveReferencesMap; 57private ImmutableDictionary<ProjectId, ImmutableHashSet<ProjectId>> _reverseTransitiveReferencesMap; 60private static readonly ObjectPool<ImmutableHashSet<ProjectId>.Builder> s_reverseReferencesBuilderPool = new(static () => ImmutableHashSet.CreateBuilder<ProjectId>(), size: 256); 69ImmutableDictionary<ProjectId, ImmutableHashSet<ProjectId>>.Empty, 71ImmutableDictionary<ProjectId, ImmutableHashSet<ProjectId>>.Empty, 72ImmutableDictionary<ProjectId, ImmutableHashSet<ProjectId>>.Empty, 77ImmutableHashSet<ProjectId> projectIds, 78ImmutableDictionary<ProjectId, ImmutableHashSet<ProjectId>> referencesMap) 83transitiveReferencesMap: ImmutableDictionary<ProjectId, ImmutableHashSet<ProjectId>>.Empty, 84reverseTransitiveReferencesMap: ImmutableDictionary<ProjectId, ImmutableHashSet<ProjectId>>.Empty, 92ImmutableHashSet<ProjectId> projectIds, 93ImmutableDictionary<ProjectId, ImmutableHashSet<ProjectId>> referencesMap, 94ImmutableDictionary<ProjectId, ImmutableHashSet<ProjectId>>? reverseReferencesMap, 95ImmutableDictionary<ProjectId, ImmutableHashSet<ProjectId>> transitiveReferencesMap, 96ImmutableDictionary<ProjectId, ImmutableHashSet<ProjectId>> reverseTransitiveReferencesMap, 97ImmutableArray<ProjectId> topologicallySortedProjects, 98ImmutableArray<IEnumerable<ProjectId>> dependencySets) 115internal ImmutableHashSet<ProjectId> ProjectIds { get; } 117private static ImmutableDictionary<ProjectId, ImmutableHashSet<ProjectId>> RemoveItemsWithEmptyValues( 118ImmutableDictionary<ProjectId, ImmutableHashSet<ProjectId>> map) 120ImmutableDictionary<ProjectId, ImmutableHashSet<ProjectId>>.Builder? builder = null; 135internal ProjectDependencyGraph WithProjectReferences(ProjectId projectId, IReadOnlyList<ProjectReference> projectReferences) 169public IImmutableSet<ProjectId> GetProjectsThatThisProjectDirectlyDependsOn(ProjectId projectId) 182public IImmutableSet<ProjectId> GetProjectsThatDirectlyDependOnThisProject(ProjectId projectId) 203private ImmutableHashSet<ProjectId> GetProjectsThatDirectlyDependOnThisProject_NoLock(ProjectId projectId) 214private ImmutableDictionary<ProjectId, ImmutableHashSet<ProjectId>> ComputeReverseReferencesMap() 216using var _1 = PooledDictionary<ProjectId, ImmutableHashSet<ProjectId>.Builder>.GetInstance(out var reverseReferencesMapBuilders); 219foreach (var referencedId in references) 232var reverseReferencesBuilder = ImmutableDictionary.CreateBuilder<ProjectId, ImmutableHashSet<ProjectId>>(); 252internal ImmutableHashSet<ProjectId>? TryGetProjectsThatThisProjectTransitivelyDependsOn(ProjectId projectId) 266public IImmutableSet<ProjectId> GetProjectsThatThisProjectTransitivelyDependsOn(ProjectId projectId) 288private ImmutableHashSet<ProjectId> GetProjectsThatThisProjectTransitivelyDependsOn_NoLock(ProjectId projectId) 292using var pooledObject = SharedPools.Default<HashSet<ProjectId>>().GetPooledObject(); 302private void ComputeTransitiveReferences(ProjectId project, HashSet<ProjectId> result) 306foreach (var other in otherProjects) 318public IEnumerable<ProjectId> GetProjectsThatTransitivelyDependOnThisProject(ProjectId projectId) 340private ImmutableHashSet<ProjectId> GetProjectsThatTransitivelyDependOnThisProject_NoLock(ProjectId projectId) 344using var pooledObject = SharedPools.Default<HashSet<ProjectId>>().GetPooledObject(); 355private void ComputeReverseTransitiveReferences(ProjectId project, HashSet<ProjectId> results) 358foreach (var other in otherProjects) 372public IEnumerable<ProjectId> GetTopologicallySortedProjects(CancellationToken cancellationToken = default) 389using var seenProjects = SharedPools.Default<HashSet<ProjectId>>().GetPooledObject(); 390using var resultList = SharedPools.Default<List<ProjectId>>().GetPooledObject(); 397IEnumerable<ProjectId> projectIds, 398HashSet<ProjectId> seenProjects, 399List<ProjectId> resultList, 402foreach (var projectId in projectIds) 424public IEnumerable<IEnumerable<ProjectId>> GetDependencySets(CancellationToken cancellationToken = default) 437private ImmutableArray<IEnumerable<ProjectId>> GetDependencySets_NoLock(CancellationToken cancellationToken) 441using var seenProjects = SharedPools.Default<HashSet<ProjectId>>().GetPooledObject(); 442using var results = SharedPools.Default<List<IEnumerable<ProjectId>>>().GetPooledObject(); 450private void ComputeDependencySets(HashSet<ProjectId> seenProjects, List<IEnumerable<ProjectId>> results, CancellationToken cancellationToken) 452foreach (var project in ProjectIds) 458using var dependencySet = SharedPools.Default<HashSet<ProjectId>>().GetPooledObject(); 465using var topologicallySeenProjects = SharedPools.Default<HashSet<ProjectId>>().GetPooledObject(); 466using var sortedProjects = SharedPools.Default<List<ProjectId>>().GetPooledObject(); 473private void ComputedDependencySet(ProjectId project, HashSet<ProjectId> result) 480foreach (var other in otherProjects) 489ImmutableHashSet<ProjectId> projectIds, 490ImmutableDictionary<ProjectId, ImmutableHashSet<ProjectId>> referencesMap) 500foreach (var referencedProject in referencedProjects) 509ImmutableHashSet<ProjectId> projectIds, 510ImmutableDictionary<ProjectId, ImmutableHashSet<ProjectId>> forwardReferencesMap, 511ImmutableDictionary<ProjectId, ImmutableHashSet<ProjectId>>? reverseReferencesMap) 521foreach (var referencedProject in referencedProjects) 531foreach (var referencingProject in referencingProjects) 549public ImmutableHashSet<ProjectId>? TryGetProjectsThatTransitivelyDependOnThisProject(ProjectId projectId) 564internal bool DoesProjectTransitivelyDependOnProject(ProjectId id, ProjectId potentialDependency)
Workspace\Solution\ProjectDependencyGraph_AddProject.cs (1)
9internal ProjectDependencyGraph WithAdditionalProject(ProjectId projectId)
Workspace\Solution\ProjectDependencyGraph_AddProjectReference.cs (30)
15internal ProjectDependencyGraph WithAdditionalProjectReferences(ProjectId projectId, IReadOnlyCollection<ProjectReference> projectReferences) 58private static ImmutableDictionary<ProjectId, ImmutableHashSet<ProjectId>> ComputeNewReferencesMapForAdditionalProjectReferences( 59ImmutableDictionary<ProjectId, ImmutableHashSet<ProjectId>> existingReferencesMap, 60ProjectId projectId, 61IReadOnlyList<ProjectId> referencedProjectIds) 78private static ImmutableDictionary<ProjectId, ImmutableHashSet<ProjectId>>? ComputeNewReverseReferencesMapForAdditionalProjectReferences( 79ImmutableDictionary<ProjectId, ImmutableHashSet<ProjectId>>? existingReverseReferencesMap, 80ProjectId projectId, 81IReadOnlyList<ProjectId> referencedProjectIds) 88foreach (var referencedProject in referencedProjectIds) 99private static ImmutableDictionary<ProjectId, ImmutableHashSet<ProjectId>> ComputeNewTransitiveReferencesMapForAdditionalProjectReferences( 100ImmutableDictionary<ProjectId, ImmutableHashSet<ProjectId>> existingTransitiveReferencesMap, 101ProjectId projectId, 102IReadOnlyList<ProjectId> referencedProjectIds) 108var newTransitiveReferences = new HashSet<ProjectId>(referencedProjectIds); 110foreach (var referencedProjectId in referencedProjectIds) 126foreach (var projectIdToUpdate in existingTransitiveReferencesMap.Keys) 155private static ImmutableDictionary<ProjectId, ImmutableHashSet<ProjectId>> ComputeNewReverseTransitiveReferencesMapForAdditionalProjectReferences( 156ImmutableDictionary<ProjectId, ImmutableHashSet<ProjectId>> existingReverseTransitiveReferencesMap, 157ProjectId projectId, 158IReadOnlyList<ProjectId> referencedProjectIds) 174foreach (var projectIdToUpdate in existingReverseTransitiveReferencesMap.Keys)
Workspace\Solution\ProjectDependencyGraph_RemoveAllProjectReferences.cs (24)
14internal ProjectDependencyGraph WithAllProjectReferencesRemoved(ProjectId projectId) 40private static ImmutableDictionary<ProjectId, ImmutableHashSet<ProjectId>> ComputeNewReferencesMapForRemovedAllProjectReferences( 41ImmutableDictionary<ProjectId, ImmutableHashSet<ProjectId>> existingForwardReferencesMap, 42ProjectId projectId) 58private static ImmutableDictionary<ProjectId, ImmutableHashSet<ProjectId>>? ComputeNewReverseReferencesMapForRemovedAllProjectReferences( 59ImmutableDictionary<ProjectId, ImmutableHashSet<ProjectId>>? existingReverseReferencesMap, 60ProjectId projectId, 61ImmutableHashSet<ProjectId> referencedProjectIds) 69foreach (var referencedProjectId in referencedProjectIds) 77private static ImmutableDictionary<ProjectId, ImmutableHashSet<ProjectId>> ComputeNewTransitiveReferencesMapForRemovedAllProjectReferences( 78ImmutableDictionary<ProjectId, ImmutableHashSet<ProjectId>> existingTransitiveReferencesMap, 79ProjectId projectId, 80ImmutableHashSet<ProjectId> referencedProjectIds) 104private static ImmutableDictionary<ProjectId, ImmutableHashSet<ProjectId>> ComputeNewReverseTransitiveReferencesMapForRemovedAllProjectReferences( 105ImmutableDictionary<ProjectId, ImmutableHashSet<ProjectId>> existingReverseTransitiveReferencesMap, 106ProjectId projectId)
Workspace\Solution\ProjectDependencyGraph_RemoveProject.cs (37)
14internal ProjectDependencyGraph WithProjectsRemoved(ArrayBuilder<ProjectId> removedProjectIds) 19foreach (var projectId in removedProjectIds) 55private static ImmutableDictionary<ProjectId, ImmutableHashSet<ProjectId>> ComputeNewReferencesMapForRemovedProject( 56ImmutableDictionary<ProjectId, ImmutableHashSet<ProjectId>> existingForwardReferencesMap, 57ImmutableDictionary<ProjectId, ImmutableHashSet<ProjectId>>? existingReverseReferencesMap, 58ArrayBuilder<ProjectId> removedProjectIds) 65foreach (var removedProjectId in removedProjectIds) 71foreach (var id in referencingProjects) 82foreach (var removedProjectId in removedProjectIds) 88foreach (var removedProjectId in removedProjectIds) 99private static ImmutableDictionary<ProjectId, ImmutableHashSet<ProjectId>>? ComputeNewReverseReferencesMapForRemovedProject( 100ImmutableDictionary<ProjectId, ImmutableHashSet<ProjectId>> existingForwardReferencesMap, 101ImmutableDictionary<ProjectId, ImmutableHashSet<ProjectId>>? existingReverseReferencesMap, 102ArrayBuilder<ProjectId> removedProjectIds) 110foreach (var removedProjectId in removedProjectIds) 118foreach (var referencedProjectId in forwardReferences) 123foreach (var removedProjectId in removedProjectIds) 133private static ImmutableDictionary<ProjectId, ImmutableHashSet<ProjectId>> ComputeNewTransitiveReferencesMapForRemovedProject( 134ImmutableDictionary<ProjectId, ImmutableHashSet<ProjectId>> existingTransitiveReferencesMap, 135ArrayBuilder<ProjectId> removedProjectIds) 143foreach (var removedProjectId in removedProjectIds) 157foreach (var removedProjectId in removedProjectIds) 167private static ImmutableDictionary<ProjectId, ImmutableHashSet<ProjectId>> ComputeNewReverseTransitiveReferencesMapForRemovedProject( 168ImmutableDictionary<ProjectId, ImmutableHashSet<ProjectId>> existingReverseTransitiveReferencesMap, 169ArrayBuilder<ProjectId> removedProjectIds) 177foreach (var removedProjectId in removedProjectIds) 191foreach (var removedProjectId in removedProjectIds)
Workspace\Solution\ProjectDependencyGraph_RemoveProjectReference.cs (26)
14internal ProjectDependencyGraph WithProjectReferenceRemoved(ProjectId projectId, ProjectId referencedProjectId) 38private static ImmutableDictionary<ProjectId, ImmutableHashSet<ProjectId>> ComputeNewReferencesMapForRemovedProjectReference( 39ImmutableDictionary<ProjectId, ImmutableHashSet<ProjectId>> existingForwardReferencesMap, 40ProjectId projectId, 41ProjectId referencedProjectId) 55private static ImmutableDictionary<ProjectId, ImmutableHashSet<ProjectId>>? ComputeNewReverseReferencesMapForRemovedProjectReference( 56ImmutableDictionary<ProjectId, ImmutableHashSet<ProjectId>>? existingReverseReferencesMap, 57ProjectId projectId, 58ProjectId referencedProjectId) 68private static ImmutableDictionary<ProjectId, ImmutableHashSet<ProjectId>> ComputeNewTransitiveReferencesMapForRemovedProjectReference( 69ImmutableDictionary<ProjectId, ImmutableHashSet<ProjectId>> existingTransitiveReferencesMap, 70ProjectId projectId, 71ProjectId referencedProjectId) 95private static ImmutableDictionary<ProjectId, ImmutableHashSet<ProjectId>> ComputeNewReverseTransitiveReferencesMapForRemovedProjectReference( 96ImmutableDictionary<ProjectId, ImmutableHashSet<ProjectId>> existingReverseTransitiveReferencesMap, 97ProjectId projectId, 98ProjectId referencedProjectId)
Workspace\Solution\ProjectDiagnostic.cs (2)
7public class ProjectDiagnostic(WorkspaceDiagnosticKind kind, string message, ProjectId projectId) : WorkspaceDiagnostic(kind, message) 9public ProjectId ProjectId { get; } = projectId;
Workspace\Solution\ProjectId.cs (16)
25public sealed class ProjectId : IEquatable<ProjectId>, IComparable<ProjectId> 56public static ProjectId CreateNewId(string? debugName = null) 59public static ProjectId CreateFromSerialized(Guid id, string? debugName = null) 76=> this.Equals(obj as ProjectId); 78public bool Equals(ProjectId? other) 82public static bool operator ==(ProjectId? left, ProjectId? right) 83=> EqualityComparer<ProjectId?>.Default.Equals(left, right); 85public static bool operator !=(ProjectId? left, ProjectId? right) 97internal static ProjectId ReadFrom(ObjectReader reader) 112writer.WriteString(nameof(ProjectId)); 116internal int CompareTo(ProjectId other) 119int IComparable<ProjectId>.CompareTo(ProjectId? other)
Workspace\Solution\ProjectInfo.cs (10)
27public ProjectId Id => Attributes.Id; 186ProjectId id, 214ProjectId id, 335public ProjectInfo WithId(ProjectId id) 413ProjectId id, 438public ProjectId Id { get; } = id; 534ProjectId? id = null, 550var newId = id ?? Id; 632var projectId = ProjectId.ReadFrom(reader);
Workspace\Solution\ProjectReference.cs (2)
19public ProjectReference(ProjectId projectId, ImmutableArray<string> aliases = default, bool embedInteropTypes = false) 28public ProjectId ProjectId { get; }
Workspace\Solution\ProjectState.cs (2)
626public ProjectId Id => this.ProjectInfo.Id; 835public bool ContainsReferenceToProject(ProjectId projectId)
Workspace\Solution\Solution.cs (52)
32private readonly Dictionary<ProjectId, Project> _projectIdToProjectMap = []; 85internal ProjectState? GetProjectState(ProjectId projectId) => this.SolutionState.GetProjectState(projectId); 120public IReadOnlyList<ProjectId> ProjectIds => this.SolutionState.ProjectIds; 124/// Ordered by <see cref="ProjectState.Id"/>'s <see cref="ProjectId.Id"/> value. 142public bool ContainsProject([NotNullWhen(returnValue: true)] ProjectId? projectId) 150public Project? GetProject(ProjectId? projectId) 163private static readonly Func<ProjectId, Solution, Project> s_createProjectFunction = CreateProject; 164private static Project CreateProject(ProjectId projectId, Solution solution) 179var projectId = SolutionCompilationState.GetProjectId(assemblySymbol); 184/// Given a <paramref name="symbol"/> returns the <see cref="ProjectId"/> of the <see cref="Project"/> it came 203internal ProjectId? GetOriginatingProjectId(ISymbol symbol) 241public DocumentId? GetDocumentId(SyntaxTree? syntaxTree, ProjectId? projectId) 326internal Document? GetDocument(SyntaxTree? syntaxTree, ProjectId? projectId) 359var id = ProjectId.CreateNewId(debugName: name); 366public Solution AddProject(ProjectId projectId, string name, string assemblyName, string language) 382public Solution RemoveProject(ProjectId projectId) 384using var _ = ArrayBuilder<ProjectId>.GetInstance(1, out var projectIds); 390internal Solution RemoveProjects(ArrayBuilder<ProjectId> projectIds) 397public Solution WithProjectAssemblyName(ProjectId projectId, string assemblyName) 412public Solution WithProjectOutputFilePath(ProjectId projectId, string? outputFilePath) 422public Solution WithProjectOutputRefFilePath(ProjectId projectId, string? outputRefFilePath) 432public Solution WithProjectCompilationOutputInfo(ProjectId projectId, in CompilationOutputInfo info) 442public Solution WithProjectDefaultNamespace(ProjectId projectId, string? defaultNamespace) 452internal Solution WithProjectChecksumAlgorithm(ProjectId projectId, SourceHashAlgorithm checksumAlgorithm) 462public Solution WithProjectName(ProjectId projectId, string name) 477public Solution WithProjectFilePath(ProjectId projectId, string? filePath) 488public Solution WithProjectCompilationOptions(ProjectId projectId, CompilationOptions options) 504public Solution WithProjectParseOptions(ProjectId projectId, ParseOptions options) 527internal Solution WithHasAllInformation(ProjectId projectId, bool hasAllInformation) 539internal Solution WithRunAnalyzers(ProjectId projectId, bool runAnalyzers) 550internal Solution WithHasSdkCodeStyleAnalyzers(ProjectId projectId, bool hasSdkCodeStyleAnalyzers) 566public Solution WithProjectDocumentsOrder(ProjectId projectId, ImmutableList<DocumentId> documentIds) 604public Solution AddProjectReference(ProjectId projectId, ProjectReference projectReference) 620public Solution AddProjectReferences(ProjectId projectId, IEnumerable<ProjectReference> projectReferences) 650public Solution RemoveProjectReference(ProjectId projectId, ProjectReference projectReference) 681public Solution WithProjectReferences(ProjectId projectId, IEnumerable<ProjectReference>? projectReferences) 702public Solution AddMetadataReference(ProjectId projectId, MetadataReference metadataReference) 717public Solution AddMetadataReferences(ProjectId projectId, IEnumerable<MetadataReference> metadataReferences) 744public Solution RemoveMetadataReference(ProjectId projectId, MetadataReference metadataReference) 766public Solution WithProjectMetadataReferences(ProjectId projectId, IEnumerable<MetadataReference> metadataReferences) 782public Solution AddAnalyzerReference(ProjectId projectId, AnalyzerReference analyzerReference) 797public Solution AddAnalyzerReferences(ProjectId projectId, IEnumerable<AnalyzerReference> analyzerReferences) 831public Solution RemoveAnalyzerReference(ProjectId projectId, AnalyzerReference analyzerReference) 860public Solution WithProjectAnalyzerReferences(ProjectId projectId, IEnumerable<AnalyzerReference> analyzerReferences) 1127internal ProjectState GetRequiredProjectState(ProjectId projectId) 1587internal DocumentId? GetFirstRelatedDocumentId(DocumentId documentId, ProjectId? relatedProjectIdHint) 1668internal Solution WithCachedSourceGeneratorState(ProjectId projectToUpdate, Project projectWithCachedGeneratorState) 1740private void CheckContainsProject(ProjectId projectId) 1852private void CheckCircularProjectReferences(ProjectId projectId, IReadOnlyCollection<ProjectReference> projectReferences) 1877private void CheckSubmissionProjectReferences(ProjectId projectId, IEnumerable<ProjectReference> projectReferences, bool ignoreExistingReferences) 1905internal SourceGeneratorExecutionVersion GetSourceGeneratorExecutionVersion(ProjectId projectId)
Workspace\Solution\SolutionChanges.cs (3)
27foreach (var id in NewSolution.ProjectIds) 41foreach (var id in NewSolution.ProjectIds) 54foreach (var id in OldSolution.ProjectIds)
Workspace\Solution\SolutionCompilationState.CompilationTracker.CompilationTrackerState.cs (6)
219ProjectId projectId, 220Dictionary<MetadataReference, ProjectId>? metadataReferenceToProjectId) 250private static void RecordAssemblySymbols(ProjectId projectId, Compilation compilation, Dictionary<MetadataReference, ProjectId>? metadataReferenceToProjectId) 264private static void RecordSourceOfAssemblySymbol(ISymbol? assemblyOrModuleSymbol, ProjectId projectId) 274if (!s_assemblyOrModuleSymbolToProjectMap.TryGetValue(assemblyOrModuleSymbol, out var tmp))
Workspace\Solution\SolutionCompilationState.cs (74)
32private static readonly ConditionalWeakTable<ISymbol, ProjectId> s_assemblyOrModuleSymbolToProjectMap = new(); 47private ImmutableSegmentedDictionary<ProjectId, ICompilationTracker> _projectIdToTrackerMap; 62ImmutableSegmentedDictionary<ProjectId, ICompilationTracker> projectIdToTrackerMap, 94projectIdToTrackerMap: ImmutableSegmentedDictionary<ProjectId, ICompilationTracker>.Empty, 117ImmutableSegmentedDictionary<ProjectId, ICompilationTracker>? projectIdToTrackerMap = null, 181var projectId = newProjectState.Id; 208/// Creates a mapping of <see cref="ProjectId"/> to <see cref="ICompilationTracker"/> 214private ImmutableSegmentedDictionary<ProjectId, ICompilationTracker> CreateCompilationTrackerMap<TArg>( 215ProjectId changedProjectId, 217Action<ImmutableSegmentedDictionary<ProjectId, ICompilationTracker>.Builder, TArg> modifyNewTrackerInfo, 224static bool CanReuse(ProjectId id, (ProjectId changedProjectId, ProjectDependencyGraph dependencyGraph) arg) 236/// Creates a mapping of <see cref="ProjectId"/> to <see cref="ICompilationTracker"/> 242private ImmutableSegmentedDictionary<ProjectId, ICompilationTracker> CreateCompilationTrackerMap<TArg>( 243ImmutableArray<ProjectId> changedProjectIds, 245Action<ImmutableSegmentedDictionary<ProjectId, ICompilationTracker>.Builder, TArg> modifyNewTrackerInfo, 252static bool CanReuse(ProjectId id, (ImmutableArray<ProjectId> changedProjectIds, ProjectDependencyGraph dependencyGraph) arg) 257foreach (var changedProjectId in arg.changedProjectIds) 268/// Creates a mapping of <see cref="ProjectId"/> to <see cref="ICompilationTracker"/> 274private ImmutableSegmentedDictionary<ProjectId, ICompilationTracker> CreateCompilationTrackerMap<TArgCanReuse, TArgModifyNewTrackerInfo>( 275Func<ProjectId, TArgCanReuse, bool> canReuse, 277Action<ImmutableSegmentedDictionary<ProjectId, ICompilationTracker>.Builder, TArgModifyNewTrackerInfo> modifyNewTrackerInfo, 330using var _ = PooledHashSet<ProjectId>.GetInstance(out var dependentProjects); 359public SolutionCompilationState RemoveProjects(ArrayBuilder<ProjectId> projectIds) 368using var _ = PooledHashSet<ProjectId>.GetInstance(out var dependentProjects); 371foreach (var projectId in projectIds) 373foreach (var dependentProject in originalDependencyGraph.GetProjectsThatTransitivelyDependOnThisProject(projectId)) 388foreach (var projectId in projectIds) 395foreach (var projectId in projectIds) 406ProjectId projectId, string assemblyName) 417public SolutionCompilationState WithProjectOutputFilePath(ProjectId projectId, string? outputFilePath) 427ProjectId projectId, string? outputRefFilePath) 437ProjectId projectId, in CompilationOutputInfo info) 447ProjectId projectId, string? defaultNamespace) 457ProjectId projectId, SourceHashAlgorithm checksumAlgorithm) 468ProjectId projectId, string name) 478ProjectId projectId, string? filePath) 488ProjectId projectId, CompilationOptions? options) 498ProjectId projectId, ParseOptions? options) 523ProjectId projectId, bool hasAllInformation) 533ProjectId projectId, bool runAnalyzers) 543ProjectId projectId, bool hasSdkCodeStyleAnalyzers) 553ProjectId projectId, ImmutableList<DocumentId> documentIds) 564var projectId = attributes.Id; 593var projectId = info.Id; 660ProjectId projectId, IReadOnlyCollection<ProjectReference> projectReferences) 669public SolutionCompilationState RemoveProjectReference(ProjectId projectId, ProjectReference projectReference) 679ProjectId projectId, IReadOnlyList<ProjectReference> projectReferences) 689ProjectId projectId, IReadOnlyCollection<MetadataReference> metadataReferences) 698public SolutionCompilationState RemoveMetadataReference(ProjectId projectId, MetadataReference metadataReference) 708ProjectId projectId, IReadOnlyList<MetadataReference> metadataReferences) 742ProjectId projectId, IReadOnlyList<AnalyzerReference> analyzerReferences) 841var projectId = g.Key; 868IEnumerable<(ProjectId projectId, ImmutableArray<TDocumentState> updatedDocumentState)> updatedDocumentStatesPerProject, 1142public static ProjectId? GetProjectId(IAssemblySymbol? assemblySymbol) 1147s_assemblyOrModuleSymbolToProjectMap.TryGetValue(assemblySymbol, out var id); 1151private bool TryGetCompilationTracker(ProjectId projectId, [NotNullWhen(returnValue: true)] out ICompilationTracker? tracker) 1154private static readonly Func<ProjectId, SolutionState, RegularCompilationTracker> s_createCompilationTrackerFunction = CreateCompilationTracker; 1156private static RegularCompilationTracker CreateCompilationTracker(ProjectId projectId, SolutionState solution) 1163private ICompilationTracker GetCompilationTracker(ProjectId projectId) 1173public Task<VersionStamp> GetDependentVersionAsync(ProjectId projectId, CancellationToken cancellationToken) 1176public Task<VersionStamp> GetDependentSemanticVersionAsync(ProjectId projectId, CancellationToken cancellationToken) 1179public bool TryGetCompilation(ProjectId projectId, [NotNullWhen(returnValue: true)] out Compilation? compilation) 1189/// Returns the compilation for the specified <see cref="ProjectId"/>. Can return <see langword="null"/> when the project 1195private Task<Compilation?> GetCompilationAsync(ProjectId projectId, CancellationToken cancellationToken) 1362foreach (var projectId in projectIdsToUnfreeze) 1560private (ImmutableArray<ProjectState> sortedProjectStates, ImmutableSegmentedDictionary<ProjectId, ICompilationTracker>) ComputeFrozenSnapshotMaps(CancellationToken cancellationToken) 1578var projectId = newSortedProjectStatesBuilder[i].Id; 1718using var _ = PooledDictionary<ProjectId, ArrayBuilder<DocumentState>>.GetInstance(out var missingDocumentStates); 1767var projectId = g.Key; 1797private SolutionCompilationState RemoveDocumentsFromSingleProject<T>(ProjectId projectId, ImmutableArray<DocumentId> documentIds) 1844/// <inheritdoc cref="Solution.WithCachedSourceGeneratorState(ProjectId, Project)"/> 1845public SolutionCompilationState WithCachedSourceGeneratorState(ProjectId projectToUpdate, Project projectWithCachedGeneratorState)
Workspace\Solution\SolutionCompilationState.RegularCompilationTracker.cs (1)
494var metadataReferenceToProjectId = new Dictionary<MetadataReference, ProjectId>();
Workspace\Solution\SolutionCompilationState.RegularCompilationTracker_Generators.cs (1)
100var projectId = this.ProjectState.Id;
Workspace\Solution\SolutionCompilationState.RootedSymbolSet.cs (1)
36ProjectId ProjectId,
Workspace\Solution\SolutionCompilationState.SymbolToProjectId.cs (2)
16internal DocumentState? GetDocumentState(SyntaxTree? syntaxTree, ProjectId? projectId) 72var projectId = unrootedSymbolInfo?.ProjectId;
Workspace\Solution\SolutionCompilationState_Checksum.cs (6)
31private readonly Dictionary<ProjectId, AsyncLazy<(SolutionCompilationStateChecksums checksums, ProjectCone projectCone)>> _lazyProjectChecksums = []; 36public bool TryGetStateChecksums(ProjectId projectId, [NotNullWhen(true)] out SolutionCompilationStateChecksums? stateChecksums) 70ProjectId projectId, 96public async Task<Checksum> GetChecksumAsync(ProjectId projectId, CancellationToken cancellationToken) 103ProjectId? projectId, 157var projectId = projectState.Id;
Workspace\Solution\SolutionCompilationState_SourceGenerators.cs (2)
105public async Task<bool> HasSourceGeneratorsAsync(ProjectId projectId, CancellationToken cancellationToken) 138var projectId = projectState.Id;
Workspace\Solution\SolutionState.cs (49)
78IReadOnlyList<ProjectId> projectIds, 124projectIds: SpecializedCollections.EmptyBoxedImmutableArray<ProjectId>(), 141/// Ordered by <see cref="ProjectState.Id"/>'s <see cref="ProjectId.Id"/> value. 164public IReadOnlyList<ProjectId> ProjectIds { get; } 186IReadOnlyList<ProjectId>? projectIds = null, 289public bool ContainsProject([NotNullWhen(returnValue: true)] ProjectId? projectId) 334public ProjectState? GetProjectState(ProjectId projectId) 341private static ProjectState? GetProjectState(ImmutableArray<ProjectState> sortedProjectStates, ProjectId projectId) 353private static int GetProjectStateIndex(ImmutableArray<ProjectState> sortedProjectStates, ProjectId projectId) 360public ProjectState GetRequiredProjectState(ProjectId projectId) 390var projectId = projectInfo.Id; 422using var _1 = ArrayBuilder<ProjectId>.GetInstance(ProjectIds.Count + projectStates.Count, out var newProjectIdsBuilder); 423using var _2 = PooledHashSet<ProjectId>.GetInstance(out var addedProjectIds); 446var projectId = projectState.Id; 475public SolutionState RemoveProjects(ArrayBuilder<ProjectId> projectIds) 482foreach (var projectId in projectIds) 488using var _ = PooledHashSet<ProjectId>.GetInstance(out var projectIdsSet); 496foreach (var projectId in projectIds) 550public StateChange WithProjectAssemblyName(ProjectId projectId, string assemblyName) 566public StateChange WithProjectOutputFilePath(ProjectId projectId, string? outputFilePath) 582public StateChange WithProjectOutputRefFilePath(ProjectId projectId, string? outputRefFilePath) 598public StateChange WithProjectCompilationOutputInfo(ProjectId projectId, in CompilationOutputInfo info) 614public StateChange WithProjectDefaultNamespace(ProjectId projectId, string? defaultNamespace) 630public StateChange WithProjectChecksumAlgorithm(ProjectId projectId, SourceHashAlgorithm checksumAlgorithm) 646public StateChange WithProjectName(ProjectId projectId, string name) 662public StateChange WithProjectFilePath(ProjectId projectId, string? filePath) 679public StateChange WithProjectCompilationOptions(ProjectId projectId, CompilationOptions? options) 696public StateChange WithProjectParseOptions(ProjectId projectId, ParseOptions? options) 713public StateChange WithHasAllInformation(ProjectId projectId, bool hasAllInformation) 731public StateChange WithRunAnalyzers(ProjectId projectId, bool runAnalyzers) 749internal StateChange WithHasSdkCodeStyleAnalyzers(ProjectId projectId, bool hasSdkCodeStyleAnalyzers) 767public StateChange AddProjectReferences(ProjectId projectId, IReadOnlyCollection<ProjectReference> projectReferences) 788public StateChange RemoveProjectReference(ProjectId projectId, ProjectReference projectReference) 828public StateChange WithProjectReferences(ProjectId projectId, IReadOnlyList<ProjectReference> projectReferences) 845public StateChange WithProjectDocumentsOrder(ProjectId projectId, ImmutableList<DocumentId> documentIds) 876public StateChange AddMetadataReferences(ProjectId projectId, IReadOnlyCollection<MetadataReference> metadataReferences) 894public StateChange RemoveMetadataReference(ProjectId projectId, MetadataReference metadataReference) 911public StateChange WithProjectMetadataReferences(ProjectId projectId, IReadOnlyList<MetadataReference> metadataReferences) 927public StateChange WithProjectAnalyzerReferences(ProjectId projectId, IReadOnlyList<AnalyzerReference> analyzerReferences) 1193var projectId = newProjectState.Id; 1227IReadOnlyList<ProjectId> projectIds, 1275public DocumentId? GetFirstRelatedDocumentId(DocumentId documentId, ProjectId? relatedProjectIdHint) 1383private void CheckNotContainsProject(ProjectId projectId) 1391internal void CheckContainsProject(ProjectId projectId) 1399internal bool ContainsProjectReference(ProjectId projectId, ProjectReference projectReference) 1402internal bool ContainsMetadataReference(ProjectId projectId, MetadataReference metadataReference) 1405internal bool ContainsAnalyzerReference(ProjectId projectId, AnalyzerReference analyzerReference) 1408internal bool ContainsTransitiveReference(ProjectId fromProjectId, ProjectId toProjectId)
Workspace\Solution\SolutionState_Checksum.cs (7)
32private readonly Dictionary<ProjectId, AsyncLazy<SolutionStateChecksums>> _lazyProjectChecksums = []; 37public bool TryGetStateChecksums(ProjectId projectId, [NotNullWhen(true)] out SolutionStateChecksums? stateChecksums) 64ProjectId projectId, 86public async Task<Checksum> GetChecksumAsync(ProjectId projectId, CancellationToken cancellationToken) 95ProjectId? projectConeId, 98using var projectCone = SharedPools.Default<HashSet<ProjectId>>().GetPooledObject(); 154void AddProjectCone(ProjectId? projectConeId)
Workspace\Solution\SourceGeneratedDocumentIdentity.cs (1)
35public static SourceGeneratedDocumentIdentity Generate(ProjectId projectId, string hintName, ISourceGenerator generator, string filePath, AnalyzerReference analyzerReference)
Workspace\Solution\SourceGeneratorExecutionVersion.cs (8)
61/// Helper construct to allow a mapping from <see cref="ProjectId"/>s to <see cref="SourceGeneratorExecutionVersion"/>. 64internal sealed class SourceGeneratorExecutionVersionMap(ImmutableSortedDictionary<ProjectId, SourceGeneratorExecutionVersion> map) 68public ImmutableSortedDictionary<ProjectId, SourceGeneratorExecutionVersion> Map { get; } = map; 71: this(ImmutableSortedDictionary<ProjectId, SourceGeneratorExecutionVersion>.Empty) 75public SourceGeneratorExecutionVersion this[ProjectId projectId] => Map[projectId]; 104var builder = ImmutableSortedDictionary.CreateBuilder<ProjectId, SourceGeneratorExecutionVersion>(); 107var projectId = ProjectId.ReadFrom(reader);
Workspace\Solution\StateChecksums.cs (7)
186/// <param name="projectConeId">The particular <see cref="ProjectId"/> if this was a checksum tree made for a particular 189ProjectId? projectConeId, 204public ProjectId? ProjectConeId { get; } = projectConeId; 245projectConeId: reader.ReadBoolean() ? ProjectId.ReadFrom(reader) : null, 329ProjectId projectId, 353public ProjectId ProjectId => projectId; 411projectId: ProjectId.ReadFrom(reader),
Workspace\Workspace.cs (54)
97_updateSourceGeneratorsQueue = new AsyncBatchingWorkQueue<(ProjectId? projectId, bool forceRegeneration)>( 101EqualityComparer<(ProjectId? projectId, bool forceRegeneration)>.Default, 200/// <inheritdoc cref="SetCurrentSolution(Func{Solution, Solution}, Func{Solution, Solution, ValueTuple{WorkspaceChangeKind, ProjectId?, DocumentId?}}, Action{Solution, Solution}?, Action{Solution, Solution}?)"/> 204ProjectId? projectId = null, 232Func<Solution, Solution, (WorkspaceChangeKind changeKind, ProjectId? projectId, DocumentId? documentId)> changeKind, 252Func<Solution, Solution, (WorkspaceChangeKind changeKind, ProjectId? projectId, DocumentId? documentId)> changeKind, 331ProjectId? relatedProjectIdHint = null; 691protected virtual void ClearProjectData(ProjectId projectId) 854var projectId = reloadedProjectInfo.Id; 869protected internal virtual void OnProjectRemoved(ProjectId projectId) 892protected virtual void CheckProjectCanBeRemoved(ProjectId projectId) 899protected internal void OnAssemblyNameChanged(ProjectId projectId, string assemblyName) 905protected internal void OnOutputFilePathChanged(ProjectId projectId, string? outputFilePath) 911protected internal void OnOutputRefFilePathChanged(ProjectId projectId, string? outputFilePath) 921protected internal void OnProjectNameChanged(ProjectId projectId, string name, string? filePath) 927internal void OnDefaultNamespaceChanged(ProjectId projectId, string? defaultNamespace) 933protected internal void OnCompilationOptionsChanged(ProjectId projectId, CompilationOptions options) 939protected internal void OnParseOptionsChanged(ProjectId projectId, ParseOptions options) 945protected internal void OnProjectReferenceAdded(ProjectId projectId, ProjectReference projectReference) 962protected internal void OnProjectReferenceRemoved(ProjectId projectId, ProjectReference projectReference) 976protected internal void OnMetadataReferenceAdded(ProjectId projectId, MetadataReference metadataReference) 988protected internal void OnMetadataReferenceRemoved(ProjectId projectId, MetadataReference metadataReference) 1000protected internal void OnAnalyzerReferenceAdded(ProjectId projectId, AnalyzerReference analyzerReference) 1012protected internal void OnAnalyzerReferenceRemoved(ProjectId projectId, AnalyzerReference analyzerReference) 1056internal void OnHasAllInformationChanged(ProjectId projectId, bool hasAllInformation) 1062internal void OnRunAnalyzersChanged(ProjectId projectId, bool runAnalyzers) 1087foreach (var projectId in data.documentInfos.Select(i => i.Id.ProjectId).Distinct()) 1478var outputAssemblyToProjectIdMap = new Dictionary<string, ProjectId>(); 1493foreach (var pid in solution.ProjectIds) 1504if ((!RoslynString.IsNullOrEmpty(pemeta.Display) && outputAssemblyToProjectIdMap.TryGetValue(pemeta.Display, out var matchingProjectId)) || 1540internal virtual bool CanAddProjectReference(ProjectId referencingProject, ProjectId referencedProject) 2100protected virtual void ApplyProjectRemoved(ProjectId projectId) 2111protected virtual void ApplyCompilationOptionsChanged(ProjectId projectId, CompilationOptions options) 2129protected virtual void ApplyParseOptionsChanged(ProjectId projectId, ParseOptions options) 2146protected virtual void ApplyProjectReferenceAdded(ProjectId projectId, ProjectReference projectReference) 2157protected virtual void ApplyProjectReferenceRemoved(ProjectId projectId, ProjectReference projectReference) 2168protected virtual void ApplyMetadataReferenceAdded(ProjectId projectId, MetadataReference metadataReference) 2179protected virtual void ApplyMetadataReferenceRemoved(ProjectId projectId, MetadataReference metadataReference) 2190protected virtual void ApplyAnalyzerReferenceAdded(ProjectId projectId, AnalyzerReference analyzerReference) 2201protected virtual void ApplyAnalyzerReferenceRemoved(ProjectId projectId, AnalyzerReference analyzerReference) 2359protected void CheckProjectIsInCurrentSolution(ProjectId projectId) 2362private static void CheckProjectIsInSolution(Solution solution, ProjectId projectId) 2375protected void CheckProjectIsNotInCurrentSolution(ProjectId projectId) 2378private static void CheckProjectIsNotInSolution(Solution solution, ProjectId projectId) 2391protected void CheckProjectHasProjectReference(ProjectId fromProjectId, ProjectReference projectReference) 2404protected void CheckProjectDoesNotHaveProjectReference(ProjectId fromProjectId, ProjectReference projectReference) 2417protected void CheckProjectDoesNotHaveTransitiveProjectReference(ProjectId fromProjectId, ProjectId toProjectId) 2431protected void CheckProjectHasMetadataReference(ProjectId projectId, MetadataReference metadataReference) 2442protected void CheckProjectDoesNotHaveMetadataReference(ProjectId projectId, MetadataReference metadataReference) 2453protected void CheckProjectHasAnalyzerReference(ProjectId projectId, AnalyzerReference analyzerReference) 2464protected void CheckProjectDoesNotHaveAnalyzerReference(ProjectId projectId, AnalyzerReference analyzerReference) 2590protected virtual string GetProjectName(ProjectId projectId)
Workspace\Workspace_Editor.cs (5)
24private readonly Dictionary<ProjectId, HashSet<DocumentId>> _projectToOpenDocumentsMap = []; 66private void ClearOpenDocuments(ProjectId projectId) 160protected void CheckProjectDoesNotContainOpenDocuments(ProjectId projectId) 168private bool ProjectHasOpenDocuments(ProjectId projectId) 191public virtual IEnumerable<DocumentId> GetOpenDocumentIds(ProjectId? projectId = null)
Workspace\Workspace_Events.cs (1)
96protected Task RaiseWorkspaceChangedEventAsync(WorkspaceChangeKind kind, Solution oldSolution, Solution newSolution, ProjectId? projectId = null, DocumentId? documentId = null)
Workspace\Workspace_SourceGeneration.cs (8)
20/// <see cref="ProjectId"/> represents the projects that have changed, and which need their source-generators 27private readonly AsyncBatchingWorkQueue<(ProjectId? projectId, bool forceRegeneration)> _updateSourceGeneratorsQueue; 31internal void EnqueueUpdateSourceGeneratorVersion(ProjectId? projectId, bool forceRegeneration) 35ImmutableSegmentedList<(ProjectId? projectId, bool forceRegeneration)> projectIds, CancellationToken cancellationToken) 71Solution solution, ImmutableSegmentedList<(ProjectId? projectId, bool forceRegeneration)> projectIds) 77var result = ImmutableSortedDictionary.CreateBuilder<ProjectId, SourceGeneratorExecutionVersion>(); 97foreach (var projectId in solution.ProjectIds) 127foreach (var transitiveProjectId in dependencyGraph.GetProjectsThatTransitivelyDependOnThisProject(projectId))
Workspace\WorkspaceChangeEventArgs.cs (2)
49public ProjectId? ProjectId { get; } 65public WorkspaceChangeEventArgs(WorkspaceChangeKind kind, Solution oldSolution, Solution newSolution, ProjectId? projectId = null, DocumentId? documentId = null)
Microsoft.CodeAnalysis.Workspaces.MSBuild (55)
MSBuild\MSBuildProjectLoader.Worker.cs (9)
40/// Map of <see cref="ProjectId"/>s, project paths, and output file paths. 64private readonly Dictionary<ProjectId, ProjectFileInfo> _projectIdToFileInfoMap; 65private readonly Dictionary<ProjectId, List<ProjectReference>> _projectIdToProjectReferencesMap; 225var idsAndFileInfos = new List<(ProjectId id, ProjectFileInfo fileInfo)>(); 229var projectId = _projectMap.GetOrCreateProjectId(projectFileInfo); 241projectId = ProjectId.CreateNewId(debugName: projectFileInfo.FilePath); 267private Task<ProjectInfo> CreateProjectInfoAsync(ProjectFileInfo projectFileInfo, ProjectId projectId, bool addDiscriminator, CancellationToken cancellationToken) 429private ImmutableArray<DocumentInfo> CreateDocumentInfos(IReadOnlyList<DocumentFileInfo> documentFileInfos, ProjectId projectId, Encoding? encoding) 472private void CheckForDuplicateDocuments(ImmutableArray<DocumentInfo> documents, string? projectFilePath, ProjectId projectId)
MSBuild\MSBuildProjectLoader.Worker_ResolveReferences.cs (10)
187private async Task<ResolvedReferences> ResolveReferencesAsync(ProjectId id, ProjectFileInfo projectFileInfo, CommandLineArguments commandLineArgs, CancellationToken cancellationToken) 247var unknownProjectId = _projectMap.GetOrCreateProjectId(projectFileReference.Path); 268private async Task<bool> TryLoadAndAddReferenceAsync(ProjectId id, string projectReferencePath, ImmutableArray<string> aliases, ResolvedReferencesBuilder builder, CancellationToken cancellationToken) 370private ProjectReference CreateProjectReference(ProjectId from, ProjectId to, ImmutableArray<string> aliases) 377private bool ProjectReferenceExists(ProjectId to, ProjectId from) 381private static bool ProjectReferenceExists(ProjectId to, ProjectInfo from) 385ProjectId id, 392foreach (var projectReferenceId in projectReferenceIds)
MSBuild\MSBuildWorkspace.cs (7)
572protected override void ApplyMetadataReferenceAdded(ProjectId projectId, MetadataReference metadataReference) 608protected override void ApplyMetadataReferenceRemoved(ProjectId projectId, MetadataReference metadataReference) 627private AssemblyIdentity? GetAssemblyIdentity(ProjectId projectId, MetadataReference metadataReference) 650protected override void ApplyProjectReferenceAdded(ProjectId projectId, ProjectReference projectReference) 665protected override void ApplyProjectReferenceRemoved(ProjectId projectId, ProjectReference projectReference) 678protected override void ApplyAnalyzerReferenceAdded(ProjectId projectId, AnalyzerReference analyzerReference) 690protected override void ApplyAnalyzerReferenceRemoved(ProjectId projectId, AnalyzerReference analyzerReference)
MSBuild\ProjectMap.cs (29)
21/// A map of project path to <see cref="ProjectId"/>s. Note that there can be multiple <see cref="ProjectId"/>s per project path 24private readonly Dictionary<string, HashSet<ProjectId>> _projectPathToProjectIdsMap; 27/// A map of project path to <see cref="ProjectInfo"/>s. Note that there can be multiple <see cref="ProjectId"/>s per project path 33/// A map of <see cref="ProjectId"/> to the output file of the project (if any). 35private readonly Dictionary<ProjectId, string> _projectIdToOutputFilePathMap; 38/// A map of <see cref="ProjectId"/> to the output ref file of the project (if any). 40private readonly Dictionary<ProjectId, string> _projectIdToOutputRefFilePathMap; 44_projectPathToProjectIdsMap = new Dictionary<string, HashSet<ProjectId>>(PathUtilities.Comparer); 81private void Add(ProjectId projectId, string? projectPath, string? outputFilePath, string? outputRefFilePath) 122private ProjectId CreateProjectId(string? projectPath, string? outputFilePath, string? outputRefFilePath) 124var newProjectId = ProjectId.CreateNewId(debugName: projectPath); 129internal ProjectId GetOrCreateProjectId(string projectPath) 142internal ProjectId GetOrCreateProjectId(ProjectFileInfo projectFileInfo) 150if (TryFindOutputFileRefPathInProjectIdSet(outputRefFilePath, projectIds, out var projectId) || 160private bool TryFindOutputFileRefPathInProjectIdSet(string? outputRefFilePath, HashSet<ProjectId> set, [NotNullWhen(true)] out ProjectId? result) 163private bool TryFindOutputFilePathInProjectIdSet(string? outputFilePath, HashSet<ProjectId> set, [NotNullWhen(true)] out ProjectId? result) 166private static bool TryFindPathInProjectIdSet(string? path, Func<ProjectId, string?> getPathById, HashSet<ProjectId> set, [NotNullWhen(true)] out ProjectId? result) 170foreach (var id in set) 186internal string? GetOutputRefFilePathById(ProjectId projectId) 191internal string? GetOutputFilePathById(ProjectId projectId) 196internal bool TryGetIdsByProjectPath(string projectPath, [NotNullWhen(true)] out HashSet<ProjectId>? ids) 199internal bool TryGetOutputFilePathById(ProjectId id, [NotNullWhen(true)] out string? outputFilePath) 202internal bool TryGetOutputRefFilePathById(ProjectId id, [NotNullWhen(true)] out string? outputRefFilePath)
Microsoft.CodeAnalysis.Workspaces.MSBuild.UnitTests (7)
NetCoreTests.cs (3)
151var projectRefId = projectReference.ProjectId; 198var projectRefId = projectReference.ProjectId; 540var projectRefId = projectReference.ProjectId;
VisualStudioMSBuildWorkspaceTests.cs (4)
428var pid2 = ProjectId.CreateNewId(); 2181var csProjectId = csProject.Id; 2185var vbProjectId = vbProject.Id;
Microsoft.CodeAnalysis.Workspaces.Test.Utilities (23)
SolutionUtilities.cs (3)
25var projectId = projectChanges.Single().ProjectId; 107var id = ProjectId.CreateNewId();
TestDynamicFileInfoProviderThatProducesFiles.cs (2)
30public Task<DynamicFileInfo> GetDynamicFileInfoAsync(ProjectId projectId, string projectFilePath, string filePath, CancellationToken cancellationToken) 52public Task RemoveDynamicFileInfoAsync(ProjectId projectId, string projectFilePath, string filePath, CancellationToken cancellationToken)
TestDynamicFileInfoProviderThatProducesNoFiles.cs (2)
30public Task<DynamicFileInfo> GetDynamicFileInfoAsync(ProjectId projectId, string projectFilePath, string filePath, CancellationToken cancellationToken) 33public Task RemoveDynamicFileInfoAsync(ProjectId projectId, string projectFilePath, string filePath, CancellationToken cancellationToken)
WorkspaceExtensions.cs (2)
15public static DocumentId AddDocument(this Workspace workspace, ProjectId projectId, IEnumerable<string> folders, string name, SourceText initialText, SourceCodeKind sourceCodeKind = SourceCodeKind.Regular) 41public static DocumentId CreateDocumentId(this ProjectId projectId, string name, IEnumerable<string>? folders = null)
Workspaces\AbstractTestHostProject.cs (1)
14public abstract ProjectId Id { get; }
Workspaces\TestHostProject`1.cs (4)
25private readonly ProjectId _id; 58public override ProjectId Id 108_id = ProjectId.CreateNewId(debugName: this.AssemblyName); 142_id = ProjectId.CreateNewId(debugName: this.Name);
Workspaces\TestWorkspace`1.cs (9)
269public new void OnProjectRemoved(ProjectId projectId) 272public new void OnProjectReferenceAdded(ProjectId projectId, ProjectReference projectReference) 275public new void OnProjectReferenceRemoved(ProjectId projectId, ProjectReference projectReference) 281public new void OnParseOptionsChanged(ProjectId projectId, ParseOptions parseOptions) 284public new void OnAnalyzerReferenceAdded(ProjectId projectId, AnalyzerReference analyzerReference) 324public TestHostProject<TDocument>? GetTestProject(ProjectId projectId) 554public Task ChangeProjectAsync(ProjectId projectId, Solution solution) 574internal override bool CanAddProjectReference(ProjectId referencingProject, ProjectId referencedProject)
Microsoft.CodeAnalysis.Workspaces.UnitTests (513)
CodeCleanup\AddMissingTokensTests.cs (2)
2588var projectId = ProjectId.CreateNewId();
CodeCleanup\CodeCleanupTests.cs (2)
424var projectId = ProjectId.CreateNewId();
CodeCleanup\FixIncorrectTokenTests.cs (2)
733var projectId = ProjectId.CreateNewId();
CodeCleanup\NormalizeModifiersOrOperatorsTests.cs (2)
934var projectId = ProjectId.CreateNewId();
CodeCleanup\ReduceTokenTests.cs (2)
1994var projectId = ProjectId.CreateNewId();
CodeCleanup\RemoveUnnecessaryLineContinuationTests.cs (2)
1336var projectId = ProjectId.CreateNewId();
FindAllDeclarationsTests.cs (10)
128var csharpId = ProjectId.CreateNewId(); 133var vbId = ProjectId.CreateNewId(); 152var submission0Id = ProjectId.CreateNewId(); 167var submission1Id = ProjectId.CreateNewId(); 649var pid = ProjectId.CreateNewId();
FindAllDeclarationsTests.TestSolutionsAndProject.cs (4)
91var pid = ProjectId.CreateNewId(); 112var pid = ProjectId.CreateNewId();
FindReferencesTests.cs (19)
27private static Solution AddProjectWithMetadataReferences(Solution solution, string projectName, string languageName, string code, IEnumerable<MetadataReference> metadataReference, params ProjectId[] projectReferences) 30var pid = ProjectId.CreateNewId(); 43private static Solution AddProjectWithMetadataReferences(Solution solution, string projectName, string languageName, string code, MetadataReference metadataReference, params ProjectId[] projectReferences) 46var pid = ProjectId.CreateNewId(); 61var pid = ProjectId.CreateNewId(); 71var pid = ProjectId.CreateNewId(); 124var pid = ProjectId.CreateNewId(); 175var prj1Id = ProjectId.CreateNewId(); 216var prj1Id = ProjectId.CreateNewId(); 282var prj1Id = ProjectId.CreateNewId(); 412var projectIds = new HashSet<ProjectId>();
GeneratedCodeRecognitionTests.cs (2)
96var projectId = ProjectId.CreateNewId(projectName);
LinkedFileDiffMerging\LinkedFileDiffMergingTests.cs (2)
26var projectId = ProjectId.CreateNewId();
SemanticModelReuse\SemanticModelReuseTests.cs (2)
27var projectId = ProjectId.CreateNewId();
SolutionTests\DocumentInfoTests.cs (8)
22var documentId = DocumentId.CreateNewId(ProjectId.CreateNewId()); 34var id = DocumentId.CreateNewId(ProjectId.CreateNewId()); 53var id = DocumentId.CreateNewId(ProjectId.CreateNewId()); 72var documentId = DocumentId.CreateNewId(ProjectId.CreateNewId()); 96var info = DocumentInfo.Create(DocumentId.CreateNewId(ProjectId.CreateNewId()), "doc_name", filePath: path, sourceCodeKind: kind); 104var projectId = ProjectId.CreateNewId(); 106var instance = DocumentInfo.Create(DocumentId.CreateNewId(ProjectId.CreateNewId()), "doc");
SolutionTests\ProjectDependencyGraphTests.cs (12)
226var projectAId = solution.GetProjectsByName("A").Single().Id; 227var projectBId = solution.GetProjectsByName("B").Single().Id; 243var projectAId = ProjectId.CreateNewId("A"); 244var projectBId = ProjectId.CreateNewId("B"); 280var projectId = solution.GetProjectsByName(project).Single().Id; 297var projectId = solution.GetProjectsByName(project).Single().Id; 648var projectId = solution.GetProjectsByName(project).Single().Id; 660var projectId = solution.GetProjectsByName(project).Single().Id; 712var projectId = ProjectId.CreateNewId(debugName: projectName);
SolutionTests\ProjectIdTests.cs (8)
18var id1 = ProjectId.CreateFromSerialized(guid1, "debug1"); 19var id2 = ProjectId.CreateFromSerialized(guid1, "debug2"); 31var id1 = ProjectId.CreateFromSerialized(Guid.NewGuid(), "debug1"); 32var id2 = ProjectId.CreateFromSerialized(Guid.NewGuid(), "debug1");
SolutionTests\ProjectInfoTests.cs (34)
23var pid = ProjectId.CreateNewId(); 36var pid = ProjectId.CreateNewId(); 51var projectReference = new ProjectReference(ProjectId.CreateNewId()); 74var documentInfo = DocumentInfo.Create(DocumentId.CreateNewId(ProjectId.CreateNewId()), "doc"); 76var info1 = ProjectInfo.Create(ProjectId.CreateNewId(), version, "proj", "assembly", "C#", documents: [documentInfo]); 79var info2 = ProjectInfo.Create(ProjectId.CreateNewId(), version, "proj", "assembly", "C#"); 82var info3 = ProjectInfo.Create(ProjectId.CreateNewId(), version, "proj", "assembly", "C#", documents: []); 85var info4 = ProjectInfo.Create(ProjectId.CreateNewId(), version, "proj", "assembly", "C#", documents: []); 93var documentInfo = DocumentInfo.Create(DocumentId.CreateNewId(ProjectId.CreateNewId()), "doc"); 95var info1 = ProjectInfo.Create(ProjectId.CreateNewId(), version, "proj", "assembly", "C#", additionalDocuments: [documentInfo]); 98var info2 = ProjectInfo.Create(ProjectId.CreateNewId(), version, "proj", "assembly", "C#"); 101var info3 = ProjectInfo.Create(ProjectId.CreateNewId(), version, "proj", "assembly", "C#", additionalDocuments: []); 104var info4 = ProjectInfo.Create(ProjectId.CreateNewId(), version, "proj", "assembly", "C#", additionalDocuments: []); 112var projectReference = new ProjectReference(ProjectId.CreateNewId()); 114var info1 = ProjectInfo.Create(ProjectId.CreateNewId(), version, "proj", "assembly", "C#", projectReferences: [projectReference]); 117var info2 = ProjectInfo.Create(ProjectId.CreateNewId(), version, "proj", "assembly", "C#"); 120var info3 = ProjectInfo.Create(ProjectId.CreateNewId(), version, "proj", "assembly", "C#", projectReferences: []); 123var info4 = ProjectInfo.Create(ProjectId.CreateNewId(), version, "proj", "assembly", "C#", projectReferences: []); 133var info1 = ProjectInfo.Create(ProjectId.CreateNewId(), version, "proj", "assembly", "C#", metadataReferences: [metadataReference]); 136var info2 = ProjectInfo.Create(ProjectId.CreateNewId(), version, "proj", "assembly", "C#"); 139var info3 = ProjectInfo.Create(ProjectId.CreateNewId(), version, "proj", "assembly", "C#", metadataReferences: []); 142var info4 = ProjectInfo.Create(ProjectId.CreateNewId(), version, "proj", "assembly", "C#", metadataReferences: []); 152var info1 = ProjectInfo.Create(ProjectId.CreateNewId(), version, "proj", "assembly", "C#", analyzerReferences: [analyzerReference]); 155var info2 = ProjectInfo.Create(ProjectId.CreateNewId(), version, "proj", "assembly", "C#"); 158var info3 = ProjectInfo.Create(ProjectId.CreateNewId(), version, "proj", "assembly", "C#", analyzerReferences: []); 161var info4 = ProjectInfo.Create(ProjectId.CreateNewId(), version, "proj", "assembly", "C#", analyzerReferences: []); 168var projectInfo = ProjectInfo.Create(name: "Goo", filePath: @"C:\", id: ProjectId.CreateNewId(), version: VersionStamp.Default, assemblyName: "Bar", language: "C#"); 175var projectInfo = ProjectInfo.Create(name: "Goo", id: ProjectId.CreateNewId(), version: VersionStamp.Default, assemblyName: "Bar", language: "C#"); 182var projectId = ProjectId.CreateNewId(); 184var instance = ProjectInfo.Create(name: "Name", id: ProjectId.CreateNewId(), version: VersionStamp.Default, assemblyName: "AssemblyName", language: "C#"); 186SolutionTestHelpers.TestProperty(instance, (old, value) => old.WithId(value), opt => opt.Id, ProjectId.CreateNewId(), defaultThrows: true);
SolutionTests\SolutionInfoTests.cs (2)
21var projectInfo = ProjectInfo.Create(ProjectId.CreateNewId(), version, "proj", "assembly", "C#"); 32var projectInfo = ProjectInfo.Create(ProjectId.CreateNewId(), version, "proj", "assembly", "C#");
SolutionTests\SolutionTests.cs (338)
48private static readonly DocumentId s_unrelatedDocumentId = DocumentId.CreateNewId(ProjectId.CreateNewId()); 52var projectId = ProjectId.CreateNewId(); 70var projectId1 = ProjectId.CreateNewId(); 71var projectId2 = ProjectId.CreateNewId(); 271var projectId = documentId.ProjectId; 326var projectId = ProjectId.CreateNewId(); 831var projectId1 = ProjectId.CreateNewId(); 832var projectId2 = ProjectId.CreateNewId(); 1073var projectId = ProjectId.CreateNewId(); 1074var projectId2 = ProjectId.CreateNewId(); 1293var projectId = ProjectId.CreateNewId(); 1328var projectId = ProjectId.CreateNewId(); 1363var projectId = ProjectId.CreateNewId(); 1398var projectId = ProjectId.CreateNewId(); 1433var projectId = ProjectId.CreateNewId(); 1449Assert.Throws<InvalidOperationException>(() => solution.WithProjectAssemblyName(ProjectId.CreateNewId(), "x.dll")); 1455var projectId = ProjectId.CreateNewId(); 1473Assert.Throws<InvalidOperationException>(() => solution.WithProjectOutputFilePath(ProjectId.CreateNewId(), "x.dll")); 1479var projectId = ProjectId.CreateNewId(); 1510var projectId = ProjectId.CreateNewId(); 1527Assert.Throws<InvalidOperationException>(() => solution.WithProjectOutputRefFilePath(ProjectId.CreateNewId(), "x.dll")); 1533var projectId = ProjectId.CreateNewId(); 1550Assert.Throws<InvalidOperationException>(() => solution.WithProjectCompilationOutputInfo(ProjectId.CreateNewId(), info)); 1556var projectId = ProjectId.CreateNewId(); 1573Assert.Throws<InvalidOperationException>(() => solution.WithProjectDefaultNamespace(ProjectId.CreateNewId(), "x")); 1579var projectId = ProjectId.CreateNewId(); 1596var projectId = ProjectId.CreateNewId(); 1670var projectId = ProjectId.CreateNewId(); 1686Assert.Throws<InvalidOperationException>(() => solution.WithProjectName(ProjectId.CreateNewId(), "x")); 1692var projectId = ProjectId.CreateNewId(); 1709Assert.Throws<InvalidOperationException>(() => solution.WithProjectFilePath(ProjectId.CreateNewId(), "x")); 1715var projectId = ProjectId.CreateNewId(); 1725Assert.Throws<InvalidOperationException>(() => solution.WithProjectCompilationOptions(ProjectId.CreateNewId(), options)); 1731var projectId = ProjectId.CreateNewId(); 1757var projectId = ProjectId.CreateNewId(); 1774Assert.Throws<InvalidOperationException>(() => solution.WithProjectParseOptions(ProjectId.CreateNewId(), options)); 1780var projectId = ProjectId.CreateNewId(); 1818var projectId = ProjectId.CreateNewId(); 1856var projectId = ProjectId.CreateNewId(); 1875var projectId = ProjectId.CreateNewId(); 1894var projectId = ProjectId.CreateNewId(); 1915var projectId = solution.Projects.Single().Id; 1917var projectId2 = ProjectId.CreateNewId(); 1936Assert.Throws<InvalidOperationException>(() => solution.WithProjectReferences(ProjectId.CreateNewId(), [projectRef])); 1948var projectId = solution.Projects.Single().Id; 1949var externalProjectRef = new ProjectReference(ProjectId.CreateNewId()); 1964var projectId = solution.Projects.Single().Id; 1965var projectId2 = ProjectId.CreateNewId(); 1966var projectId3 = ProjectId.CreateNewId(); 1974var externalProjectRef = new ProjectReference(ProjectId.CreateNewId()); 2006var projectId = solution.Projects.Single().Id; 2008var projectId2 = ProjectId.CreateNewId(); 2011var externalProjectRef = new ProjectReference(ProjectId.CreateNewId()); 2030Assert.Throws<ArgumentException>("projectReference", () => solution.RemoveProjectReference(projectId, new ProjectReference(ProjectId.CreateNewId()))); 2033Assert.Throws<InvalidOperationException>(() => solution.RemoveProjectReference(ProjectId.CreateNewId(), projectRef2)); 2042var projectId0 = ProjectId.CreateNewId(); 2043var submissionId1 = ProjectId.CreateNewId(); 2044var submissionId2 = ProjectId.CreateNewId(); 2045var submissionId3 = ProjectId.CreateNewId(); 2077var projectId = solution.Projects.Single().Id; 2087Assert.Throws<InvalidOperationException>(() => solution.WithProjectMetadataReferences(ProjectId.CreateNewId(), [metadataRef])); 2095var projectId = solution.Projects.Single().Id; 2120var projectId = solution.Projects.Single().Id; 2139Assert.Throws<InvalidOperationException>(() => solution.RemoveMetadataReference(ProjectId.CreateNewId(), metadataRef1)); 2147var projectId = solution.Projects.Single().Id; 2157Assert.Throws<InvalidOperationException>(() => solution.WithProjectAnalyzerReferences(ProjectId.CreateNewId(), [analyzerRef])); 2165var projectId = solution.Projects.Single().Id; 2193var projectId = solution.Projects.Single().Id; 2212Assert.Throws<InvalidOperationException>(() => solution.RemoveAnalyzerReference(ProjectId.CreateNewId(), analyzerRef1)); 2360var projectId = ProjectId.CreateNewId(); 2379Assert.Throws<InvalidOperationException>(() => solution.AddDocument(documentId: DocumentId.CreateNewId(ProjectId.CreateNewId()), "name", loader)); 2385var projectId = ProjectId.CreateNewId(); 2410Assert.Throws<InvalidOperationException>(() => solution.AddDocument(documentId: DocumentId.CreateNewId(ProjectId.CreateNewId()), "name", "text")); 2416var projectId = ProjectId.CreateNewId(); 2438Assert.Throws<InvalidOperationException>(() => solution.AddDocument(documentId: DocumentId.CreateNewId(ProjectId.CreateNewId()), "name", sourceText)); 2467var projectId = ProjectId.CreateNewId(); 2490Assert.Throws<InvalidOperationException>(() => solution.AddDocument(documentId: DocumentId.CreateNewId(ProjectId.CreateNewId()), "name", syntaxRoot: root)); 2496var projectId = ProjectId.CreateNewId(); 2530var projectId = ProjectId.CreateNewId(); 2557var pid = ProjectId.CreateNewId(); 2570var project1 = ProjectId.CreateNewId(); 2582var project1 = ProjectId.CreateNewId(); 2583var project2 = ProjectId.CreateNewId(); 2592var pid = ProjectId.CreateNewId(); 2617var pid2 = solution.Projects.Single().Id; 2636var projectId = ProjectId.CreateNewId(); 2659var projectId1 = ProjectId.CreateNewId(); 2660var projectId2 = ProjectId.CreateNewId(); 2686var projectId1 = ProjectId.CreateNewId(); 2687var projectId2 = ProjectId.CreateNewId(); 2712var projectId = ProjectId.CreateNewId(); 2732var projectId1 = ProjectId.CreateNewId(); 2733var projectId2 = ProjectId.CreateNewId(); 2754var projectId1 = ProjectId.CreateNewId(); 2755var projectId2 = ProjectId.CreateNewId(); 2773var projectId1 = ProjectId.CreateNewId(); 2774var projectId2 = ProjectId.CreateNewId(); 2792var projectId1 = ProjectId.CreateNewId(); 2793var projectId2 = ProjectId.CreateNewId(); 2827var pm1 = ProjectId.CreateNewId(); 2828var pm2 = ProjectId.CreateNewId(); 2845var pm1 = ProjectId.CreateNewId(); 2846var pm2 = ProjectId.CreateNewId(); 2953var projectIds = Enumerable.Range(0, 5).Select(i => ProjectId.CreateNewId()).ToArray(); 2973var project1 = ProjectId.CreateNewId(); 3011var project1 = ProjectId.CreateNewId(); 3069var project1 = ProjectId.CreateNewId(); 3088var pid = ProjectId.CreateNewId(); 3107var pid = ProjectId.CreateNewId(); 3108var pid2 = ProjectId.CreateNewId(); 3133var pid = ProjectId.CreateNewId(); 3134var pid2 = ProjectId.CreateNewId(); 3163var pid = ProjectId.CreateNewId(); 3185var projectId = ProjectId.CreateNewId(); 3207var pid = ProjectId.CreateNewId(); 3245var pid = ProjectId.CreateNewId(); 3286var projectId = ProjectId.CreateNewId(); 3326var pid = ProjectId.CreateNewId(); 3350var pid = ProjectId.CreateNewId(); 3370var pid = ProjectId.CreateNewId(); 3393var pid = ProjectId.CreateNewId(); 3417var pid = ProjectId.CreateNewId(); 3437var pid = ProjectId.CreateNewId(); 3458var pid = ProjectId.CreateNewId(); 3480var pid = ProjectId.CreateNewId(); 3500var pid = ProjectId.CreateNewId(); 3520var pid = ProjectId.CreateNewId(); 3539var pid = ProjectId.CreateNewId(); 3570var pid = ProjectId.CreateNewId(); 3601var pid = ProjectId.CreateNewId(); 3627var pid = ProjectId.CreateNewId(); 3654var pid = ProjectId.CreateNewId(); 3680var pid = ProjectId.CreateNewId(); 3747var pid = ProjectId.CreateNewId(); 3762private static ObjectReference<Compilation> GetObservedCompilationAsync(Solution solution, ProjectId projectId) 3772var pid = ProjectId.CreateNewId(); 3787private static ObjectReference<Compilation> GetObservedCompilation(Solution solution, ProjectId projectId) 3801var pid = ProjectId.CreateNewId(); 3940var pid = ProjectId.CreateNewId(); 3965var pid1 = ProjectId.CreateNewId("p1"); 3966var pid2 = ProjectId.CreateNewId("p2"); 3967var pid3 = ProjectId.CreateNewId("p3"); 4059ProjectId.CreateNewId(), 4071ProjectId.CreateNewId(), 4091ProjectId.CreateNewId(), 4101ProjectId.CreateNewId(), 4264ProjectId.CreateNewId(), 4277ProjectId.CreateNewId(), 4613var pid = ProjectId.CreateNewId(); 4674var pid = ProjectId.CreateNewId(); 4702var projectId = ProjectId.CreateNewId(); 4738var projectId = ProjectId.CreateNewId(); 4779var projectId = ProjectId.CreateNewId(); 4824var projectId = ProjectId.CreateNewId(); 4855var projectId = ProjectId.CreateNewId(); 4906var projectId = ProjectId.CreateNewId(); 4926var projectId = ProjectId.CreateNewId(); 4947var projectId = ProjectId.CreateNewId(); 4965var projectId = ProjectId.CreateNewId(); 4989var projectId1 = ProjectId.CreateNewId(); 4990var projectId2 = ProjectId.CreateNewId(); 5011var projectId1 = ProjectId.CreateNewId(); 5012var projectId2 = ProjectId.CreateNewId(); 5039var projectId1 = ProjectId.CreateNewId(); 5040var projectId2 = ProjectId.CreateNewId(); 5067var projectId1 = ProjectId.CreateNewId(); 5068var projectId2 = ProjectId.CreateNewId(); 5069var projectId3 = ProjectId.CreateNewId(); 5096var projectId1 = ProjectId.CreateNewId(); 5097var projectId2 = ProjectId.CreateNewId(); 5098var projectId3 = ProjectId.CreateNewId(); 5127var projectId1 = ProjectId.CreateNewId(); 5128var projectId2 = ProjectId.CreateNewId(); 5129var projectId3 = ProjectId.CreateNewId(); 5165var projectId1 = ProjectId.CreateNewId(); 5182var projectId1 = ProjectId.CreateNewId(); 5183var projectId2 = ProjectId.CreateNewId(); 5184var projectId3 = ProjectId.CreateNewId(); 5206using var _2 = ArrayBuilder<ProjectId>.GetInstance(out var projectsToRemove); 5228var projectId1 = ProjectId.CreateNewId(); 5229var projectId2 = ProjectId.CreateNewId(); 5230var projectId3 = ProjectId.CreateNewId(); 5250using var _2 = ArrayBuilder<ProjectId>.GetInstance(out var projectsToRemove); 5272var projectId1 = ProjectId.CreateNewId(); 5273var projectId2 = ProjectId.CreateNewId(); 5283using var _2 = ArrayBuilder<ProjectId>.GetInstance(out var projectsToRemove); 5296var csProjectId = ProjectId.CreateNewId(); 5297var vbProjectId = ProjectId.CreateNewId(); 5353ProjectId.CreateNewId(), 5367ProjectId.CreateNewId(), 5380ProjectId.CreateNewId(), 5394ProjectId.CreateNewId(), 5408ProjectId.CreateNewId(), 5418ProjectId.CreateNewId(), 5466var pid = ProjectId.CreateNewId(); 5549var projectId = ProjectId.CreateNewId();
SolutionTests\SolutionWithSourceGeneratorTests.cs (6)
424var projectIdWithGenerator = solution.ProjectIds.Single(); 425var projectIdWithReference = ProjectId.CreateNewId(); 663var projectIdWithGenerator = solution.ProjectIds.Single(); 906var projectId1 = solution.ProjectIds.Single(); 909var projectId2 = project2.Id;
SolutionTests\SourceGeneratorExecutionVersionMapTests.cs (6)
19var projectId1 = ProjectId.CreateNewId(); 20var projectId2 = ProjectId.CreateNewId(); 23var project1Kvp = new KeyValuePair<ProjectId, SourceGeneratorExecutionVersion>(projectId1, new(MajorVersion: 1, MinorVersion: 1)); 24var project2Kvp = new KeyValuePair<ProjectId, SourceGeneratorExecutionVersion>(projectId2, new(MajorVersion: 2, MinorVersion: 2));
SolutionTests\TryApplyChangesTests.cs (1)
40OnProjectAdded(ProjectInfo.Create(ProjectId.CreateNewId(), VersionStamp.Default, "TestProject", "TestProject", LanguageNames.CSharp));
SyntaxNodeTests.cs (2)
78var pid = ProjectId.CreateNewId();
SyntaxReferenceTests.cs (4)
27var pid = ProjectId.CreateNewId(); 37var pid = ProjectId.CreateNewId();
WorkspaceTests\AdhocWorkspaceTests.cs (25)
29ProjectId.CreateNewId(), 84ProjectId.CreateNewId(), 109var id1 = ProjectId.CreateNewId(); 117var id2 = ProjectId.CreateNewId(); 150var pid = ProjectId.CreateNewId(); 187var pid = ProjectId.CreateNewId(); 212var pid = ProjectId.CreateNewId(); 246var pid = ProjectId.CreateNewId(); 280var pid = ProjectId.CreateNewId(); 319var pid = ProjectId.CreateNewId(); 377var projid = ws.AddProject("TestProject", LanguageNames.CSharp).Id; 406public void SetParseOptions(ProjectId id, ParseOptions options) 414var projectId = ws.AddProject("TestProject", LanguageNames.CSharp).Id; 445var projectId = ws.AddProject("TestProject", LanguageNames.CSharp).Id; 480var projectId = ws.AddProject("TestProject", LanguageNames.CSharp).Id; 512var projectId = ws.AddProject("TestProject", LanguageNames.CSharp).Id; 543var projectId = ws.AddProject("TestProject", LanguageNames.CSharp).Id;
WorkspaceTests\WorkspaceReferenceTests.cs (8)
21ProjectId.CreateNewId(), 50ProjectId.CreateNewId(), 60ProjectId.CreateNewId(), 90ProjectId.CreateNewId(), 100ProjectId.CreateNewId(), 130ProjectId.CreateNewId(), 140ProjectId.CreateNewId(), 174ProjectId.CreateNewId(),
WorkspaceTests\WorkspaceTests.cs (8)
24var projectId = ws.AddProject("TestProject", LanguageNames.CSharp).Id; 37var projectId = ws.AddProject("TestProject", LanguageNames.CSharp).Id; 53var projectId = ws.AddProject("TestProject", LanguageNames.CSharp).Id; 71var projectId = ws.AddProject("TestProject", LanguageNames.CSharp).Id; 88var projectId = ws.AddProject("TestProject", LanguageNames.CSharp).Id; 104var projectId = ws.AddProject("TestProject", LanguageNames.CSharp).Id; 129var info = ProjectInfo.Create(ProjectId.CreateNewId(), VersionStamp.Create(), name, name, language); 147public Document AddDocument(ProjectId projectId, string name, SourceText text)
Microsoft.Interop.ComInterfaceGenerator (1)
src\libraries\System.Runtime.InteropServices\gen\Common\ConvertToSourceGeneratedInteropFixer.cs (1)
112var docProjectId = documentId.ProjectId;
Microsoft.Interop.LibraryImportGenerator (1)
src\libraries\System.Runtime.InteropServices\gen\Common\ConvertToSourceGeneratedInteropFixer.cs (1)
112var docProjectId = documentId.ProjectId;
Microsoft.ML.CodeAnalyzer.Tests (1)
Code\RelaxTestNamingTest.cs (1)
22private static Solution WithoutSuppressedDiagnosticsTransform(Solution solution, ProjectId projectId)
Microsoft.VisualStudio.LanguageServices (182)
CallHierarchy\Finders\AbstractCallFinder.cs (2)
24private readonly ProjectId _projectId; 35ProjectId projectId,
CallHierarchy\Finders\BaseMemberFinder.cs (1)
19public BaseMemberFinder(ISymbol symbol, ProjectId projectId, IAsynchronousOperationListener asyncListener, CallHierarchyProvider provider)
CallHierarchy\Finders\CallToOverrideFinder.cs (1)
16public CallToOverrideFinder(ISymbol symbol, ProjectId projectId, IAsynchronousOperationListener asyncListener, CallHierarchyProvider provider)
CallHierarchy\Finders\FieldReferenceFinder.cs (1)
17public FieldReferenceFinder(ISymbol symbol, ProjectId projectId, IAsynchronousOperationListener asyncListener, CallHierarchyProvider provider)
CallHierarchy\Finders\ImplementerFinder.cs (1)
20public ImplementerFinder(ISymbol symbol, ProjectId projectId, IAsynchronousOperationListener asyncListener, CallHierarchyProvider provider)
CallHierarchy\Finders\InterfaceImplementationCallFinder.cs (1)
20public InterfaceImplementationCallFinder(ISymbol symbol, ProjectId projectId, IAsynchronousOperationListener asyncListener, CallHierarchyProvider provider)
CallHierarchy\Finders\MethodCallFinder.cs (1)
18public MethodCallFinder(ISymbol symbol, ProjectId projectId, IAsynchronousOperationListener asyncListener, CallHierarchyProvider provider)
CallHierarchy\Finders\OverridingMemberFinder.cs (1)
20public OverridingMemberFinder(ISymbol symbol, ProjectId projectId, IAsynchronousOperationListener asyncListener, CallHierarchyProvider provider)
CodeCleanup\AbstractCodeCleanUpFixer.cs (1)
73ProjectId? projectId = null;
CodeLens\RemoteCodeLensReferencesService.cs (2)
35public ValueTask<VersionStamp> GetProjectCodeLensVersionAsync(Solution solution, ProjectId projectId, CancellationToken cancellationToken) 144ProjectId.CreateFromSerialized(descriptor.ProjectGuid), descriptor.DocumentGuid);
CodeModel\IProjectCodeModelFactory.cs (2)
11IProjectCodeModel CreateProjectCodeModel(ProjectId id, ICodeModelInstanceFactory codeModelInstanceFactory); 12EnvDTE.FileCodeModel GetOrCreateFileCodeModel(ProjectId id, string filePath);
DesignerAttribute\VisualStudioDesignerAttributeService.cs (5)
50private readonly ConcurrentDictionary<ProjectId, IProjectItemDesignerTypeUpdateService?> _cpsProjects = []; 170ProjectId projectId, 184ProjectId projectId, 242ProjectId projectId, 282ProjectId projectId, CancellationToken cancellationToken)
Diagnostics\VisualStudioDiagnosticAnalyzerService.cs (1)
224if (projectMap.TryGetProjectId(projectHierarchyItem, targetFrameworkMoniker: null, out var projectId))
ExternalAccess\VSTypeScript\Api\VSTypeScriptContainedLanguageWrapper.cs (2)
62var projectId = ProjectId.CreateNewId();
ExternalAccess\VSTypeScript\Api\VSTypeScriptVisualStudioProjectWrapper.cs (1)
16public ProjectId Id => Project.Id;
Implementation\AbstractEditorFactory.cs (1)
295foreach (var projectId in solution.ProjectIds)
Implementation\HierarchyItemToProjectIdMap.cs (1)
47foreach (var currentId in solution.ProjectIds)
Implementation\IHierarchyItemToProjectIdMap.cs (2)
19/// returns the <see cref="ProjectId"/> of the equivalent Roslyn <see cref="Project"/>. 36public static bool TryGetProjectId(this IHierarchyItemToProjectIdMap idMap, IVsHierarchyItem hierarchyItem, string? targetFrameworkMoniker, [NotNullWhen(true)] out ProjectId? projectId)
LanguageService\AbstractCreateServicesOnTextViewConnection.cs (5)
32private readonly AsyncBatchingWorkQueue<ProjectId?> _workQueue; 53_workQueue = new AsyncBatchingWorkQueue<ProjectId?>( 56EqualityComparer<ProjectId?>.Default, 72_workQueue.AddWork((ProjectId?)null); 80private async ValueTask BatchProcessProjectsWithOpenedDocumentAsync(ImmutableSegmentedList<ProjectId?> projectIds, CancellationToken cancellationToken)
Library\ObjectBrowser\AbstractListItemFactory.cs (25)
69protected MemberListItem CreateFullyQualifiedMemberListItem(ISymbol memberSymbol, ProjectId projectId, bool hidden) 78protected MemberListItem CreateInheritedMemberListItem(ISymbol memberSymbol, ProjectId projectId, bool hidden) 81protected MemberListItem CreateSimpleMemberListItem(ISymbol memberSymbol, ProjectId projectId, bool hidden) 84private MemberListItem CreateMemberListItem(ISymbol memberSymbol, ProjectId projectId, bool hidden, bool isInherited) 98protected TypeListItem CreateSimpleTypeListItem(INamedTypeSymbol namedTypeSymbol, ProjectId projectId, bool hidden) 111protected TypeListItem CreateFullyQualifiedTypeListItem(INamedTypeSymbol namedTypeSymbol, ProjectId projectId, bool hidden) 124protected NamespaceListItem CreateNamespaceListItem(INamespaceSymbol namespaceSymbol, ProjectId projectId) 170ProjectId projectId, 171Func<TSymbol, ProjectId, bool, ObjectListItem> listItemCreator) 184ProjectId projectId, 185Func<TSymbol, ProjectId, bool, ObjectListItem> listItemCreator, 205private ImmutableArray<ObjectListItem> GetBaseTypeListItems(INamedTypeSymbol namedTypeSymbol, Compilation compilation, ProjectId projectId) 293ProjectId projectId, 405public void CollectNamespaceListItems(IAssemblySymbol assemblySymbol, ProjectId projectId, ImmutableArray<ObjectListItem>.Builder builder, string searchString) 456private sealed class AssemblySymbolComparer : IEqualityComparer<(ProjectId, IAssemblySymbol)> 458public bool Equals((ProjectId, IAssemblySymbol) x, (ProjectId, IAssemblySymbol) y) 461public int GetHashCode((ProjectId, IAssemblySymbol) obj) 465public async Task<ImmutableHashSet<(ProjectId, IAssemblySymbol)>> GetAssemblySetAsync( 470foreach (var projectId in solution.ProjectIds) 507public async Task<ImmutableHashSet<(ProjectId, IAssemblySymbol)>> GetAssemblySetAsync(Project project, bool lookInReferences, CancellationToken cancellationToken) 597foreach (var projectId in projectIds) 690ProjectId projectId, 743public void CollectTypeListItems(IAssemblySymbol assemblySymbol, Compilation compilation, ProjectId projectId, ImmutableArray<ObjectListItem>.Builder builder, string searchString) 775public void CollectMemberListItems(IAssemblySymbol assemblySymbol, Compilation compilation, ProjectId projectId, ImmutableArray<ObjectListItem>.Builder builder, string searchString)
Library\ObjectBrowser\AbstractObjectBrowserLibraryManager.cs (3)
188internal Project GetProject(ProjectId projectId) 193var projectId = listItem.ProjectId; 203ProjectId projectId, CancellationToken cancellationToken)
Library\ObjectBrowser\AbstractObjectBrowserLibraryManager_ListItems.cs (5)
14internal void CollectMemberListItems(IAssemblySymbol assemblySymbol, Compilation compilation, ProjectId projectId, ImmutableArray<ObjectListItem>.Builder builder, string searchString) 17internal void CollectNamespaceListItems(IAssemblySymbol assemblySymbol, ProjectId projectId, ImmutableArray<ObjectListItem>.Builder builder, string searchString) 20internal void CollectTypeListItems(IAssemblySymbol assemblySymbol, Compilation compilation, ProjectId projectId, ImmutableArray<ObjectListItem>.Builder builder, string searchString) 23internal Task<ImmutableHashSet<(ProjectId, IAssemblySymbol)>> GetAssemblySetAsync(Solution solution, string languageName, CancellationToken cancellationToken) 26internal Task<ImmutableHashSet<(ProjectId, IAssemblySymbol)>> GetAssemblySetAsync(Project project, bool lookInReferences, CancellationToken cancellationToken)
Library\ObjectBrowser\AbstractObjectBrowserLibraryManager_Search.cs (4)
40ImmutableHashSet<(ProjectId, IAssemblySymbol)> projectAndAssemblySet, 57var projectId = projectIdAndAssembly.Item1; 72var projectId = projectIdAndAssembly.Item1; 91var projectId = projectIdAndAssembly.Item1;
Library\ObjectBrowser\Lists\FolderListItem.cs (1)
14public FolderListItem(ProjectId projectId, string displayText)
Library\ObjectBrowser\Lists\MemberListItem.cs (1)
12internal MemberListItem(ProjectId projectId, ISymbol symbol, string displayText, string fullNameText, string searchText, bool isHidden, bool isInherited)
Library\ObjectBrowser\Lists\NamespaceListItem.cs (1)
11public NamespaceListItem(ProjectId projectId, INamespaceSymbol namespaceSymbol, string displayText, string fullNameText, string searchText)
Library\ObjectBrowser\Lists\ReferenceListItem.cs (1)
16public ReferenceListItem(ProjectId projectId, string name, MetadataReference reference)
Library\ObjectBrowser\Lists\SymbolListItem.cs (1)
23protected SymbolListItem(ProjectId projectId, ISymbol symbol, string displayText, string fullNameText, string searchText, bool isHidden)
Library\ObjectBrowser\Lists\SymbolListItem`1.cs (1)
12protected SymbolListItem(ProjectId projectId, TSymbol symbol, string displayText, string fullNameText, string searchText, bool isHidden)
Library\ObjectBrowser\Lists\TypeListItem.cs (1)
11internal TypeListItem(ProjectId projectId, INamedTypeSymbol typeSymbol, string displayText, string fullNameText, string searchText, bool isHidden)
Library\ObjectBrowser\ObjectListItem.cs (2)
20ProjectId projectId, 71public ProjectId ProjectId { get; }
Packaging\PackageInstallerServiceFactory.cs (14)
80private readonly AsyncBatchingWorkQueue<(bool solutionChanged, ProjectId? changedProject)> _workQueue; 82private readonly ConcurrentDictionary<ProjectId, ProjectState> _projectToInstalledPackageAndVersion = []; 131_workQueue = new AsyncBatchingWorkQueue<(bool solutionChanged, ProjectId? changedProject)>( 134equalityComparer: EqualityComparer<(bool solutionChanged, ProjectId? changedProject)>.Default, 198bool IPackageInstallerService.IsEnabled(ProjectId projectId) 275var projectId = documentId.ProjectId; 429ProjectId? changedProject = null; 457ImmutableSegmentedList<(bool solutionChanged, ProjectId? changedProject)> workQueue, CancellationToken cancellationToken) 472ImmutableSegmentedList<(bool solutionChanged, ProjectId? changedProject)> workQueue, CancellationToken cancellationToken) 479using var _ = PooledHashSet<ProjectId>.GetInstance(out var projectsToProcess); 521ImmutableSegmentedList<(bool solutionChanged, ProjectId? changedProject)> workQueue, Solution solution, HashSet<ProjectId> projectsToProcess) 542ProjectId projectId, 605public bool IsInstalled(ProjectId projectId, string packageName)
Preview\ReferenceChange.AnalyzerReferenceChange.cs (1)
16public AnalyzerReferenceChange(AnalyzerReference reference, ProjectId projectId, string projectName, bool isAdded, PreviewEngine engine)
Preview\ReferenceChange.cs (3)
18protected ReferenceChange(ProjectId projectId, string projectName, bool isAddedReference, PreviewEngine engine) 30var projectId = projectChanges.ProjectId; 70protected ProjectId ProjectId { get; }
Preview\ReferenceChange.MetadataReferenceChange.cs (1)
15public MetadataReferenceChange(MetadataReference reference, ProjectId projectId, string projectName, bool isAdded, PreviewEngine engine)
Preview\ReferenceChange.ProjectReferenceChange.cs (1)
16public ProjectReferenceChange(ProjectReference reference, string projectReferenceName, ProjectId projectId, string projectName, bool isAdded, PreviewEngine engine)
ProjectSystem\CPS\IWorkspaceProjectContext.cs (1)
37ProjectId Id { get; }
ProjectSystem\Legacy\AbstractLegacyProject.cs (1)
98foreach (var projectId in Workspace.CurrentSolution.ProjectIds)
ProjectSystem\MetadataReferences\VisualStudioFrameworkAssemblyPathResolverFactory.cs (2)
45ProjectId projectId, 107private Assembly? ResolveAssembly(ProjectId projectId, string assemblyName)
ProjectSystem\MiscellaneousFilesWorkspace.cs (2)
46/// The mapping of all monikers in the RDT and the <see cref="ProjectId"/> of the project and <see cref="SourceTextContainer"/> of the open 49private readonly Dictionary<string, (ProjectId projectId, SourceTextContainer textContainer)> _monikersToProjectIdAndContainer = [];
ProjectSystem\VisualStudioProjectManagementService.cs (1)
58public IList<string> GetFolders(ProjectId projectId, Workspace workspace)
ProjectSystem\VisualStudioWorkspace.cs (4)
41/// <param name="projectId">The <see cref="ProjectId"/> for the project.</param> 43public abstract IVsHierarchy? GetHierarchy(ProjectId projectId); 45internal abstract Guid GetProjectGuid(ProjectId projectId); 80internal abstract string? TryGetRuleSetPathForProject(ProjectId projectId);
ProjectSystem\VisualStudioWorkspaceImpl.AbstractAddRemoveUndoUnit.cs (2)
15protected readonly ProjectId FromProjectId; 20ProjectId fromProjectId)
ProjectSystem\VisualStudioWorkspaceImpl.AddMetadataReferenceUndoUnit.cs (1)
22ProjectId fromProjectId,
ProjectSystem\VisualStudioWorkspaceImpl.AddProjectReferenceUndoUnit.cs (3)
15private readonly ProjectId _toProjectId; 19ProjectId fromProjectId, 20ProjectId toProjectId)
ProjectSystem\VisualStudioWorkspaceImpl.cs (33)
82private ImmutableDictionary<ProjectId, IVsHierarchy?> _projectToHierarchyMap = ImmutableDictionary<ProjectId, IVsHierarchy?>.Empty; 83private ImmutableDictionary<ProjectId, Guid> _projectToGuidMap = ImmutableDictionary<ProjectId, Guid>.Empty; 87/// <see cref="TryGetRuleSetPathForProject(ProjectId)"/> and any other use is extremely suspicious, since direct use of this is out of 91private ImmutableDictionary<ProjectId, Func<string?>> _projectToRuleSetFilePath = ImmutableDictionary<ProjectId, Func<string?>>.Empty; 222internal override string? TryGetRuleSetPathForProject(ProjectId projectId) 312internal bool IsCPSProject(ProjectId projectId) 324internal bool IsPrimaryProject(ProjectId projectId) 385private bool TryGetProjectData(ProjectId projectId, [NotNullWhen(returnValue: true)] out IVsHierarchy? hierarchy, [NotNullWhen(returnValue: true)] out EnvDTE.Project? project) 394internal void GetProjectData(ProjectId projectId, out IVsHierarchy hierarchy, out EnvDTE.Project project) 402internal EnvDTE.Project? TryGetDTEProject(ProjectId projectId) 405internal bool TryAddReferenceToProject(ProjectId projectId, string assemblyName) 428protected override void ApplyCompilationOptionsChanged(ProjectId projectId, CompilationOptions options) 446protected override void ApplyParseOptionsChanged(ProjectId projectId, ParseOptions options) 463protected override void ApplyAnalyzerReferenceAdded(ProjectId projectId, AnalyzerReference analyzerReference) 485protected override void ApplyAnalyzerReferenceRemoved(ProjectId projectId, AnalyzerReference analyzerReference) 518ProjectId projectId, MetadataReference metadataReference) 544ProjectId projectId, MetadataReference metadataReference) 592var projectId = changesForFile.Value.First().ProjectId; 601async Task<MultiDictionary<string, (TextChange TextChange, ProjectId ProjectId)>> GetMappedTextChangesAsync(SolutionChanges solutionChanges, CancellationToken cancellationToken) 603var filePathToMappedTextChanges = new MultiDictionary<string, (TextChange TextChange, ProjectId ProjectId)>(); 660ProjectId projectId, ProjectReference projectReference) 700ProjectId projectId, ProjectReference projectReference) 1061internal void OpenDocumentFromPath(string? filePath, ProjectId projectId, bool activate = true) 1082private bool TryGetFrame(string? filePath, ProjectId projectId, [NotNullWhen(returnValue: true)] out IVsWindowFrame? frame) 1345public override IVsHierarchy? GetHierarchy(ProjectId projectId) 1351internal override Guid GetProjectGuid(ProjectId projectId) 1357internal string? TryGetDependencyNodeTargetIdentifier(ProjectId projectId) 1434internal bool TryGetHierarchy(ProjectId projectId, [NotNullWhen(returnValue: true)] out IVsHierarchy? hierarchy) 1486internal override bool CanAddProjectReference(ProjectId referencingProject, ProjectId referencedProject)
ProjectSystem\VisualStudioWorkspaceImpl.OpenFileTracker.cs (5)
144ProjectId activeContextProjectId; 185private ProjectId GetActiveContextProjectIdAndWatchHierarchies_NoLock(string moniker, IEnumerable<ProjectId> projectIds, IVsHierarchy? hierarchy) 245var matchingProjectId = projectIds.FirstOrDefault(id => projectToHierarchyMap.GetValueOrDefault(id, null) == hierarchy); 285var activeProjectId = GetActiveContextProjectIdAndWatchHierarchies_NoLock(moniker, documentIds.Select(d => d.ProjectId), hierarchy);
ProjectSystem\VisualStudioWorkspaceImpl.RemoveMetadataReferenceUndoUnit.cs (1)
21ProjectId fromProjectId,
ProjectSystem\VisualStudioWorkspaceImpl.RemoveProjectReferenceUndoUnit.cs (3)
15private readonly ProjectId _toProjectId; 19ProjectId fromProjectId, 20ProjectId toProjectId)
ProjectSystem\VisualStudioWorkspaceImpl_SourceGenerators.cs (1)
59foreach (var projectId in documentIds.Select(i => i.ProjectId).Distinct())
Snippets\SnippetExpansionClient.cs (1)
1086var projectId = originalProject.Id;
TableDataSource\Suppression\VisualStudioSuppressionFixService.cs (4)
128ProjectId? projectIdToMatch = null; 132if (projectMap.TryGetProjectId(projectHierarchyItem, targetFrameworkMoniker: null, out var projectId)) 473var projectId = group.Key; 543using var _ = CodeAnalysis.PooledObjects.PooledDictionary<ProjectId, CodeAnalysis.PooledObjects.ArrayBuilder<DiagnosticData>>.GetInstance(out var builder);
TaskList\ExternalErrorDiagnosticUpdateSource.cs (11)
127public bool IsSupportedDiagnosticId(ProjectId projectId, string id) 130public void ClearErrors(ProjectId projectId) 160public void AddNewErrors(ProjectId projectId, Guid projectHierarchyGuid, ImmutableArray<DiagnosticData> diagnostics) 173private async Task ClearPreviousAsync(ProjectId? projectId, CancellationToken cancellationToken) 187private async ValueTask ProcessDiagnosticsReportAsync(ProjectId projectId, Guid projectHierarchyGuid, ImmutableArray<DiagnosticData> diagnostics, InProgressState state, CancellationToken cancellationToken) 216private static Microsoft.VisualStudio.RpcContracts.DiagnosticManagement.Diagnostic? CreateDiagnostic(ProjectId projectId, Guid projectHierarchyGuid, DiagnosticData diagnostic, Solution solution) 339private readonly Dictionary<ProjectId, ImmutableHashSet<string>> _allDiagnosticIdMap = []; 349public bool IsSupportedDiagnosticId(ProjectId projectId, string id) 353ProjectId projectId, 354Dictionary<ProjectId, ImmutableHashSet<string>> diagnosticIdMap, 374private ImmutableHashSet<string> GetOrCreateSupportedDiagnosticIds(ProjectId projectId)
TaskList\ProjectExternalErrorReporter.cs (3)
31private readonly ProjectId _projectId; 44public ProjectExternalErrorReporter(ProjectId projectId, Guid projectHierarchyGuid, string errorCodePrefix, string language, VisualStudioWorkspaceImpl workspace) 256ProjectId projectId,
Venus\ContainedLanguage.cs (1)
70ProjectId projectId,
Workspace\SourceGeneratedFileManager.cs (1)
427var projectId = _documentIdentity.DocumentId.ProjectId;
Workspace\VisualStudioAddMetadataReferenceCodeActionOperationFactoryWorkspaceService.cs (3)
27public CodeActionOperation CreateAddMetadataReferenceOperation(ProjectId projectId, AssemblyIdentity assemblyIdentity) 45private readonly ProjectId _projectId; 47public AddMetadataReferenceOperation(ProjectId projectId, AssemblyIdentity assemblyIdentity)
Microsoft.VisualStudio.LanguageServices.CSharp (1)
CodeModel\CSharpCodeModelService.cs (1)
643public override EnvDTE.CodeTypeRef CreateCodeTypeRef(CodeModelState state, ProjectId projectId, object type)
Microsoft.VisualStudio.LanguageServices.CSharp.UnitTests (7)
EditorConfigSettings\Aggregator\SettingsAggregatorTests.cs (2)
25var projectId = ProjectId.CreateNewId();
EditorConfigSettings\DataProvider\DataProviderTests.cs (2)
28var projectId = ProjectId.CreateNewId();
PersistentStorage\AbstractPersistentStorageTests.cs (1)
986solution = solution.AddProject(ProjectInfo.Create(ProjectId.CreateNewId(), VersionStamp.Create(), "Project1", "Project1", LanguageNames.CSharp,
ProjectSystemShim\CPS\AnalyzersTests.cs (1)
77ProjectId projectId;
ProjectSystemShim\LegacyProject\AnalyzersTests.cs (1)
61var projectId = environment.Workspace.CurrentSolution.ProjectIds.Single();
Microsoft.VisualStudio.LanguageServices.LiveShare (12)
Client\Projects\RoslynRemoteProjectInfoProvider.cs (2)
89var projectId = ProjectId.CreateNewId();
Client\Razor\CSharpLspContainedLanguageProvider.cs (1)
42var projectId = _razorProjectFactory.GetProject(filePath);
Client\Razor\CSharpLspRazorProjectFactory.cs (4)
17private readonly Dictionary<string, ProjectId> _projects = []; 19public ProjectId GetProject(string projectName) 21if (_projects.TryGetValue(projectName, out var projectId)) 26var projectInfo = ProjectInfo.Create(ProjectId.CreateNewId(projectName), VersionStamp.Default, projectName, projectName, LanguageNames.CSharp);
Client\RemoteLanguageServiceWorkspace.cs (1)
322ProjectId.CreateNewId(),
Client\RemoteLanguageServiceWorkspaceHost.cs (4)
37private ImmutableDictionary<string, ProjectId> _loadedProjects = ImmutableDictionary.Create<string, ProjectId>(StringComparer.OrdinalIgnoreCase); 120if (!_loadedProjects.TryGetValue(projectName, out var projectId)) 152foreach (var projectId in _loadedProjects.Values)
Microsoft.VisualStudio.LanguageServices.UnitTests (3)
Diagnostics\ExternalDiagnosticUpdateSourceTests.vb (1)
284Private Shared Function GetDiagnosticData(projectId As ProjectId, Optional id As String = "id") As DiagnosticData
GenerateType\GenerateTypeViewModelTests.vb (1)
882Public Function GetFolders(projectId As ProjectId, workspace As Microsoft.CodeAnalysis.Workspace) As IList(Of String) Implements IProjectManagementService.GetFolders
SolutionExplorer\SourceGeneratorItemTests.vb (1)
266Private Shared Function CreateItemSourceForAnalyzerReference(workspace As EditorTestWorkspace, projectId As ProjectId) As BaseDiagnosticAndGeneratorItemSource
Microsoft.VisualStudio.LanguageServices.VisualBasic (1)
CodeModel\VisualBasicCodeModelService.vb (1)
709Public Overrides Function CreateCodeTypeRef(state As CodeModelState, projectId As ProjectId, type As Object) As EnvDTE.CodeTypeRef
Microsoft.VisualStudio.LanguageServices.Xaml (1)
Implementation\LanguageServer\Handler\Completion\CompletionResolveHandler.cs (1)
64var documentId = DocumentId.CreateFromSerialized(ProjectId.CreateFromSerialized(data.ProjectGuid), data.DocumentGuid);
Roslyn.Diagnostics.Analyzers (1)
src\Workspaces\SharedUtilitiesAndExtensions\Workspace\Core\Extensions\ISolutionExtensions.cs (1)
38public static Project GetRequiredProject(this Solution solution, ProjectId projectId)
Roslyn.Diagnostics.Analyzers.UnitTests (1)
RelaxTestNamingSuppressorTests.cs (1)
23private static Solution WithoutSuppressedDiagnosticsTransform(Solution solution, ProjectId projectId)
Roslyn.VisualStudio.Next.UnitTests (66)
Services\ServiceHubServicesTests.cs (56)
300ProjectId projectId1 = null; 301ProjectId projectId2 = null; 365var p1 = ProjectId.CreateNewId(); 366var p2 = ProjectId.CreateNewId(); 442var projectId = ProjectId.CreateNewId(); 765var projectId = ProjectId.CreateNewId(); 905var projectId1 = ProjectId.CreateNewId(); 906var projectId2 = ProjectId.CreateNewId(); 956var projectId1 = ProjectId.CreateNewId(); 957var projectId2 = ProjectId.CreateNewId(); 997var projectId1 = ProjectId.CreateNewId(); 998var projectId2 = ProjectId.CreateNewId(); 1040var projectId1 = ProjectId.CreateNewId(); 1041var projectId2 = ProjectId.CreateNewId(); 1092var projectId1 = ProjectId.CreateNewId(); 1093var projectId2 = ProjectId.CreateNewId(); 1145var projectId1 = ProjectId.CreateNewId(); 1146var projectId2 = ProjectId.CreateNewId(); 1198var projectId1 = ProjectId.CreateNewId(); 1199var projectId2 = ProjectId.CreateNewId(); 1243var projectId1 = ProjectId.CreateNewId(); 1244var projectId2 = ProjectId.CreateNewId(); 1288var projectId1 = ProjectId.CreateNewId(); 1289var projectId2 = ProjectId.CreateNewId(); 1331var projectId1 = ProjectId.CreateNewId(); 1332var projectId2 = ProjectId.CreateNewId(); 1539var projectId1 = ProjectId.CreateNewId(); 1672var projectId = project.Id; 1678var currentProjectId = projectIds[i]; 1818ProjectId[] p2pReferences = null) 1828var projectId = project.Id;
Services\SolutionServiceTests.cs (9)
87ProjectId.CreateNewId(), VersionStamp.Create(), "test", "test.dll", LanguageNames.CSharp, 116ProjectId.CreateNewId(), VersionStamp.Create(), "test", "test.dll", LanguageNames.CSharp, 217foreach (var projectId in solution.ProjectIds) 252var projectId = solution.ProjectIds.Single(); 298var existingProjectId = s.ProjectIds.First(); 322var projectId = workspace.CurrentSolution.ProjectIds.First(); 353var projectId = workspace.CurrentSolution.ProjectIds.First(); 386var projectId = workspace.CurrentSolution.ProjectIds.First(); 915project1 = project1.AddProjectReference(new ProjectReference(ProjectId.CreateNewId()));
Services\VisualStudioDiagnosticAnalyzerExecutorTests.cs (1)
226private static async Task<DiagnosticAnalysisResult> AnalyzeAsync(TestWorkspace workspace, ProjectId projectId, Type analyzerType, bool isHostAnalyzer, CancellationToken cancellationToken = default)
Test.Utilities (2)
CodeMetricsTestsBase.cs (2)
38var projectId = ProjectId.CreateNewId(debugName: TestProjectName);
Text.Analyzers (1)
src\Workspaces\SharedUtilitiesAndExtensions\Workspace\Core\Extensions\ISolutionExtensions.cs (1)
38public static Project GetRequiredProject(this Solution solution, ProjectId projectId)
Text.Analyzers.UnitTests (2)
IdentifiersShouldBeSpelledCorrectlyTests.cs (2)
168static Solution RenameProjectAssembly(Solution solution, ProjectId projectId) 198static Solution RenameProjectAssembly(Solution solution, ProjectId projectId)