github.com/yoheimuta/protolint@v0.49.8-0.20240515023657-4ecaebb7575d/internal/linter/rule/rules.go (about)

     1  package rule
     2  
     3  import "github.com/yoheimuta/protolint/linter/rule"
     4  
     5  // Rules is a list of Rules.
     6  type Rules []rule.Rule
     7  
     8  // Default returns a default set of rules.
     9  func (rs Rules) Default() Rules {
    10  	var d Rules
    11  	for _, r := range rs {
    12  		if r.IsOfficial() {
    13  			d = append(d, r)
    14  		}
    15  	}
    16  	return d
    17  }
    18  
    19  // IDs returns a set of rule ids.
    20  func (rs Rules) IDs() []string {
    21  	return ruleIDs(rs)
    22  }
    23  
    24  func ruleIDs(rules []rule.Rule) []string {
    25  	var ids []string
    26  	for _, rule := range rules {
    27  		ids = append(ids, rule.ID())
    28  	}
    29  	return ids
    30  }