protected sealed override void AfterCommitSync(ISet <IPsiSourceFile> indirectDependencies) { myLocks.ExecuteWithWriteLockWhenAvailable(Lifetime, $"{nameof(T4FileDependencyInvalidator)} :: AfterCommitSync", () => { foreach (var file in indirectDependencies) { file.SetBeingIndirectlyUpdated(true); Services.Caches.MarkAsDirty(file); Services.Files.MarkAsDirty(file); } foreach (var file in PreviousIterationIndirectDependencies.Except(indirectDependencies)) { file.SetBeingIndirectlyUpdated(false); } PreviousIterationIndirectDependencies = indirectDependencies; }); }