Example #1
0
        private static string GenerateSpecificAnalyzerLinksList(IEnumerable <AnalyzerDetails> analyzersDetails,
                                                                AnalyzerCategoryDetails category,
                                                                string description,
                                                                Func <string, string> linkCreator)
        {
            var links = GenerateAnalyzerLinksList(analyzersDetails,
                                                  cat => cat.Name == category.Name,
                                                  cat => "",
                                                  linkCreator);

            return(links == "" ? $"There are no analyzers {description} for this category." : links);
        }
Example #2
0
 public static string ProcessCategoryTemplateText(string template,
                                                  AnalyzerCategoryDetails category,
                                                  IEnumerable <AnalyzerDetails> implementedAnalyzersDetails,
                                                  IEnumerable <AnalyzerDetails> plannedAnalyzerDetails,
                                                  string headerTemplate,
                                                  Func <string, string> linkCreator)
 {
     return(template.Replace("%NAME%", category.Name)
            .Replace("%HEADER%", ProcessHeaderTemplate(headerTemplate, category.Name))
            .Replace("%DESCRIPTION%", category.Description)
            .Replace("%IMPLEMENTED-LIST%",
                     GenerateSpecificAnalyzerLinksList(implementedAnalyzersDetails,
                                                       category,
                                                       "implemented yet",
                                                       linkCreator))
            .Replace("%PLANNED-LIST%",
                     GenerateSpecificAnalyzerLinksList(plannedAnalyzerDetails,
                                                       category,
                                                       "planned",
                                                       linkCreator)));
 }
Example #3
0
 private static string CategoryNameLink(AnalyzerCategoryDetails category) => category.Name.Replace(" ", "");
Example #4
0
 private static string CreateCategoryPageLink(AnalyzerCategoryDetails category,
                                              Func <string, string> linkCreator)
 {
     return($"* [{category.Name}]({linkCreator(CategoryNameLink(category))})");
 }