1 type derived from DocumentState
Microsoft.CodeAnalysis.Workspaces (1)
Workspace\Solution\SourceGeneratedDocumentState.cs (1)
12
internal sealed class SourceGeneratedDocumentState :
DocumentState
9 instantiations of DocumentState
Microsoft.CodeAnalysis.Workspaces (9)
Workspace\Solution\DocumentState.cs (7)
81
return new
DocumentState
(
327
return new
DocumentState
(
374
return new
DocumentState
(
421
return new
DocumentState
(
432
=> new
DocumentState
(
476
return new
DocumentState
(
518
return new
DocumentState
(
Workspace\Solution\DocumentState_LinkedFileReuse.cs (2)
68
return new
DocumentState
(
124
return new
DocumentState
(
155 references to DocumentState
IdeCoreBenchmarks (10)
NavigateToBenchmarks.cs (10)
119
Console.WriteLine($"{nameof(
DocumentState
.TestAccessor.TryReuseSyntaxTree)} - {
DocumentState
.TestAccessor.TryReuseSyntaxTree}");
120
Console.WriteLine($"{nameof(
DocumentState
.TestAccessor.CouldReuseBecauseOfEqualPPNames)} - {
DocumentState
.TestAccessor.CouldReuseBecauseOfEqualPPNames}");
121
Console.WriteLine($"{nameof(
DocumentState
.TestAccessor.CouldReuseBecauseOfNoDirectives)} - {
DocumentState
.TestAccessor.CouldReuseBecauseOfNoDirectives}");
122
Console.WriteLine($"{nameof(
DocumentState
.TestAccessor.CouldReuseBecauseOfNoPPDirectives)} - {
DocumentState
.TestAccessor.CouldReuseBecauseOfNoPPDirectives}");
123
Console.WriteLine($"{nameof(
DocumentState
.TestAccessor.CouldNotReuse)} - {
DocumentState
.TestAccessor.CouldNotReuse}");
Microsoft.CodeAnalysis.EditorFeatures (3)
EditAndContinue\PdbMatchingSourceTextProvider.cs (3)
33
private readonly Dictionary<string, (
DocumentState
state, int solutionVersion)> _documentsWithChangedLoaderByPath = [];
130
DocumentState
? state;
165
public ImmutableDictionary<string, (
DocumentState
state, int solutionVersion)> GetDocumentsWithChangedLoaderByPath()
Microsoft.CodeAnalysis.Features (2)
EditAndContinue\Utilities\Extensions.cs (1)
93
if (textDocumentState is
DocumentState
documentState)
Workspace\CompileTimeSolutionProvider.cs (1)
176
private static bool IsRazorDesignTimeDocument(
DocumentState
documentState)
Microsoft.CodeAnalysis.Remote.ServiceHub (1)
Host\RemoteWorkspace.SolutionCreator.cs (1)
389
project = await UpdateDocumentsAsync<
DocumentState
>(
Microsoft.CodeAnalysis.Workspaces (139)
FindSymbols\FindReferences\DependentTypeFinder_ProjectIndex.cs (1)
84
sourceGeneratorDocumentStates.States.Select(kvp => (kvp.Key, (
DocumentState
)kvp.Value)));
FindSymbols\Shared\AbstractSyntaxIndex.cs (6)
21
private static readonly ConditionalWeakTable<
DocumentState
, TIndex?> s_documentToIndex = new();
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)
44
DocumentState
document,
82
DocumentState
document,
116
DocumentState
document,
FindSymbols\Shared\AbstractSyntaxIndex_Persistence.cs (5)
40
DocumentState
document,
94
DocumentState
document,
136
DocumentState
document,
149
(
DocumentState
)document.State,
157
DocumentState
document,
FindSymbols\SyntaxTree\SyntaxTreeIndex.cs (6)
39
=> GetRequiredIndexAsync(SolutionKey.ToSolutionKey(document.Project.Solution), document.Project.State, (
DocumentState
)document.State, cancellationToken);
41
public static ValueTask<SyntaxTreeIndex> GetRequiredIndexAsync(SolutionKey solutionKey, ProjectState project,
DocumentState
document, CancellationToken cancellationToken)
45
=> GetIndexAsync(SolutionKey.ToSolutionKey(document.Project.Solution), document.Project.State, (
DocumentState
)document.State, cancellationToken);
47
public static ValueTask<SyntaxTreeIndex?> GetIndexAsync(SolutionKey solutionKey, ProjectState project,
DocumentState
document, CancellationToken cancellationToken)
51
=> GetIndexAsync(SolutionKey.ToSolutionKey(document.Project.Solution), document.Project.State, (
DocumentState
)document.State, loadOnly, cancellationToken);
53
public static ValueTask<SyntaxTreeIndex?> GetIndexAsync(SolutionKey solutionKey, ProjectState project,
DocumentState
document, bool loadOnly, CancellationToken cancellationToken)
FindSymbols\TopLevelSyntaxTree\TopLevelSyntaxTreeIndex.cs (6)
47
=> GetRequiredIndexAsync(SolutionKey.ToSolutionKey(document.Project.Solution), document.Project.State, (
DocumentState
)document.State, cancellationToken);
49
public static ValueTask<TopLevelSyntaxTreeIndex> GetRequiredIndexAsync(SolutionKey solutionKey, ProjectState project,
DocumentState
document, CancellationToken cancellationToken)
53
=> GetIndexAsync(SolutionKey.ToSolutionKey(document.Project.Solution), document.Project.State, (
DocumentState
)document.State, cancellationToken);
55
public static ValueTask<TopLevelSyntaxTreeIndex?> GetIndexAsync(SolutionKey solutionKey, ProjectState project,
DocumentState
document, CancellationToken cancellationToken)
59
=> GetIndexAsync(SolutionKey.ToSolutionKey(document.Project.Solution), document.Project.State, (
DocumentState
)document.State, loadOnly, cancellationToken);
61
public static ValueTask<TopLevelSyntaxTreeIndex?> GetIndexAsync(SolutionKey solutionKey, ProjectState project,
DocumentState
document, bool loadOnly, CancellationToken cancellationToken)
Workspace\Solution\Document.cs (3)
45
internal Document(Project project,
DocumentState
state)
50
internal
DocumentState
DocumentState => (
DocumentState
)State;
Workspace\Solution\DocumentState.cs (15)
54
public static
DocumentState
Create(
293
public bool HasContentChanged(
DocumentState
oldState)
300
public bool HasTextChanged(
DocumentState
oldState)
303
public
DocumentState
UpdateChecksumAlgorithm(SourceHashAlgorithm checksumAlgorithm)
337
public
DocumentState
UpdateParseOptionsAndSourceCodeKind(ParseOptions options, bool onlyPreprocessorDirectiveChange)
384
public
DocumentState
UpdateSourceCodeKind(SourceCodeKind kind)
441
public new
DocumentState
WithAttributes(DocumentInfo.DocumentAttributes newAttributes)
442
=> (
DocumentState
)base.WithAttributes(newAttributes);
444
public new
DocumentState
UpdateText(SourceText newText, PreservationMode mode)
445
=> (
DocumentState
)base.UpdateText(newText, mode);
447
public new
DocumentState
UpdateText(TextAndVersion newTextAndVersion, PreservationMode mode)
448
=> (
DocumentState
)base.UpdateText(newTextAndVersion, mode);
450
public new
DocumentState
UpdateText(TextLoader loader, PreservationMode mode)
451
=> (
DocumentState
)base.UpdateText(loader, mode);
486
internal
DocumentState
UpdateTree(SyntaxNode newRoot, PreservationMode mode)
Workspace\Solution\DocumentState_LinkedFileReuse.cs (2)
61
public
DocumentState
UpdateTextAndTreeContents(
100
private static
DocumentState
UpdateTextAndTreeContentsWorker(
Workspace\Solution\Project.cs (1)
497
(documentId, project) => project.State.DocumentStates.TryGetState(documentId, out
var
state) ? new Document(project, state) : null;
Workspace\Solution\ProjectState.cs (29)
34
public readonly TextDocumentStates<
DocumentState
> DocumentStates;
59
TextDocumentStates<
DocumentState
> documentStates,
105
DocumentStates = new TextDocumentStates<
DocumentState
>(projectInfoFixed.Documents, info => CreateDocument(info, parseOptions, loadTextOptions));
121
typeof(TDocumentState) == typeof(
DocumentState
) ? DocumentStates :
213
private static async ValueTask<VersionStamp> ComputeLatestDocumentVersionAsync(TextDocumentStates<
DocumentState
> documentStates, TextDocumentStates<AdditionalDocumentState> additionalDocumentStates, CancellationToken cancellationToken)
241
TextDocumentStates<
DocumentState
> newDocumentStates,
271
private static async Task<VersionStamp> ComputeLatestDocumentTopLevelChangeVersionAsync(TextDocumentStates<
DocumentState
> documentStates, TextDocumentStates<AdditionalDocumentState> additionalDocumentStates, CancellationToken cancellationToken)
294
internal
DocumentState
CreateDocument(DocumentInfo documentInfo, ParseOptions? parseOptions, LoadTextOptions loadTextOptions)
296
var
doc =
DocumentState
.Create(LanguageServices, documentInfo, parseOptions, loadTextOptions);
309
typeof(TDocumentState) == typeof(
DocumentState
) ? CreateDocument(documentInfo, ParseOptions, new LoadTextOptions(ChecksumAlgorithm)) :
389
var documentId =
DocumentState
.GetDocumentIdForTree(tree);
391
if (documentId != null && projectState.DocumentStates.TryGetState(documentId, out
var
documentState))
399
internal async ValueTask<StructuredAnalyzerConfigOptions> GetOptionsAsync(
DocumentState
documentState, CancellationToken cancellationToken)
405
private StructuredAnalyzerConfigOptions GetOptions(in AnalyzerConfigOptionsCache.Value cache,
DocumentState
documentState)
422
private string? GetEffectiveFilePath(
DocumentState
documentState)
461
var documentId =
DocumentState
.GetDocumentIdForTree(tree);
463
if (documentId != null && projectState.DocumentStates.TryGetState(documentId, out
var
documentState))
471
internal async ValueTask<StructuredAnalyzerConfigOptions> GetOptionsAsync(
DocumentState
documentState, CancellationToken cancellationToken)
477
private StructuredAnalyzerConfigOptions GetOptions(in AnalyzerConfigOptionsCache.Value cache,
DocumentState
documentState)
501
private string? GetEffectiveFilePath(
DocumentState
documentState)
700
TextDocumentStates<
DocumentState
>? documentStates = null,
774
private TextDocumentStates<
DocumentState
> UpdateDocumentsChecksumAlgorithm(SourceHashAlgorithm checksumAlgorithm)
876
public ProjectState AddDocuments(ImmutableArray<
DocumentState
> documents)
973
documentStates: TextDocumentStates<
DocumentState
>.Empty,
977
public ProjectState UpdateDocument(
DocumentState
newDocument)
980
public ProjectState UpdateDocuments(ImmutableArray<
DocumentState
> oldDocuments, ImmutableArray<
DocumentState
> newDocuments)
1051
TextDocumentStates<
DocumentState
> newDocumentStates,
Workspace\Solution\Solution.cs (6)
331
var
documentState = CompilationState.GetDocumentState(syntaxTree, projectId);
342
else if (documentState is
DocumentState
)
1083
=> WithCompilationState(CompilationState.AddDocumentsToMultipleProjects<
DocumentState
>(documentInfos));
1194
=> WithCompilationState(CompilationState.RemoveDocumentsFromMultipleProjects<
DocumentState
>(documentIds));
1437
internal Solution WithDocumentContentsFrom(DocumentId documentId,
DocumentState
documentState)
1440
internal Solution WithDocumentContentsFrom(ImmutableArray<(DocumentId documentId,
DocumentState
documentState)> documentIdsAndStates)
Workspace\Solution\SolutionCompilationState.cs (23)
37
/// green <see cref="
DocumentState
"/>s. Contains the attributes, options and relationships between projects.
616
UpdateDocuments<
DocumentState
>(info.Documents);
800
return UpdateDocumentsInMultipleProjects<
DocumentState
, SourceText, PreservationMode>(
831
private static bool SourceTextIsUnchanged(
DocumentState
oldDocument, SourceText text)
917
ImmutableArray<
DocumentState
> ordinaryNewDocumentStates => GetUpdateOrdinaryDocumentsTranslationAction(oldProjectState, ordinaryNewDocumentStates),
923
TranslationAction GetUpdateOrdinaryDocumentsTranslationAction(ProjectState oldProjectState, ImmutableArray<
DocumentState
> newDocumentStates)
946
DocumentState
documentState)
1003
return UpdateDocumentsInMultipleProjects<
DocumentState
, SyntaxNode, PreservationMode>(
1037
ImmutableArray<(DocumentId documentId,
DocumentState
documentState)> documentIdsAndStates, bool forceEvenIfTreesWouldDiffer)
1039
return UpdateDocumentsInMultipleProjects<
DocumentState
,
DocumentState
, bool>(
1111
var
oldDocument = stateChange.OldProjectState.DocumentStates.GetRequiredState(documentId);
1112
var
newDocument = stateChange.NewProjectState.DocumentStates.GetRequiredState(documentId);
1651
var
currentDocumentState = this.SolutionState.GetRequiredDocumentState(documentId);
1702
using var _ = ArrayBuilder<
DocumentState
>.GetInstance(allDocumentIds.Length, out var documentStates);
1710
var
documentState = @this.SolutionState.GetRequiredDocumentState(currentDocumentId);
1727
ArrayBuilder<
DocumentState
> documentStates,
1732
using var _ = PooledDictionary<ProjectId, ArrayBuilder<
DocumentState
>>.GetInstance(out var missingDocumentStates);
1735
foreach (
var
newDocumentState in documentStates)
1739
var
oldDocumentState = oldProjectState.DocumentStates.GetState(documentId);
1843
ImmutableArray<
DocumentState
> documentStates => new TranslationAction.RemoveDocumentsAction(oldProject, oldProject.RemoveDocuments(documentIds), documentStates),
1852
ImmutableArray<
DocumentState
> documentStates => new TranslationAction.AddDocumentsAction(oldProject, oldProject.AddDocuments(documentStates), documentStates),
1902
var
documentState = this.SolutionState.GetProjectState(documentId.ProjectId)?.DocumentStates.GetState(documentId);
Workspace\Solution\SolutionCompilationState.RegularCompilationTracker.cs (3)
775
using var _1 = ArrayBuilder<
DocumentState
>.GetInstance(out var documentsWithTreesBuilder);
777
foreach (
var
documentState in this.ProjectState.DocumentStates.GetStatesInCompilationOrder())
795
foreach (
var
documentState in documentsWithTrees)
Workspace\Solution\SolutionCompilationState.SymbolToProjectId.cs (3)
16
internal
DocumentState
? GetDocumentState(SyntaxTree? syntaxTree, ProjectId? projectId)
21
var documentId =
DocumentState
.GetDocumentIdForTree(syntaxTree);
28
var
document = projectState.DocumentStates.GetState(documentId);
Workspace\Solution\SolutionCompilationState.TranslationAction_Actions.cs (14)
25
ImmutableArray<
DocumentState
> oldStates,
26
ImmutableArray<
DocumentState
> newStates) : TranslationAction(oldProjectState, newProjectState)
28
private readonly ImmutableArray<
DocumentState
> _oldStates = oldStates;
29
private readonly ImmutableArray<
DocumentState
> _newStates = newStates;
37
var
newState = _newStates[i];
38
var
oldState = _oldStates[i];
137
ImmutableArray<
DocumentState
> documents)
143
foreach (
var
document in documents)
162
ImmutableArray<
DocumentState
> documents)
171
public readonly ImmutableArray<
DocumentState
> Documents = documents;
178
using var _ = PooledDictionary<
DocumentState
, int>.GetInstance(out var documentToIndex);
179
foreach (
var
document in this.Documents)
182
var documentsAndTrees = await ProducerConsumer<(
DocumentState
document, SyntaxTree tree)>.RunParallelAsync(
210
foreach (
var
documentState in this.NewProjectState.DocumentStates.GetStatesInCompilationOrder())
Workspace\Solution\SolutionState.cs (12)
325
internal
DocumentState
GetRequiredDocumentState(DocumentId documentId)
976
var
oldDocument = GetRequiredDocumentState(documentId);
978
var
newDocument = oldDocument.WithAttributes(updateAttributes(oldDocument.Attributes, arg));
994
var
oldDocument = GetRequiredDocumentState(documentId);
1004
public StateChange WithDocumentState(
DocumentState
newDocument)
1006
var
oldDocument = GetRequiredDocumentState(newDocument.Id);
1054
var
oldDocument = GetRequiredDocumentState(documentId);
1102
var
oldDocument = GetRequiredDocumentState(documentId);
1114
var
oldDocument = GetRequiredDocumentState(documentId);
1147
private StateChange UpdateDocumentState(
DocumentState
newDocument)
1283
var
documentState = projectState.DocumentStates.GetState(documentId);
1338
var
documentState = projectState.DocumentStates.GetState(documentId);
Workspace\Workspace.cs (4)
344
using var _ = ArrayBuilder<(DocumentId,
DocumentState
)>.GetInstance(out var relatedDocumentIdsAndStates);
388
using var _ = PooledDictionary<DocumentId,
DocumentState
>.GetInstance(out var relatedDocumentIdsAndStates);
392
DocumentState
? changedDocumentState = null;
1765
var
document = projectChanges.OldProject.State.DocumentStates.GetState(documentId) ??