3 implementations of ICompilationTracker
Microsoft.CodeAnalysis.Workspaces (3)
Workspace\Solution\SolutionCompilationState.RegularCompilationTracker.cs (1)
31private sealed partial class RegularCompilationTracker : ICompilationTracker
Workspace\Solution\SolutionCompilationState.RegularCompilationTracker_Generators.cs (1)
27private sealed partial class RegularCompilationTracker : ICompilationTracker
Workspace\Solution\SolutionCompilationState.WithFrozenSourceGeneratedDocumentsCompilationTracker.cs (1)
28private sealed class WithFrozenSourceGeneratedDocumentsCompilationTracker : ICompilationTracker
47 references to ICompilationTracker
Microsoft.CodeAnalysis.Workspaces (47)
Workspace\Solution\SolutionCompilationState.cs (28)
47private ImmutableSegmentedDictionary<ProjectId, ICompilationTracker> _projectIdToTrackerMap; 64ImmutableSegmentedDictionary<ProjectId, ICompilationTracker> projectIdToTrackerMap, 98projectIdToTrackerMap: ImmutableSegmentedDictionary<ProjectId, ICompilationTracker>.Empty, 122ImmutableSegmentedDictionary<ProjectId, ICompilationTracker>? projectIdToTrackerMap = null, 189if (trackerMap.TryGetValue(arg.projectId, out var tracker)) 206/// Creates a mapping of <see cref="ProjectId"/> to <see cref="ICompilationTracker"/> 212private ImmutableSegmentedDictionary<ProjectId, ICompilationTracker> CreateCompilationTrackerMap<TArg>( 215Action<ImmutableSegmentedDictionary<ProjectId, ICompilationTracker>.Builder, TArg> modifyNewTrackerInfo, 234/// Creates a mapping of <see cref="ProjectId"/> to <see cref="ICompilationTracker"/> 240private ImmutableSegmentedDictionary<ProjectId, ICompilationTracker> CreateCompilationTrackerMap<TArg>( 243Action<ImmutableSegmentedDictionary<ProjectId, ICompilationTracker>.Builder, TArg> modifyNewTrackerInfo, 266/// Creates a mapping of <see cref="ProjectId"/> to <see cref="ICompilationTracker"/> 272private ImmutableSegmentedDictionary<ProjectId, ICompilationTracker> CreateCompilationTrackerMap<TArgCanReuse, TArgModifyNewTrackerInfo>( 275Action<ImmutableSegmentedDictionary<ProjectId, ICompilationTracker>.Builder, TArgModifyNewTrackerInfo> modifyNewTrackerInfo, 292var localTracker = tracker.Fork(tracker.ProjectState, translate: null); 1170private bool TryGetCompilationTracker(ProjectId projectId, [NotNullWhen(returnValue: true)] out ICompilationTracker? tracker) 1182private ICompilationTracker GetCompilationTracker(ProjectId projectId) 1184if (!_projectIdToTrackerMap.TryGetValue(projectId, out var tracker)) 1203return this.TryGetCompilationTracker(projectId, out var tracker) 1298ICompilationTracker tracker, ProjectState fromProject, ProjectReference projectReference, bool includeCrossLanguage, CancellationToken cancellationToken) 1349var tracker = this.GetCompilationTracker(projectReference.ProjectId); 1383Contract.ThrowIfFalse(trackerMap.TryGetValue(projectId, out var existingTracker)); 1480if (!trackerMap.TryGetValue(projectId, out var existingTracker)) 1543if (_projectIdToTrackerMap.TryGetValue(projectId, out var existingTracker)) 1548var newTracker = existingTracker.WithCreateCreationPolicy(forceRegeneration); 1586private (ImmutableArray<ProjectState> sortedProjectStates, ImmutableSegmentedDictionary<ProjectId, ICompilationTracker>) ComputeFrozenSnapshotMaps(CancellationToken cancellationToken) 1612if (!originalProjectIdToTrackerMap.TryGetValue(projectId, out var oldTracker)) 1622var newTracker = oldTracker.WithDoNotCreateCreationPolicy();
Workspace\Solution\SolutionCompilationState.ICompilationTracker.cs (4)
38ICompilationTracker Fork(ProjectState newProject, TranslationAction? translate); 47ICompilationTracker WithCreateCreationPolicy(bool forceRegeneration); 52ICompilationTracker WithDoNotCreateCreationPolicy(); 58/// Gets the source generator files generated by this <see cref="ICompilationTracker"/>. <paramref
Workspace\Solution\SolutionCompilationState.RegularCompilationTracker.cs (6)
121ICompilationTracker ICompilationTracker.Fork(ProjectState newProjectState, TranslationAction? translate) 695ICompilationTracker ICompilationTracker.WithCreateCreationPolicy(bool forceRegeneration) 754ICompilationTracker ICompilationTracker.WithDoNotCreateCreationPolicy()
Workspace\Solution\SolutionCompilationState.SkeletonReferenceCache.cs (4)
40/// cref="ICompilationTracker"/> forks itself, it will also <see cref="Clone"/> this, allowing previously computed 141ICompilationTracker compilationTracker, 159ICompilationTracker compilationTracker, 196ICompilationTracker compilationTracker,
Workspace\Solution\SolutionCompilationState.WithFrozenSourceGeneratedDocumentsCompilationTracker.cs (5)
18/// An implementation of <see cref="ICompilationTracker"/> that takes a compilation from another compilation tracker 75public ICompilationTracker Fork(ProjectState newProject, TranslationAction? translate) 82public ICompilationTracker WithCreateCreationPolicy(bool forceRegeneration) 90public ICompilationTracker WithDoNotCreateCreationPolicy() 105public ICompilationTracker WithReplacementDocumentStates(TextDocumentStates<SourceGeneratedDocumentState> replacementDocumentStates)