func()

in restrictor/query_restrictor.go [80:95]


func (q *QueryRestrictor) addRestrictorLabels() func(n parser.Node, path []parser.Node) error {
	return func(n parser.Node, path []parser.Node) error {
		if n == nil {
			return nil
		}
		for _, matcher := range q.matchers {
			switch n := n.(type) {
			case *parser.VectorSelector:
				n.LabelMatchers = appendOrReplaceMatcher(n.LabelMatchers, matcher, q.ReplaceExistingLabel)
			case *parser.MatrixSelector:
				n.VectorSelector.(*parser.VectorSelector).LabelMatchers = appendOrReplaceMatcher(n.VectorSelector.(*parser.VectorSelector).LabelMatchers, matcher, q.ReplaceExistingLabel)
			}
		}
		return nil
	}
}