3 implementations of ICompilationTracker
Microsoft.CodeAnalysis.Workspaces (3)
Workspace\Solution\SolutionCompilationState.RegularCompilationTracker.cs (1)
31
private sealed partial class RegularCompilationTracker :
ICompilationTracker
Workspace\Solution\SolutionCompilationState.RegularCompilationTracker_Generators.cs (1)
27
private sealed partial class RegularCompilationTracker :
ICompilationTracker
Workspace\Solution\SolutionCompilationState.WithFrozenSourceGeneratedDocumentsCompilationTracker.cs (1)
27
private sealed class WithFrozenSourceGeneratedDocumentsCompilationTracker :
ICompilationTracker
48 references to ICompilationTracker
Microsoft.CodeAnalysis.Workspaces (48)
Workspace\Solution\SolutionCompilationState.cs (29)
47
private ImmutableSegmentedDictionary<ProjectId,
ICompilationTracker
> _projectIdToTrackerMap;
62
ImmutableSegmentedDictionary<ProjectId,
ICompilationTracker
> projectIdToTrackerMap,
94
projectIdToTrackerMap: ImmutableSegmentedDictionary<ProjectId,
ICompilationTracker
>.Empty,
117
ImmutableSegmentedDictionary<ProjectId,
ICompilationTracker
>? projectIdToTrackerMap = null,
191
if (trackerMap.TryGetValue(arg.projectId, out
var
tracker))
208
/// Creates a mapping of <see cref="ProjectId"/> to <see cref="
ICompilationTracker
"/>
214
private ImmutableSegmentedDictionary<ProjectId,
ICompilationTracker
> CreateCompilationTrackerMap<TArg>(
217
Action<ImmutableSegmentedDictionary<ProjectId,
ICompilationTracker
>.Builder, TArg> modifyNewTrackerInfo,
236
/// Creates a mapping of <see cref="ProjectId"/> to <see cref="
ICompilationTracker
"/>
242
private ImmutableSegmentedDictionary<ProjectId,
ICompilationTracker
> CreateCompilationTrackerMap<TArg>(
245
Action<ImmutableSegmentedDictionary<ProjectId,
ICompilationTracker
>.Builder, TArg> modifyNewTrackerInfo,
268
/// Creates a mapping of <see cref="ProjectId"/> to <see cref="
ICompilationTracker
"/>
274
private ImmutableSegmentedDictionary<ProjectId,
ICompilationTracker
> CreateCompilationTrackerMap<TArgCanReuse, TArgModifyNewTrackerInfo>(
277
Action<ImmutableSegmentedDictionary<ProjectId,
ICompilationTracker
>.Builder, TArgModifyNewTrackerInfo> modifyNewTrackerInfo,
294
var
localTracker = tracker.Fork(tracker.ProjectState, translate: null);
1151
private bool TryGetCompilationTracker(ProjectId projectId, [NotNullWhen(returnValue: true)] out
ICompilationTracker
? tracker)
1163
private
ICompilationTracker
GetCompilationTracker(ProjectId projectId)
1165
if (!_projectIdToTrackerMap.TryGetValue(projectId, out
var
tracker))
1184
return this.TryGetCompilationTracker(projectId, out
var
tracker)
1279
ICompilationTracker
tracker, ProjectState fromProject, ProjectReference projectReference, bool includeCrossLanguage, CancellationToken cancellationToken)
1330
var
tracker = this.GetCompilationTracker(projectReference.ProjectId);
1364
Contract.ThrowIfFalse(trackerMap.TryGetValue(projectId, out
var
existingTracker));
1461
if (!trackerMap.TryGetValue(projectId, out
var
existingTracker))
1524
if (_projectIdToTrackerMap.TryGetValue(projectId, out
var
existingTracker))
1529
var
newTracker = existingTracker.WithCreateCreationPolicy(forceRegeneration);
1566
private (ImmutableArray<ProjectState> sortedProjectStates, ImmutableSegmentedDictionary<ProjectId,
ICompilationTracker
>) ComputeFrozenSnapshotMaps(CancellationToken cancellationToken)
1592
if (!originalProjectIdToTrackerMap.TryGetValue(projectId, out
var
oldTracker))
1602
var
newTracker = oldTracker.WithDoNotCreateCreationPolicy();
1857
if (!projectWithCachedGeneratorState.Solution.CompilationState.TryGetCompilationTracker(projectWithCachedGeneratorState.Id, out
var
tracker) ||
Workspace\Solution\SolutionCompilationState.ICompilationTracker.cs (4)
38
ICompilationTracker
Fork(ProjectState newProject, TranslationAction? translate);
47
ICompilationTracker
WithCreateCreationPolicy(bool forceRegeneration);
52
ICompilationTracker
WithDoNotCreateCreationPolicy();
58
/// Gets the source generator files generated by this <see cref="
ICompilationTracker
"/>. <paramref
Workspace\Solution\SolutionCompilationState.RegularCompilationTracker.cs (6)
121
ICompilationTracker
ICompilationTracker
.Fork(ProjectState newProjectState, TranslationAction? translate)
686
ICompilationTracker
ICompilationTracker
.WithCreateCreationPolicy(bool forceRegeneration)
745
ICompilationTracker
ICompilationTracker
.WithDoNotCreateCreationPolicy()
Workspace\Solution\SolutionCompilationState.SkeletonReferenceCache.cs (4)
40
/// cref="
ICompilationTracker
"/> forks itself, it will also <see cref="Clone"/> this, allowing previously computed
141
ICompilationTracker
compilationTracker,
159
ICompilationTracker
compilationTracker,
196
ICompilationTracker
compilationTracker,
Workspace\Solution\SolutionCompilationState.WithFrozenSourceGeneratedDocumentsCompilationTracker.cs (5)
17
/// An implementation of <see cref="
ICompilationTracker
"/> that takes a compilation from another compilation tracker
74
public
ICompilationTracker
Fork(ProjectState newProject, TranslationAction? translate)
81
public
ICompilationTracker
WithCreateCreationPolicy(bool forceRegeneration)
89
public
ICompilationTracker
WithDoNotCreateCreationPolicy()
104
public
ICompilationTracker
WithReplacementDocumentStates(TextDocumentStates<SourceGeneratedDocumentState> replacementDocumentStates)