CachedSnippets UpdateCache(string directory, List<string> includeDirectories, long lastDirectoryWrite)
 {
     var readSnippets = snippetExtractor.FromFiles(GetFilesToInclude(includeDirectories));
     var snippetGroups = SnippetGrouper.Group(readSnippets.Snippets);
     var cachedSnippets = new CachedSnippets(
         ticks: lastDirectoryWrite,
         readingErrors: readSnippets.Errors,
         groupingErrors: snippetGroups.Errors,
         snippetGroups: snippetGroups.Groups);
     return directoryToSnippets[directory] = cachedSnippets;
 }
 public bool TryRemoveDirectory(string directory, out CachedSnippets cachedSnippets)
 {
     return directoryToSnippets.TryRemove(directory, out cachedSnippets);
 }