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