2 instantiations of ProjectState
Microsoft.CodeAnalysis.Workspaces (2)
Workspace\Solution\ProjectState.cs (1)
610return new ProjectState(
Workspace\Solution\SolutionState.cs (1)
510var newProject = new ProjectState(languageServices, projectInfo);
197 references to ProjectState
IdeCoreBenchmarks (3)
CloudCachePersistentStorage.cs (2)
39private static readonly ConditionalWeakTable<ProjectState, ProjectContainerKeyCache> s_projectToContainerKeyCache = new(); 40private readonly ConditionalWeakTable<ProjectState, ProjectContainerKeyCache>.CreateValueCallback _projectToContainerKeyCacheCallback;
ProjectContainerKeyCache.cs (1)
37/// cref="ProjectState"/> is alive. As that instance is alive, all <see cref="TextDocumentState"/>s the project
Microsoft.CodeAnalysis.Features (3)
InheritanceMargin\AbstractInheritanceMarginService_Helpers.cs (2)
209var projectState = document.Project.State; 554var projectState = definition.SourceSpans.Length > 0
Workspace\CompileTimeSolutionProvider.cs (1)
256var designTimeProjectState = designTimeSolution.GetProjectState(projectId);
Microsoft.CodeAnalysis.LanguageServer.Protocol (1)
Handler\SpellCheck\AbstractSpellCheckingHandler.cs (1)
33/// cref="ProjectState.GetParseOptionsChecksum"/> and <see cref="DocumentStateChecksums.Text"/>
Microsoft.CodeAnalysis.Remote.ServiceHub (3)
CloudCachePersistentStorage.cs (2)
39private static readonly ConditionalWeakTable<ProjectState, ProjectContainerKeyCache> s_projectToContainerKeyCache = new(); 40private readonly ConditionalWeakTable<ProjectState, ProjectContainerKeyCache>.CreateValueCallback _projectToContainerKeyCacheCallback;
ProjectContainerKeyCache.cs (1)
37/// cref="ProjectState"/> is alive. As that instance is alive, all <see cref="TextDocumentState"/>s the project
Microsoft.CodeAnalysis.Workspaces (184)
FindSymbols\SymbolTree\SymbolTreeInfo_Source.cs (2)
70private static readonly ConditionalWeakTable<ProjectState, AsyncLazy<Checksum>> s_projectToSourceChecksum = new(); 80private static async Task<Checksum> ComputeSourceSymbolsChecksumAsync(ProjectState projectState, CancellationToken cancellationToken)
SourceGeneratorTelemetry\ISourceGeneratorTelemetryCollectorWorkspaceService.cs (1)
15void CollectRunResult(GeneratorDriverRunResult driverRunResult, GeneratorDriverTimingInfo driverTimingInfo, ProjectState project);
SourceGeneratorTelemetry\SourceGeneratorTelemetryCollectorWorkspaceService.cs (2)
46private GeneratorTelemetryKey GetTelemetryKey(ISourceGenerator generator, ProjectState project) 49public void CollectRunResult(GeneratorDriverRunResult driverRunResult, GeneratorDriverTimingInfo driverTimingInfo, ProjectState project)
Workspace\Host\PersistentStorage\ProjectKey.cs (2)
46public static ProjectKey ToProjectKey(SolutionState solutionState, ProjectState projectState) 49public static ProjectKey ToProjectKey(SolutionKey solutionKey, ProjectState projectState)
Workspace\ProjectSystem\ProjectSystemProject.cs (1)
279var projectState = solutionState.GetRequiredProjectState(projectId);
Workspace\ProjectSystem\ProjectSystemProjectFactory.cs (2)
445var projectWithMetadataReference = solution.GetProjectState(projectIdWithMetadataReference); 446var referencedProject = solution.GetProjectState(referencedProjectId);
Workspace\Solution\Document.cs (1)
503var provider = (ProjectState.ProjectAnalyzerConfigOptionsProvider)Project.State.AnalyzerOptions.AnalyzerConfigOptionsProvider;
Workspace\Solution\Project.cs (3)
30private readonly ProjectState _projectState; 36internal Project(Solution solution, ProjectState projectState) 45internal ProjectState State => _projectState;
Workspace\Solution\ProjectState.cs (33)
296private readonly ProjectState _projectState; 299public ProjectAnalyzerConfigOptionsProvider(ProjectState projectState) 601private ProjectState With( 627private ProjectState WithNewerAttributes(ProjectInfo.ProjectAttributes attributes) 635public ProjectState WithName(string name) 638public ProjectState WithFilePath(string? filePath) 641public ProjectState WithAssemblyName(string assemblyName) 644public ProjectState WithOutputFilePath(string? outputFilePath) 647public ProjectState WithOutputRefFilePath(string? outputRefFilePath) 650public ProjectState WithCompilationOutputInfo(in CompilationOutputInfo info) 653public ProjectState WithDefaultNamespace(string? defaultNamespace) 656public ProjectState WithHasAllInformation(bool hasAllInformation) 659public ProjectState WithRunAnalyzers(bool runAnalyzers) 662public ProjectState WithChecksumAlgorithm(SourceHashAlgorithm checksumAlgorithm) 677public ProjectState WithCompilationOptions(CompilationOptions options) 690public ProjectState WithParseOptions(ParseOptions options) 705public static bool IsSameLanguage(ProjectState project1, ProjectState project2) 724public ProjectState WithProjectReferences(IReadOnlyList<ProjectReference> projectReferences) 734public ProjectState WithMetadataReferences(IReadOnlyList<MetadataReference> metadataReferences) 744public ProjectState WithAnalyzerReferences(IEnumerable<AnalyzerReference> analyzerReferences) 786public ProjectState AddDocuments(ImmutableArray<DocumentState> documents) 795public ProjectState AddAdditionalDocuments(ImmutableArray<AdditionalDocumentState> documents) 804public ProjectState AddAnalyzerConfigDocuments(ImmutableArray<AnalyzerConfigDocumentState> documents) 813private ProjectState CreateNewStateForChangedAnalyzerConfigDocuments(TextDocumentStates<AnalyzerConfigDocumentState> newAnalyzerConfigDocumentStates) 832public ProjectState RemoveDocuments(ImmutableArray<DocumentId> documentIds) 842public ProjectState RemoveAdditionalDocuments(ImmutableArray<DocumentId> documentIds) 849public ProjectState RemoveAnalyzerConfigDocuments(ImmutableArray<DocumentId> documentIds) 856public ProjectState RemoveAllDocuments() 866public ProjectState UpdateDocument(DocumentState newDocument, bool contentChanged) 885public ProjectState UpdateAdditionalDocument(AdditionalDocumentState newDocument, bool contentChanged) 904public ProjectState UpdateAnalyzerConfigDocument(AnalyzerConfigDocumentState newDocument) 917public ProjectState UpdateDocumentsOrder(ImmutableList<DocumentId> documentIds)
Workspace\Solution\Solution.cs (13)
60internal ProjectState? GetProjectState(ProjectId projectId) => _state.GetProjectState(projectId); 129var state = solution.State.GetProjectState(projectId); 142var projectState = _state.GetProjectState(assemblySymbol); 989private static SourceCodeKind GetSourceCodeKind(ProjectState project) 1004var project = GetRequiredProjectState(documentId.ProjectId); 1025var project = GetRequiredProjectState(documentId.ProjectId); 1044var project = GetRequiredProjectState(documentId.ProjectId); 1051private Solution AddDocumentImpl(ProjectState project, DocumentId documentId, string name, SourceText text, IReadOnlyList<string>? folders, string? filePath, bool isGenerated) 1076var project = GetRequiredProjectState(documentId.ProjectId); 1185var project = GetRequiredProjectState(documentId.ProjectId); 1198private ProjectState GetRequiredProjectState(ProjectId projectId) 1987var projectState = _state.GetRequiredProjectState(projectId); 1995var referencedProjectState = _state.GetProjectState(projectReference.ProjectId);
Workspace\Solution\SolutionChanges.cs (2)
40var newState = _newSolution.GetProjectState(id); 41var oldState = old.GetProjectState(id);
Workspace\Solution\SolutionState.CompilationAndGeneratorDriverTranslationAction_Actions.cs (6)
143private readonly ProjectState _state; 146public ReplaceAllSyntaxTreesAction(ProjectState state, bool isParseOptionChange) 186private readonly ProjectState _state; 189public ProjectCompilationOptionsAction(ProjectState state, bool isAnalyzerConfigChange) 316private readonly ProjectState _newProjectState; 318public ReplaceGeneratorDriverAction(GeneratorDriver oldGeneratorDriver, ProjectState newProjectState)
Workspace\Solution\SolutionState.CompilationTracker.CompilationTrackerState.cs (3)
157ImmutableList<(ProjectState state, CompilationAndGeneratorDriverTranslationAction action)> intermediateProjects) 192public ImmutableList<(ProjectState oldState, CompilationAndGeneratorDriverTranslationAction action)> IntermediateProjects { get; } 206ImmutableList<(ProjectState state, CompilationAndGeneratorDriverTranslationAction action)> intermediateProjects)
Workspace\Solution\SolutionState.CompilationTracker.cs (15)
35private static readonly Func<ProjectState, string> s_logBuildCompilationAsync = 38public ProjectState ProjectState { get; } 51ProjectState project, 66public CompilationTracker(ProjectState project) 109ProjectState newProject, 119: ImmutableList<(ProjectState oldState, CompilationAndGeneratorDriverTranslationAction action)>.Empty; 170out var inProgressProject, 263out ProjectState inProgressProject, 339var referencedProject = solution.GetProjectState(projectReference.ProjectId); 721var referencedProject = solution.GetProjectState(projectReference.ProjectId); 1005public MetadataReference? GetPartialMetadataReference(ProjectState fromProject, ProjectReference projectReference) 1148var projectState = this.ProjectState; 1181var projectState = this.ProjectState; 1226var depProject = solution.GetRequiredProjectState(id); 1232var referencedProject = solution.GetRequiredProjectState(projectId);
Workspace\Solution\SolutionState.cs (87)
47private readonly ImmutableDictionary<ProjectId, ProjectState> _projectIdToProjectStateMap; 85ImmutableDictionary<ProjectId, ProjectState> idToProjectStateMap, 134idToProjectStateMap: ImmutableDictionary<ProjectId, ProjectState>.Empty, 149public ImmutableDictionary<ProjectId, ProjectState> ProjectStates => _projectIdToProjectStateMap; 193ImmutableDictionary<ProjectId, ProjectState>? idToProjectStateMap = null, 284foreach (var project in this.ProjectStates.Values) 349var projectState = GetProjectState(documentId.ProjectId); 390public ProjectState? GetProjectState(ProjectId projectId) 392_projectIdToProjectStateMap.TryGetValue(projectId, out var state); 396public ProjectState GetRequiredProjectState(ProjectId projectId) 398var result = GetProjectState(projectId); 406public ProjectState? GetProjectState(IAssemblySymbol? assemblySymbol) 422var projectState = solution.GetProjectState(projectId); 437private SolutionState AddProject(ProjectId projectId, ProjectState projectState) 510var newProject = new ProjectState(languageServices, projectInfo); 534private static IEnumerable<TextDocumentState> GetDocumentStates(ProjectState projectState) 621var oldProject = GetRequiredProjectState(projectId); 622var newProject = oldProject.WithAssemblyName(assemblyName); 637var oldProject = GetRequiredProjectState(projectId); 638var newProject = oldProject.WithOutputFilePath(outputFilePath); 653var oldProject = GetRequiredProjectState(projectId); 654var newProject = oldProject.WithOutputRefFilePath(outputRefFilePath); 669var oldProject = GetRequiredProjectState(projectId); 670var newProject = oldProject.WithCompilationOutputInfo(info); 685var oldProject = GetRequiredProjectState(projectId); 686var newProject = oldProject.WithDefaultNamespace(defaultNamespace); 701var oldProject = GetRequiredProjectState(projectId); 702var newProject = oldProject.WithChecksumAlgorithm(checksumAlgorithm); 717var oldProject = GetRequiredProjectState(projectId); 718var newProject = oldProject.WithName(name); 733var oldProject = GetRequiredProjectState(projectId); 734var newProject = oldProject.WithFilePath(filePath); 750var oldProject = GetRequiredProjectState(projectId); 751var newProject = oldProject.WithCompilationOptions(options); 767var oldProject = GetRequiredProjectState(projectId); 768var newProject = oldProject.WithParseOptions(options); 793var oldProject = GetRequiredProjectState(projectId); 794var newProject = oldProject.WithHasAllInformation(hasAllInformation); 811var oldProject = GetRequiredProjectState(projectId); 812var newProject = oldProject.WithRunAnalyzers(runAnalyzers); 834var oldProject = GetRequiredProjectState(projectId); 838var newProject = oldProject.WithProjectReferences(newReferences); 850var oldProject = GetRequiredProjectState(projectId); 861var newProject = oldProject.WithProjectReferences(newReferences); 890var oldProject = GetRequiredProjectState(projectId); 891var newProject = oldProject.WithProjectReferences(projectReferences); 907var oldProject = GetRequiredProjectState(projectId); 922var newProject = oldProject.UpdateDocumentsOrder(documentIds); 943var oldProject = GetRequiredProjectState(projectId); 956var oldProject = GetRequiredProjectState(projectId); 973var oldProject = GetRequiredProjectState(projectId); 974var newProject = oldProject.WithMetadataReferences(metadataReferences); 994var oldProject = GetRequiredProjectState(projectId); 1009var oldProject = GetRequiredProjectState(projectId); 1028var oldProject = GetRequiredProjectState(projectId); 1029var newProject = oldProject.WithAnalyzerReferences(analyzerReferences); 1069/// <param name="addDocumentsToProjectState">Returns the new <see cref="ProjectState"/> with the documents added, and the <see cref="CompilationAndGeneratorDriverTranslationAction"/> needed as well.</param> 1073Func<DocumentInfo, ProjectState, T> createDocumentState, 1074Func<ProjectState, ImmutableArray<T>, (ProjectState newState, CompilationAndGeneratorDriverTranslationAction translationAction)> addDocumentsToProjectState) 1096var oldProjectState = this.GetProjectState(documentInfosInProject.Key)!; 1131var newProject = oldProject.AddAnalyzerConfigDocuments(documents); 1142var newProject = oldProject.RemoveAnalyzerConfigDocuments(documentIds); 1159Func<ProjectState, DocumentId, T> getExistingTextDocumentState, 1160Func<ProjectState, ImmutableArray<DocumentId>, ImmutableArray<T>, (ProjectState newState, CompilationAndGeneratorDriverTranslationAction translationAction)> removeDocumentsFromProjectState) 1176var oldProjectState = this.GetProjectState(documentIdsInProject.Key); 1442var oldProject = GetProjectState(newDocument.Id.ProjectId)!; 1443var newProject = oldProject.UpdateDocument(newDocument, contentChanged); 1459var oldProject = GetProjectState(newDocument.Id.ProjectId)!; 1460var newProject = oldProject.UpdateAdditionalDocument(newDocument, contentChanged); 1474var oldProject = GetProjectState(newDocument.Id.ProjectId)!; 1475var newProject = oldProject.UpdateAnalyzerConfigDocument(newDocument); 1491ProjectState newProjectState, 1541ImmutableDictionary<ProjectId, ProjectState> projectStates) 1702var projectState = this.GetProjectState(documentId.ProjectId); 1731var projectState = args.solution.GetProjectState(documentId.ProjectId); 1792/// Returns the compilation for the specified <see cref="ProjectState"/>. Can return <see langword="null"/> when the project 1798public Task<Compilation?> GetCompilationAsync(ProjectState project, CancellationToken cancellationToken) 1808public Task<bool> HasSuccessfullyLoadedAsync(ProjectState project, CancellationToken cancellationToken) 1820public ValueTask<TextDocumentStates<SourceGeneratedDocumentState>> GetSourceGeneratedDocumentStatesAsync(ProjectState project, CancellationToken cancellationToken) 1827public ValueTask<ImmutableArray<Diagnostic>> GetSourceGeneratorDiagnosticsAsync(ProjectState project, CancellationToken cancellationToken) 1876var projectState = GetRequiredProjectState(documentIdentity.DocumentId.ProjectId); 1942var projectToUpdateState = GetRequiredProjectState(projectToUpdate); 1960public Task<MetadataReference?> GetMetadataReferenceAsync(ProjectReference projectReference, ProjectState fromProject, CancellationToken cancellationToken) 1982ICompilationTracker tracker, ProjectState fromProject, ProjectReference projectReference, CancellationToken cancellationToken) 2015ProjectState fromProject)
Workspace\Solution\SolutionState.GeneratedFileReplacingCompilationTracker.cs (3)
37public ProjectState ProjectState => UnderlyingTracker.ProjectState; 61public ICompilationTracker Fork(ProjectState newProject, CompilationAndGeneratorDriverTranslationAction? translate) 136public MetadataReference? GetPartialMetadataReference(ProjectState fromProject, ProjectReference projectReference)
Workspace\Solution\SolutionState.ICompilationTracker.cs (3)
17ProjectState ProjectState { get; } 37ICompilationTracker Fork(ProjectState newProject, CompilationAndGeneratorDriverTranslationAction? translate); 45MetadataReference? GetPartialMetadataReference(ProjectState fromProject, ProjectReference projectReference);
Workspace\Solution\SolutionState.SkeletonReferenceCache.cs (2)
44/// cref="ProjectState"/>, causing it to see a view of the world inapplicable to its current snapshot. A downside 111/// Produces a copy of the <see cref="SkeletonReferenceCache"/>, allowing forks of <see cref="ProjectState"/> to
Workspace\Solution\SolutionState.UnrootedSymbolSet.cs (1)
31/// symbols to that a <see cref="ProjectState"/> instance doesn't hold symbols alive. But, we know if we are
Workspace\Solution\SolutionState_Checksum.cs (1)
86var projectState = this.GetProjectState(projectId);
Workspace\Solution\StateChecksums.cs (1)
135ProjectState state,
Microsoft.VisualStudio.LanguageServices (3)
Storage\CloudCachePersistentStorage.cs (2)
39private static readonly ConditionalWeakTable<ProjectState, ProjectContainerKeyCache> s_projectToContainerKeyCache = new(); 40private readonly ConditionalWeakTable<ProjectState, ProjectContainerKeyCache>.CreateValueCallback _projectToContainerKeyCacheCallback;
Storage\ProjectContainerKeyCache.cs (1)
37/// cref="ProjectState"/> is alive. As that instance is alive, all <see cref="TextDocumentState"/>s the project