2 writes to Solution
Microsoft.CodeAnalysis.Workspaces (2)
Workspace\ProjectSystem\SolutionChangeAccumulator.cs (2)
40Solution = newSolution; 97Solution = newSolution;
27 references to Solution
Microsoft.CodeAnalysis.Workspaces (27)
Workspace\ProjectSystem\ProjectSystemProject.BatchingDocumentCollection.cs (4)
359_documentTextLoaderChangedAction(solutionChanges.Solution, documentId, textLoader), 448newSolution: addDocuments(solutionChanges.Solution, documentsAddedInBatch), 465solutionChanges.UpdateSolutionForRemovedDocumentAction(removeDocuments(solutionChanges.Solution, documentsRemovedInBatch), 474solutionChanges.Solution.WithProjectDocumentsOrder(projectId, orderedDocumentsInBatch));
Workspace\ProjectSystem\ProjectSystemProject.cs (11)
204solutionChanges.UpdateSolutionForProjectAction(Id, updateSolution(solutionChanges.Solution)); 317solutionChanges.UpdateSolutionForProjectAction(Id, withNewValue(solutionChanges.Solution)); 567var projectBeforeMutations = solutionChanges.Solution.GetRequiredProject(Id); 670projectId, solutionChanges.Solution.RemoveProjectReference(projectId, projectReference)); 681projectId, solutionChanges.Solution.RemoveMetadataReference(projectId, metadataReference)); 696projectBeforeMutation.State, path, properties, projectUpdateState, solutionChanges.Solution, out var projectReference); 704var metadataReference = CreateMetadataReference_NoLock(path, properties, solutionChanges.Solution.Services); 714solutionChanges.Solution 730projectId, solutionChanges.Solution.AddProjectReferences(projectId, projectReferencesAddedInBatch)); 736projectId, solutionChanges.Solution.RemoveProjectReference(projectId, projectReference)); 752solutionChanges.Solution, projectId, projectUpdateState, analyzersRemovedInBatch, analyzersAddedInBatch);
Workspace\ProjectSystem\ProjectSystemProjectFactory.cs (9)
341return solutionChanges.Solution; 565var candidateProjectState = solutionChanges.Solution.GetRequiredProjectState(projectIdToReference); 567foreach (var projectToRetarget in solutionChanges.Solution.SortedProjectStates) 575CanConvertMetadataReferenceToProjectReference(solutionChanges.Solution, projectToRetarget, candidateProjectState)) 585var newSolution = solutionChanges.Solution 661foreach (var projectIdToRetarget in solutionChanges.Solution.ProjectIds) 682var newSolution = solutionChanges.Solution.RemoveProjectReference(projectIdToRetarget, convertedReference.ProjectReference) 916var initialSolution = solutionChanges.Solution; 931var newSolution = solutionChanges.Solution;
Workspace\ProjectSystem\SolutionChangeAccumulator.cs (3)
10/// A little helper type to hold onto the <see cref="Solution"/> being updated in a batch, which also 35if (Solution == newSolution) 92if (Solution == newSolution)