MCPcopy Create free account
hub / github.com/Effect-TS/tsgo / generateReadmeExampleConfig

Function generateReadmeExampleConfig

internal/rules/rules_json_test.go:685–736  ·  view source on GitHub ↗
()

Source from the content-addressed store, hash-verified

683 DefaultSeverity: current.DefaultSeverity,
684 Fixable: fixable,
685 SupportedEffect: current.SupportedEffect,
686 Codes: codes,
687 Preview: preview,
688 })
689 }
690 groupOrder := make(map[string]int, len(groups))
691 for i, g := range groups {
692 groupOrder[g.ID] = i
693 }
694 slices.SortFunc(exported, func(a, b exportedRule) int {
695 if ga, gb := groupOrder[a.Group], groupOrder[b.Group]; ga != gb {
696 return ga - gb
697 }
698 return strings.Compare(a.Name, b.Name)
699 })
700
701 doc := metadataDocument{
702 Groups: groups,
703 Presets: presets,
704 Rules: exported,
705 }
706
707 data, err := json.MarshalIndent(doc, "", " ")
708 if err != nil {
709 return nil, err
710 }
711 return append(data, '\n'), nil
712}
713
714func generateReadmeTable() string {
715 groups := rules.MetadataGroups()
716
717 type ruleEntry struct {
718 name string
719 group string
720 description string
721 }
722
723 allRules := make([]ruleEntry, 0, len(rules.All))
724 for _, r := range rules.All {
725 allRules = append(allRules, ruleEntry{
726 name: r.Name,
727 group: r.Group,
728 description: r.Description,
729 })
730 }
731 groupOrder := make(map[string]int, len(groups))
732 for i, g := range groups {
733 groupOrder[g.ID] = i
734 }
735 slices.SortFunc(allRules, func(a, b ruleEntry) int {
736 if ga, gb := groupOrder[a.group], groupOrder[b.group]; ga != gb {
737 return ga - gb
738 }
739 return strings.Compare(a.name, b.name)

Callers 1

generateReadmeFunction · 0.85

Calls 4

readmeDefaultValueFunction · 0.85
compactJSONFunction · 0.85
indentedJSONFunction · 0.85
jsonFieldNameFunction · 0.70

Tested by

no test coverage detected