func (c *Client) Query(query PQLQuery, options ...interface{}) (*QueryResponse, error) {
	span := c.tracer.StartSpan("Client.Query")
	defer span.Finish()

	if err := query.Error(); err != nil {
		return nil, err
	}
	queryOptions := &QueryOptions{}
	err := queryOptions.addOptions(options...)
	if err != nil {
		return nil, err
	}
	serializedQuery := query.Serialize()
	data, err := makeRequestData(serializedQuery.String(), queryOptions)
	if err != nil {
		return nil, errors.Wrap(err, "making request data")
	}
	useCoordinator := serializedQuery.HasWriteKeys()
	path := fmt.Sprintf("/index/%s/query", query.Index().name)
	_, buf, err := c.httpRequest("POST", path, data, defaultProtobufHeaders(), useCoordinator)
	if err != nil {
		return nil, err
	}
	iqr := &pbuf.QueryResponse{}
	err = proto.Unmarshal(buf, iqr)
	if err != nil {
		return nil, err
	}
	queryResponse, err := newQueryResponseFromInternal(iqr)
	if err != nil {
		return nil, err
	}
	return queryResponse, nil
}
func (c *Client) Query(query PQLQuery, options ...interface{}) (*QueryResponse, error) {
	span := c.tracer.StartSpan("Client.Query")
	defer span.Finish()

	if err := query.Error(); err != nil {
		return nil, err
	}
	queryOptions := &QueryOptions{}
	err := queryOptions.addOptions(options...)
	if err != nil {
		return nil, err
	}
	serializedQuery := query.Serialize()
	data, err := makeRequestData(serializedQuery.String(), queryOptions)
	if err != nil {
		return nil, errors.Wrap(err, "making request data")
	}
	useCoordinator := serializedQuery.HasWriteKeys()
	path := fmt.Sprintf("/index/%s/query", query.Index().name)
	_, buf, err := c.httpRequest("POST", path, data, defaultProtobufHeaders(), useCoordinator)
	if err != nil {
		return nil, err
	}
	iqr := &pbuf.QueryResponse{}
	err = proto.Unmarshal(buf, iqr)
	if err != nil {
		return nil, err
	}
	queryResponse, err := newQueryResponseFromInternal(iqr)
	if err != nil {
		return nil, err
	}
	return queryResponse, nil
}
func ( c * Client ) Query ( query PQLQuery , options ... interface { } ) ( * QueryResponse , error ) { span := c . tracer . StartSpan ( " " ) defer span . Finish ( ) if err := query . Error ( ) ; err != nil { return nil , err } queryOptions := & QueryOptions { } err := queryOptions . addOptions ( options ... ) if err != nil { return nil , err } serializedQuery := query . Serialize ( ) data , err := makeRequestData ( serializedQuery . String ( ) , queryOptions ) if err != nil { return nil , errors . Wrap ( err , " " ) } useCoordinator := serializedQuery . HasWriteKeys ( ) path := fmt . Sprintf ( " " , query . Index ( ) . name ) _ , buf , err := c . httpRequest ( " " , path , data , defaultProtobufHeaders ( ) , useCoordinator ) if err != nil { return nil , err } iqr := & pbuf . QueryResponse { } err = proto . Unmarshal ( buf , iqr ) if err != nil { return nil , err } queryResponse , err := newQueryResponseFromInternal ( iqr ) if err != nil { return nil , err } return queryResponse , nil }
// Query runs the given query against the server with the given options.
// Pass nil for default options.
Query runs the given query against the server with the given options . Pass nil for default options .