highlighter/parser: Make nested rules optional

This allows us to remove the empty "rules: []" in various syntax definitions.
This commit is contained in:
Jöran Karl 2024-09-07 17:01:00 +02:00
parent 5428b3fda2
commit 6e60dede36

View File

@ -476,10 +476,17 @@ func parseRegion(group string, regionInfo map[interface{}]interface{}, prevRegio
r.limitGroup = r.group
}
r.rules, err = parseRules(regionInfo["rules"].([]interface{}), r)
// rules are optional
if rules, ok := regionInfo["rules"]; ok {
r.rules, err = parseRules(rules.([]interface{}), r)
if err != nil {
return nil, err
}
}
if err != nil {
return nil, err
if r.rules == nil {
// allow empty rules
r.rules = &rules{}
}
return r, nil