code: func (r *Rule) MatchesWhere(parser predicate.Parser) (bool, error) {
  	if r.Where == "" {
  		return true, nil
  	}
  	ifn, err := parser.Parse(r.Where)
  	if err != nil {
  		return false, trace.Wrap(err)
  	}
  	fn, ok := ifn.(predicate.BoolPredicate)
  	if !ok {
  		return false, trace.BadParameter("unsupported type: %T", ifn)
  	}
  	return fn(), nil
  }
docs: // MatchesWhere returns true if Where rule matches
  // Empty Where block always matches