3 implementations of IFileChangeContext
Microsoft.CodeAnalysis.LanguageServer (2)
HostWorkspace\FileWatching\DefaultFileChangeWatcher.FileChangeContext.cs (1)
13internal sealed class FileChangeContext : IFileChangeContext
HostWorkspace\FileWatching\LspFileChangeWatcher.cs (1)
47private sealed class FileChangeContext : IFileChangeContext
Microsoft.VisualStudio.LanguageServices (1)
ProjectSystem\FileChangeWatcher.cs (1)
339private sealed class Context : IVsFreeThreadedFileChangeEvents2, IFileChangeContext
71 references to IFileChangeContext
Microsoft.CodeAnalysis.LanguageServer (6)
HostWorkspace\FileWatching\DefaultFileChangeWatcher.cs (1)
47public IFileChangeContext CreateContext(ImmutableArray<WatchedDirectory> watchedDirectories)
HostWorkspace\FileWatching\DelegatingFileChangeWatcher.cs (1)
48public IFileChangeContext CreateContext(ImmutableArray<WatchedDirectory> watchedDirectories)
HostWorkspace\FileWatching\LspFileChangeWatcher.cs (1)
44public IFileChangeContext CreateContext(ImmutableArray<WatchedDirectory> watchedDirectories)
HostWorkspace\LoadedProject.cs (3)
27private readonly IFileChangeContext? _sourceFileCreatedOrDeletedChangeContext; 28private readonly IFileChangeContext? _projectFileChangeContext; 29private readonly IFileChangeContext _assetsFileChangeContext;
Microsoft.CodeAnalysis.LanguageServer.UnitTests (53)
DefaultFileChangeWatcherTests.cs (50)
27using var context = watcher.CreateContext([]); 39using var context = watcher.CreateContext([new WatchedDirectory(tempDirectory.Path, extensionFilters: [])]); 53using var context = watcher.CreateContext([new WatchedDirectory(nonExistentPath, extensionFilters: [])]); 68using var context = watcher.CreateContext([ 86using var context = watcher.CreateContext([ 104using var context = watcher.CreateContext([ 122using var context = watcher.CreateContext([new WatchedDirectory(tempDirectory.Path, extensionFilters: [".cs"])]); 137using var context = watcher.CreateContext([new WatchedDirectory(watchedDir.Path, extensionFilters: [])]); 152using var context = watcher.CreateContext([new WatchedDirectory(tempDirectory.Path, extensionFilters: [".cs"])]); 166using var context = watcher.CreateContext([]); 181using var context = watcher.CreateContext([]); 202using var context = watcher.CreateContext([]); 221using var context = watcher.CreateContext([new WatchedDirectory(tempDirectory.Path, extensionFilters: [])]); 234using var context = watcher.CreateContext([]); 248using var context = watcher.CreateContext([new WatchedDirectory(tempDirectory.Path, extensionFilters: [".cs", ".vb"])]); 272using var context = watcher.CreateContext([new WatchedDirectory(tempDirectory.Path, extensionFilters: [".cs"])]); 288using var context = watcher.CreateContext([new WatchedDirectory(watchedDir.Path, extensionFilters: [])]); 303using var context = watcher.CreateContext([new WatchedDirectory(watchedDir.Path, extensionFilters: [])]); 317using var context = watcher.CreateContext([]); 336using var context = watcher.CreateContext([]); 361var context1 = watcher.CreateContext([new WatchedDirectory(root.Path, extensionFilters: [".cs"])]); 362var context2 = watcher.CreateContext([new WatchedDirectory(root.Path, extensionFilters: [".vb"])]); 384var context = watcher.CreateContext([new WatchedDirectory(root.Path, extensionFilters: [".cs"])]); 414private static FileChangeTask ListenForFileChangeAsync(IFileChangeContext context, string filePath) 439using var context = watcher.CreateContext([]); 462using var context = watcher.CreateContext([new WatchedDirectory(tempDirectory.Path, extensionFilters: [])]); 482using var context = watcher.CreateContext([new WatchedDirectory(tempDirectory.Path, extensionFilters: [])]); 499using var context = watcher.CreateContext([new WatchedDirectory(tempDirectory.Path, extensionFilters: [".cs"])]); 517using var context = watcher.CreateContext([new WatchedDirectory(tempDirectory.Path, extensionFilters: [".cs"])]); 537using var context = watcher.CreateContext([new WatchedDirectory(tempDirectory.Path, extensionFilters: [])]); 555using var context = watcher.CreateContext([]); 579using var context = watcher.CreateContext([]); 600using var context = watcher.CreateContext([ 625using var context = watcher.CreateContext([]); 651using var context = watcher.CreateContext([new WatchedDirectory(tempDirectory.Path, extensionFilters: [])]); 684using var context = watcher.CreateContext([]); 717using var context = watcher.CreateContext([new WatchedDirectory(tempDirectory.Path, extensionFilters: [])]); 737using var context = watcher.CreateContext([new WatchedDirectory(tempDirectory.Path, extensionFilters: [])]); 756using var context1 = watcher.CreateContext([new WatchedDirectory(tempDirectory.Path, extensionFilters: [])]); 757using var context2 = watcher.CreateContext([new WatchedDirectory(tempDirectory.Path, extensionFilters: [".cs"])]); 772using var context1 = watcher.CreateContext([new WatchedDirectory(tempDirectory.Path, extensionFilters: [])]); 774using var context2 = watcher.CreateContext([new WatchedDirectory(pathWithExtraSeparators, extensionFilters: [])]); 788var context1 = watcher.CreateContext([new WatchedDirectory(tempDirectory.Path, extensionFilters: [])]); 789var context2 = watcher.CreateContext([new WatchedDirectory(tempDirectory.Path, extensionFilters: [".cs"])]); 816using var context1 = watcher.CreateContext([new WatchedDirectory(tempDirectory.Path, extensionFilters: [])]); 817using var context2 = watcher.CreateContext([new WatchedDirectory(tempDirectory.Path, extensionFilters: [".cs"])]); 839var context1 = watcher.CreateContext([new WatchedDirectory(tempDirectory.Path, extensionFilters: [])]); 840using var context2 = watcher.CreateContext([new WatchedDirectory(tempDirectory.Path, extensionFilters: [".cs"])]); 865var context1 = watcher.CreateContext([new WatchedDirectory(tempDirectory.Path, extensionFilters: [])]); 871using var context2 = watcher.CreateContext([new WatchedDirectory(tempDirectory.Path, extensionFilters: [])]);
FileBasedProgramsWorkspaceTests.cs (1)
840using var fileChangeContext = fileChangeWatcher.CreateContext([new WatchedDirectory(Path.GetDirectoryName(appCsFile.Path)!, extensionFilters: [])]);
LspFileChangeWatcherTests.cs (2)
60var context = lspFileChangeWatcher.CreateContext([new ProjectSystem.WatchedDirectory(tempDirectory.Path, extensionFilters: [])]); 90var context = lspFileChangeWatcher.CreateContext([]);
Microsoft.CodeAnalysis.Workspaces (9)
Workspace\ProjectSystem\FileWatchedPortableExecutableReferenceFactory.cs (3)
30private readonly Lazy<IFileChangeContext> _fileReferenceChangeContext; 67_fileReferenceChangeContext = new Lazy<IFileChangeContext>(() => 69var fileReferenceChangeContext = fileChangeWatcher.CreateContext(GetAdditionalWatchedDirectories());
Workspace\ProjectSystem\IFileChangeWatcher.cs (5)
13IFileChangeContext CreateContext(ImmutableArray<WatchedDirectory> watchedDirectories); 17/// Gives a hint to the <see cref="IFileChangeContext"/> that we should watch a top-level directory for all changes in addition 18/// to any files called by <see cref="IFileChangeContext.EnqueueWatchingFile(string)"/>. 21/// This is largely intended as an optimization; consumers should still call <see cref="IFileChangeContext.EnqueueWatchingFile(string)" /> 82/// file in the directory if the <see cref="IFileChangeContext"/> was watching a directory.
Workspace\ProjectSystem\ProjectSystemProject.cs (1)
111private readonly IFileChangeContext _documentFileChangeContext;
Microsoft.VisualStudio.LanguageServices (3)
ProjectSystem\FileChangeWatcher.cs (2)
26/// an <see cref="IFileChangeContext"/> which lets you add/remove files being watched, and an event is raised when a file is modified. 88public IFileChangeContext CreateContext(ImmutableArray<WatchedDirectory> watchedDirectories)
ProjectSystem\RuleSets\VisualStudioRuleSetManager.RuleSetFile.cs (1)
26private IFileChangeContext _fileChangeContext;