static void AddExtractorItem(string language, CodeSnippetExtractor extractor) { if (s_languageExtractors.TryGetValue(language, out var extractors)) { extractors.Add(extractor); } else { s_languageExtractors[language] = new HashSet <CodeSnippetExtractor> { extractor }; } }
static void AddExtractorItems(string[] languages, CodeSnippetExtractor extractor) { s_defaultExtractors.Add(extractor); foreach (var language in languages) { AddExtractorItem(language, extractor); AddExtractorItem($".{language}", extractor); if (s_languageAlias.TryGetValue(language, out var aliases)) { foreach (var alias in aliases) { AddExtractorItem(alias, extractor); AddExtractorItem($".{alias}", extractor); } } } }