Refactor Everything. Co-authored-by: Anna Rose Wiggins <annabunches@gmail.com> Co-committed-by: Anna Rose Wiggins <annabunches@gmail.com>
29 lines
439 B
Go
29 lines
439 B
Go
package mappingrules
|
|
|
|
import "slices"
|
|
|
|
type MappingRuleBase struct {
|
|
Name string
|
|
Modes []string
|
|
}
|
|
|
|
func NewMappingRuleBase(
|
|
name string,
|
|
modes []string,
|
|
) MappingRuleBase {
|
|
if len(modes) == 0 {
|
|
modes = []string{"*"}
|
|
}
|
|
|
|
return MappingRuleBase{
|
|
Name: name,
|
|
Modes: modes,
|
|
}
|
|
}
|
|
|
|
func (rule *MappingRuleBase) modeCheck(mode *string) bool {
|
|
if rule.Modes[0] == "*" {
|
|
return true
|
|
}
|
|
return slices.Contains(rule.Modes, *mode)
|
|
}
|