anchor.diff:  
   const ruleLeadMatter = 'Rules are organized into familiar rule groups.';
   
  -// TODO(pq): generate dynamically.
  -List<String> pedanticRules =
  -// 1.4
  -    [
  -  'avoid_empty_else',
  -  'avoid_relative_lib_imports',
  -  'avoid_return_types_on_setters',
  -  'avoid_types_as_parameter_names',
  -  'no_duplicate_case_values',
  -  'prefer_contains',
  -  'prefer_equal_for_default_values',
  -  'prefer_is_not_empty',
  -  'recursive_getters',
  -  'unrelated_type_equality_checks',
  -  'use_rethrow_when_possible',
  -  'unawaited_futures',
  -  'valid_regexps'
  -];
  +final pedanticRules = <String>[];
   
   /// Sorted list of contributed lint rules.
   final List<LintRule> rules =
  
positive.code:     .join('\n\n');
  
  List<String> get sortedRules => rules.map((r) => r.name).toList()..sort();
  
  Future<void> generateDocs(String dir) async {
    String outDir = dir;
  
negative.code: 
    registerLintRules();
  
    // Generate lint count badge.
    await new CountBadger(Registry.ruleRegistry).generate(outDir);
  
    // Fetch info for lint group/style badge generation.
    await fetchBadgeInfo();
  
    // Generate index.
    new Indexer(Registry.ruleRegistry).generate(outDir);
  
    // Generate rule files.
    rules.forEach((l) => new Generator(l).generate(outDir));
  
    // Generate options samples.
  