1 instantiation of ProjectState
Microsoft.CodeAnalysis.Workspaces (1)
Workspace\Solution\SolutionState.cs (1)
366
var newProject = new
ProjectState
(languageServices, projectInfo, fallbackAnalyzerOptions);
227 references to ProjectState
Microsoft.CodeAnalysis.Features (1)
InheritanceMargin\AbstractInheritanceMarginService_Helpers.cs (1)
215
var
projectState = document.Project.State;
Microsoft.CodeAnalysis.LanguageServer.Protocol (6)
Features\Diagnostics\EngineV2\DiagnosticIncrementalAnalyzer.CompilationManager.cs (2)
20
/// Cached data from a <see cref="
ProjectState
"/> to the last <see cref="CompilationWithAnalyzersPair"/> instance
38
var
projectState = project.State;
Features\Diagnostics\EngineV2\DiagnosticIncrementalAnalyzer_IncrementalAnalyzer.cs (3)
22
/// Cached data from a real <see cref="
ProjectState
"/> instance to the cached diagnostic data produced by
28
/// This table is keyed off of <see cref="
ProjectState
"/> but stores data from <see cref="SolutionState"/> on
39
var
projectState = project.State;
Handler\SpellCheck\AbstractSpellCheckingHandler.cs (1)
33
/// cref="
ProjectState
.GetParseOptionsChecksum"/> and <see cref="DocumentStateChecksums.Text"/>
Microsoft.CodeAnalysis.Workspaces (219)
Diagnostics\HostDiagnosticAnalyzers.cs (2)
136
public ImmutableDictionary<object, ImmutableArray<DiagnosticAnalyzer>> CreateProjectDiagnosticAnalyzersPerReference(
ProjectState
project)
299
public SkippedHostAnalyzersInfo GetSkippedAnalyzersInfo(
ProjectState
project, DiagnosticAnalyzerInfoCache infoCache)
FindSymbols\FindReferences\DependentTypeFinder_ProjectIndex.cs (3)
26
/// We cache the project instance per <see cref="
ProjectState
"/>. This allows us to reuse it over a wide set of
28
/// However, <see cref="
ProjectState
"/> doesn't change even when certain things change that will create a
34
private static readonly ConditionalWeakTable<
ProjectState
, StrongBox<(Checksum checksum, AsyncLazy<ProjectIndex> lazyProjectIndex)>> s_projectToIndex = new();
FindSymbols\Shared\AbstractSyntaxIndex.cs (6)
19
protected delegate TIndex IndexCreator(
ProjectState
project, SyntaxNode root, Checksum checksum, CancellationToken cancellationToken);
30
SolutionKey solutionKey,
ProjectState
project, DocumentState document, IndexReader read, IndexCreator create, CancellationToken cancellationToken)
37
protected static ValueTask<TIndex?> GetIndexAsync(SolutionKey solutionKey,
ProjectState
project, DocumentState document, IndexReader read, IndexCreator create, CancellationToken cancellationToken)
43
ProjectState
project,
81
ProjectState
project,
115
ProjectState
project,
FindSymbols\Shared\AbstractSyntaxIndex_Persistence.cs (4)
39
ProjectState
project,
93
ProjectState
project,
135
ProjectState
project,
156
ProjectState
project,
FindSymbols\SymbolTree\SymbolTreeInfo_Source.cs (2)
68
private static readonly ConditionalWeakTable<
ProjectState
, AsyncLazy<Checksum>> s_projectToSourceChecksum = new();
81
private static async Task<Checksum> ComputeSourceSymbolsChecksumAsync(
ProjectState
projectState, CancellationToken cancellationToken)
FindSymbols\SyntaxTree\SyntaxTreeIndex.cs (3)
41
public static ValueTask<SyntaxTreeIndex> GetRequiredIndexAsync(SolutionKey solutionKey,
ProjectState
project, DocumentState document, CancellationToken cancellationToken)
47
public static ValueTask<SyntaxTreeIndex?> GetIndexAsync(SolutionKey solutionKey,
ProjectState
project, DocumentState document, CancellationToken cancellationToken)
53
public static ValueTask<SyntaxTreeIndex?> GetIndexAsync(SolutionKey solutionKey,
ProjectState
project, DocumentState document, bool loadOnly, CancellationToken cancellationToken)
FindSymbols\SyntaxTree\SyntaxTreeIndex_Create.cs (3)
38
private static readonly ConditionalWeakTable<
ProjectState
, StringTable> s_projectStringTable = new();
41
ProjectState
project, SyntaxNode root, Checksum checksum, CancellationToken _)
335
public static StringTable GetStringTable(
ProjectState
project)
FindSymbols\TopLevelSyntaxTree\IDeclaredSymbolInfoFactoryService.cs (1)
16
void AddDeclaredSymbolInfos(
ProjectState
project, SyntaxNode root, ArrayBuilder<DeclaredSymbolInfo> declaredSymbolInfos, Dictionary<string, ArrayBuilder<int>> extensionMethodInfo, CancellationToken cancellationToken);
FindSymbols\TopLevelSyntaxTree\TopLevelSyntaxTreeIndex.cs (3)
49
public static ValueTask<TopLevelSyntaxTreeIndex> GetRequiredIndexAsync(SolutionKey solutionKey,
ProjectState
project, DocumentState document, CancellationToken cancellationToken)
55
public static ValueTask<TopLevelSyntaxTreeIndex?> GetIndexAsync(SolutionKey solutionKey,
ProjectState
project, DocumentState document, CancellationToken cancellationToken)
61
public static ValueTask<TopLevelSyntaxTreeIndex?> GetIndexAsync(SolutionKey solutionKey,
ProjectState
project, DocumentState document, bool loadOnly, CancellationToken cancellationToken)
FindSymbols\TopLevelSyntaxTree\TopLevelSyntaxTreeIndex_Create.cs (1)
16
ProjectState
project, SyntaxNode root, Checksum checksum, CancellationToken cancellationToken)
LanguageServices\DeclaredSymbolFactoryService\AbstractDeclaredSymbolInfoFactoryService.cs (1)
153
ProjectState
project,
Workspace\Host\PersistentStorage\ProjectKey.cs (2)
37
public static ProjectKey ToProjectKey(SolutionState solutionState,
ProjectState
projectState)
40
public static ProjectKey ToProjectKey(SolutionKey solutionKey,
ProjectState
projectState)
Workspace\ProjectSystem\ProjectSystemProject.cs (1)
304
var
projectState = solution.SolutionState.GetRequiredProjectState(projectId);
Workspace\ProjectSystem\ProjectSystemProjectFactory.cs (2)
600
var
projectWithMetadataReference = solution.GetProjectState(projectIdWithMetadataReference);
601
var
referencedProject = solution.GetProjectState(referencedProjectId);
Workspace\Solution\Document.cs (1)
596
var provider = (
ProjectState
.ProjectHostAnalyzerConfigOptionsProvider)Project.State.HostAnalyzerOptions.AnalyzerConfigOptionsProvider;
Workspace\Solution\Project.cs (2)
34
internal Project(Solution solution,
ProjectState
projectState)
43
internal
ProjectState
State { get; }
Workspace\Solution\ProjectState.AnalyzerConfigOptionsCache.cs (1)
19
/// This cache is stored on <see cref="
ProjectState
"/> and needs to be invalidated whenever <see cref="SolutionState.FallbackAnalyzerOptions"/> for the language of the project change,
Workspace\Solution\ProjectState.cs (38)
387
internal sealed class ProjectAnalyzerConfigOptionsProvider(
ProjectState
projectState) : AnalyzerConfigOptionsProvider
457
internal sealed class ProjectHostAnalyzerConfigOptionsProvider(
ProjectState
projectState) : AnalyzerConfigOptionsProvider
706
private
ProjectState
With(
732
private
ProjectState
WithNewerAttributes(ProjectInfo.ProjectAttributes attributes)
740
public
ProjectState
WithName(string name)
743
public
ProjectState
WithFilePath(string? filePath)
746
public
ProjectState
WithAssemblyName(string assemblyName)
749
public
ProjectState
WithOutputFilePath(string? outputFilePath)
752
public
ProjectState
WithOutputRefFilePath(string? outputRefFilePath)
755
public
ProjectState
WithCompilationOutputInfo(in CompilationOutputInfo info)
758
public
ProjectState
WithDefaultNamespace(string? defaultNamespace)
761
public
ProjectState
WithHasAllInformation(bool hasAllInformation)
764
public
ProjectState
WithRunAnalyzers(bool runAnalyzers)
767
internal
ProjectState
WithHasSdkCodeStyleAnalyzers(bool hasSdkCodeStyleAnalyzers)
770
public
ProjectState
WithChecksumAlgorithm(SourceHashAlgorithm checksumAlgorithm)
785
public
ProjectState
WithCompilationOptions(CompilationOptions? options)
803
public
ProjectState
WithParseOptions(ParseOptions? options)
825
public
ProjectState
WithFallbackAnalyzerOptions(StructuredAnalyzerConfigOptions options)
835
public static bool IsSameLanguage(
ProjectState
project1,
ProjectState
project2)
854
public
ProjectState
WithProjectReferences(IReadOnlyList<ProjectReference> projectReferences)
864
public
ProjectState
WithMetadataReferences(IReadOnlyList<MetadataReference> metadataReferences)
874
public
ProjectState
WithAnalyzerReferences(IReadOnlyList<AnalyzerReference> analyzerReferences)
884
public
ProjectState
AddDocuments(ImmutableArray<DocumentState> documents)
896
public
ProjectState
AddAdditionalDocuments(ImmutableArray<AdditionalDocumentState> documents)
908
public
ProjectState
AddAnalyzerConfigDocuments(ImmutableArray<AnalyzerConfigDocumentState> documents)
920
private
ProjectState
CreateNewStateForChangedAnalyzerConfig(TextDocumentStates<AnalyzerConfigDocumentState> newAnalyzerConfigDocumentStates, StructuredAnalyzerConfigOptions fallbackOptions)
939
public
ProjectState
RemoveDocuments(ImmutableArray<DocumentId> documentIds)
952
public
ProjectState
RemoveAdditionalDocuments(ImmutableArray<DocumentId> documentIds)
962
public
ProjectState
RemoveAnalyzerConfigDocuments(ImmutableArray<DocumentId> documentIds)
972
public
ProjectState
RemoveAllNormalDocuments()
985
public
ProjectState
UpdateDocument(DocumentState newDocument)
988
public
ProjectState
UpdateDocuments(ImmutableArray<DocumentState> oldDocuments, ImmutableArray<DocumentState> newDocuments)
1011
public
ProjectState
UpdateAdditionalDocument(AdditionalDocumentState newDocument)
1014
public
ProjectState
UpdateAdditionalDocuments(ImmutableArray<AdditionalDocumentState> oldDocuments, ImmutableArray<AdditionalDocumentState> newDocuments)
1036
public
ProjectState
UpdateAnalyzerConfigDocument(AnalyzerConfigDocumentState newDocument)
1039
public
ProjectState
UpdateAnalyzerConfigDocuments(ImmutableArray<AnalyzerConfigDocumentState> oldDocuments, ImmutableArray<AnalyzerConfigDocumentState> newDocuments)
1046
public
ProjectState
UpdateDocumentsOrder(ImmutableList<DocumentId> documentIds)
Workspace\Solution\Solution.cs (15)
86
internal
ProjectState
? GetProjectState(ProjectId projectId) => this.SolutionState.GetProjectState(projectId);
156
var
state = solution.SolutionState.GetProjectState(projectId);
649
var
oldProject = GetRequiredProjectState(projectId);
741
var
oldProject = GetRequiredProjectState(projectId);
828
var
oldProject = GetRequiredProjectState(projectId);
922
private static SourceCodeKind GetSourceCodeKind(
ProjectState
project)
937
var
project = GetRequiredProjectState(documentId.ProjectId);
958
var
project = GetRequiredProjectState(documentId.ProjectId);
977
var
project = GetRequiredProjectState(documentId.ProjectId);
984
private Solution AddDocumentImpl(
ProjectState
project, DocumentId documentId, string name, SourceText text, IReadOnlyList<string>? folders, string? filePath, bool isGenerated)
1009
var
project = GetRequiredProjectState(documentId.ProjectId);
1102
var
project = GetRequiredProjectState(documentId.ProjectId);
1115
internal
ProjectState
GetRequiredProjectState(ProjectId projectId)
1845
var
projectState = this.SolutionState.GetRequiredProjectState(projectId);
1853
var
referencedProjectState = this.SolutionState.GetProjectState(projectReference.ProjectId);
Workspace\Solution\SolutionChanges.cs (2)
40
var
newState = _newSolution.GetProjectState(id);
41
var
oldState = old.GetProjectState(id);
Workspace\Solution\SolutionCompilationState.cs (27)
37
/// about the solution structure. Specifically, the set of green <see cref="
ProjectState
"/>s, with all their
181
var
newProjectState = stateChange.NewProjectState;
566
var
oldProject = SolutionState.GetRequiredProjectState(projectId);
602
var
oldProjectState = SolutionState.GetRequiredProjectState(projectId);
808
var
oldProjectState = SolutionState.GetRequiredProjectState(projectId);
833
Func<
ProjectState
, ImmutableArray<TDocumentState>, TranslationAction> getTranslationAction)
867
private static TranslationAction GetUpdateDocumentsTranslationAction<TDocumentState>(
ProjectState
oldProjectState, ImmutableArray<TDocumentState> newDocumentStates)
878
TranslationAction GetUpdateOrdinaryDocumentsTranslationAction(
ProjectState
oldProjectState, ImmutableArray<DocumentState> newDocumentStates)
885
TranslationAction GetUpdateAdditionalDocumentsTranslationAction(
ProjectState
oldProjectState, ImmutableArray<AdditionalDocumentState> newDocumentStates)
892
TranslationAction GetUpdateAnalyzerConfigDocumentsTranslationAction(
ProjectState
oldProjectState, ImmutableArray<AnalyzerConfigDocumentState> newDocumentStates)
1092
var
projectState = solution.GetProjectState(projectId);
1136
/// Returns the compilation for the specified <see cref="
ProjectState
"/>. Can return <see langword="null"/> when the project
1142
public Task<Compilation?> GetCompilationAsync(
ProjectState
project, CancellationToken cancellationToken)
1152
public Task<bool> HasSuccessfullyLoadedAsync(
ProjectState
project, CancellationToken cancellationToken)
1164
public ValueTask<TextDocumentStates<SourceGeneratedDocumentState>> GetSourceGeneratedDocumentStatesAsync(
ProjectState
project, CancellationToken cancellationToken)
1167
/// <inheritdoc cref="GetSourceGeneratedDocumentStatesAsync(
ProjectState
, CancellationToken)"/>
1169
ProjectState
project, bool withFrozenSourceGeneratedDocuments, CancellationToken cancellationToken)
1177
ProjectState
project, CancellationToken cancellationToken)
1185
ProjectState
project, CancellationToken cancellationToken)
1213
ICompilationTracker tracker,
ProjectState
fromProject, ProjectReference projectReference, bool includeCrossLanguage, CancellationToken cancellationToken)
1258
ProjectReference projectReference,
ProjectState
fromProject, bool includeCrossLanguage, CancellationToken cancellationToken)
1483
private (ImmutableDictionary<ProjectId,
ProjectState
>, ImmutableSegmentedDictionary<ProjectId, ICompilationTracker>) ComputeFrozenSnapshotMaps(CancellationToken cancellationToken)
1639
var
oldProjectState = currentState.SolutionState.GetRequiredProjectState(documentId.ProjectId);
1684
var
projectState = SolutionState.GetRequiredProjectState(projectId);
1717
var
oldProjectState = SolutionState.GetRequiredProjectState(projectId);
1741
private static TranslationAction GetRemoveDocumentsTranslationAction<TDocumentState>(
ProjectState
oldProject, ImmutableArray<DocumentId> documentIds, ImmutableArray<TDocumentState> states)
1750
private static TranslationAction GetAddDocumentsTranslationAction<TDocumentState>(
ProjectState
oldProject, ImmutableArray<TDocumentState> states)
Workspace\Solution\SolutionCompilationState.ICompilationTracker.cs (2)
16
ProjectState
ProjectState { get; }
38
ICompilationTracker Fork(
ProjectState
newProject, TranslationAction? translate);
Workspace\Solution\SolutionCompilationState.RegularCompilationTracker.cs (11)
33
private static readonly Func<
ProjectState
, string> s_logBuildCompilationAsync =
38
public
ProjectState
ProjectState { get; }
60
ProjectState
project,
80
public RegularCompilationTracker(
ProjectState
project)
126
ProjectState
newProjectState,
496
var
referencedProject = compilationState.SolutionState.GetProjectState(projectReference.ProjectId);
812
var
frozenProjectState = inProgressState.PendingTranslationActions.IsEmpty
931
var
projectState = inProgressState.PendingTranslationActions is [var translationAction, ..]
948
private static void ValidateCompilationTreesMatchesProjectState(Compilation compilation,
ProjectState
projectState, CompilationTrackerGeneratorInfo? generatorInfo)
1032
var
projectState = this.ProjectState;
1071
var
projectState = this.ProjectState;
Workspace\Solution\SolutionCompilationState.RegularCompilationTracker_Generators.cs (2)
391
static GeneratorDriver CreateGeneratorDriver(
ProjectState
projectState)
406
static void CheckGeneratorDriver(GeneratorDriver generatorDriver,
ProjectState
projectState)
Workspace\Solution\SolutionCompilationState.SkeletonReferenceCache.cs (2)
43
/// cref="
ProjectState
"/>, causing it to see a view of the world inapplicable to its current snapshot. A downside
115
/// Produces a copy of the <see cref="SkeletonReferenceCache"/>, allowing forks of <see cref="
ProjectState
"/> to
Workspace\Solution\SolutionCompilationState.SymbolToProjectId.cs (1)
24
var
projectState = this.SolutionState.GetProjectState(documentId.ProjectId);
Workspace\Solution\SolutionCompilationState.TranslationAction.cs (4)
21
public readonly
ProjectState
OldProjectState;
26
public readonly
ProjectState
NewProjectState;
28
protected TranslationAction(
ProjectState
oldProjectState,
ProjectState
newProjectState)
Workspace\Solution\SolutionCompilationState.TranslationAction_Actions.cs (6)
23
ProjectState
oldProjectState,
24
ProjectState
newProjectState,
71
ProjectState
oldProjectState,
72
ProjectState
newProjectState,
113
ProjectState
oldProjectState,
114
ProjectState
newProjectState)
Workspace\Solution\SolutionCompilationState.WithFrozenSourceGeneratedDocumentsCompilationTracker.cs (2)
39
public
ProjectState
ProjectState => UnderlyingTracker.ProjectState;
74
public ICompilationTracker Fork(
ProjectState
newProject, TranslationAction? translate)
Workspace\Solution\SolutionCompilationState_SourceGenerators.cs (9)
34
/// of analyzer references (see <see cref="
ProjectState
.AnalyzerReferences"/>) to all the <see
39
private static readonly ConditionalWeakTable<
ProjectState
, SourceGeneratorMap> s_projectStateToSourceGeneratorsMap = new();
56
private static ImmutableArray<ISourceGenerator> GetSourceGenerators(
ProjectState
projectState)
65
private static AnalyzerReference GetAnalyzerReference(
ProjectState
projectState, ISourceGenerator sourceGenerator)
79
private static SourceGeneratorMap? GetSourceGeneratorMap(
ProjectState
projectState)
86
static SourceGeneratorMap ComputeSourceGenerators(
ProjectState
projectState)
106
var
projectState = this.SolutionState.GetRequiredProjectState(projectId);
122
AsyncLazy<bool> GetLazy(AnalyzerReferenceMap analyzerReferenceMap,
ProjectState
projectState)
129
SolutionCompilationState solution,
ProjectState
projectState, CancellationToken cancellationToken)
Workspace\Solution\SolutionState.cs (57)
25
ProjectState
OldProjectState,
26
ProjectState
NewProjectState);
73
ImmutableDictionary<ProjectId,
ProjectState
> idToProjectStateMap,
119
idToProjectStateMap: ImmutableDictionary<ProjectId,
ProjectState
>.Empty,
129
public ImmutableDictionary<ProjectId,
ProjectState
> ProjectStates { get; }
172
ImmutableDictionary<ProjectId,
ProjectState
>? idToProjectStateMap = null,
254
foreach (
var
project in this.ProjectStates.Values)
310
public
ProjectState
? GetProjectState(ProjectId projectId)
311
=> ProjectStates.TryGetValue(projectId, out
var
state) ? state : null;
313
public
ProjectState
GetRequiredProjectState(ProjectId projectId)
315
var
result = GetProjectState(projectId);
332
using var _ = ArrayBuilder<
ProjectState
>.GetInstance(projectInfos.Count, out var projectStates);
338
ProjectState
CreateProjectState(ProjectInfo projectInfo)
366
var
newProject = new ProjectState(languageServices, projectInfo, fallbackAnalyzerOptions);
370
SolutionState AddProjects(ArrayBuilder<
ProjectState
> projectStates)
381
foreach (
var
projectState in projectStates)
393
foreach (
var
projectState in projectStates)
511
var
oldProject = GetRequiredProjectState(projectId);
527
var
oldProject = GetRequiredProjectState(projectId);
543
var
oldProject = GetRequiredProjectState(projectId);
559
var
oldProject = GetRequiredProjectState(projectId);
575
var
oldProject = GetRequiredProjectState(projectId);
591
var
oldProject = GetRequiredProjectState(projectId);
607
var
oldProject = GetRequiredProjectState(projectId);
623
var
oldProject = GetRequiredProjectState(projectId);
640
var
oldProject = GetRequiredProjectState(projectId);
657
var
oldProject = GetRequiredProjectState(projectId);
674
var
oldProject = GetRequiredProjectState(projectId);
692
var
oldProject = GetRequiredProjectState(projectId);
710
var
oldProject = GetRequiredProjectState(projectId);
728
var
oldProject = GetRequiredProjectState(projectId);
749
var
oldProject = GetRequiredProjectState(projectId);
789
var
oldProject = GetRequiredProjectState(projectId);
806
var
oldProject = GetRequiredProjectState(projectId);
837
var
oldProject = GetRequiredProjectState(projectId);
855
var
oldProject = GetRequiredProjectState(projectId);
872
var
oldProject = GetRequiredProjectState(projectId);
888
var
oldProject = GetRequiredProjectState(projectId);
940
var
oldProject = GetRequiredProjectState(documentId.ProjectId);
956
var
oldProject = GetRequiredProjectState(documentId.ProjectId);
968
var
oldProject = GetRequiredProjectState(newDocument.Id.ProjectId);
984
var
oldProject = GetRequiredProjectState(documentId.ProjectId);
1000
var
oldProject = GetRequiredProjectState(documentId.ProjectId);
1016
var
oldProject = GetRequiredProjectState(documentId.ProjectId);
1032
var
oldProject = GetRequiredProjectState(documentId.ProjectId);
1048
var
oldProject = GetRequiredProjectState(documentId.ProjectId);
1064
var
oldProject = GetRequiredProjectState(documentId.ProjectId);
1108
var
oldProject = GetRequiredProjectState(newDocument.Id.ProjectId);
1121
var
oldProject = GetRequiredProjectState(newDocument.Id.ProjectId);
1132
var
oldProject = GetRequiredProjectState(newDocument.Id.ProjectId);
1148
ProjectState
oldProjectState,
1149
ProjectState
newProjectState,
1190
ImmutableDictionary<ProjectId,
ProjectState
> projectStates)
1241
var
projectState = this.GetProjectState(documentId.ProjectId);
1266
var
relatedProject = relatedProjectIdHint is null ? null : this.ProjectStates[relatedProjectIdHint];
1292
var
projectState = this.GetProjectState(documentId.ProjectId);
1319
var
projectState = @this.GetProjectState(documentId.ProjectId);
Workspace\Solution\SolutionState_Checksum.cs (2)
121
var
projectState = this.ProjectStates[orderedProjectId];
173
var
projectState = this.GetProjectState(projectConeId);
Workspace\Solution\StateChecksums.cs (1)
318
var
projectState = solution.GetProjectState(assetPath.ProjectId);
Microsoft.VisualStudio.LanguageServices (1)
Progression\GraphBuilder.cs (1)
88
var
projectState = _solution.GetProjectState(docIdWithPath.ProjectId);