code: func (h *Connect) IntentionCheck(args *IntentionCheck, q *QueryOptions) (bool, *QueryMeta, error) {
  	r := h.c.newRequest("GET", "/v1/connect/intentions/check")
  	r.setQueryOptions(q)
  	r.params.Set("source", args.Source)
  	r.params.Set("destination", args.Destination)
  	if args.SourceType != "" {
  		r.params.Set("source-type", string(args.SourceType))
  	}
  	rtt, resp, err := requireOK(h.c.doRequest(r))
  	if err != nil {
  		return false, nil, err
  	}
  	defer resp.Body.Close()
  
  	qm := &QueryMeta{}
  	parseQueryMeta(resp, qm)
  	qm.RequestTime = rtt
  
  	var out struct{ Allowed bool }
  	if err := decodeBody(resp, &out); err != nil {
  		return false, nil, err
  	}
  	return out.Allowed, qm, nil
  }
docs: // IntentionCheck returns whether a given source/destination would be allowed
  // or not given the current set of intentions and the configuration of Consul.