func (s *SearchService) Tweets(params *SearchTweetParams) (*Search, *http.Response, error) {
	search := new(Search)
	apiError := new(APIError)
	resp, err := s.sling.New().Get("tweets.json").QueryStruct(params).Receive(search, apiError)
	return search, resp, relevantError(err, *apiError)
}
Tweets returns a collection of Tweets matching a search query.
https://dev.twitter.com/rest/reference/get/search/tweets
package twitter
import (
	"net/http"
	"github.com/dghubble/sling"
)
type Search struct {
	Statuses []Tweet         `json:"statuses"`
	Metadata *SearchMetadata `json:"search_metadata"`
}
type SearchMetadata struct {
	Count       int     `json:"count"`
	SinceID     int64   `json:"since_id"`
	SinceIDStr  string  `json:"since_id_str"`
	MaxID       int64   `json:"max_id"`
	MaxIDStr    string  `json:"max_id_str"`
	RefreshURL  string  `json:"refresh_url"`
	NextResults string  `json:"next_results"`
	CompletedIn float64 `json:"completed_in"`
	Query       string  `json:"query"`
}
type SearchService struct {
	sling *sling.Sling
}
func newSearchService(sling *sling.Sling) *SearchService {
	return &SearchService{
		sling: sling.Path("search/"),
	}
}
type SearchTweetParams struct {
	Query           string `url:"q,omitempty"`
	Geocode         string `url:"geocode,omitempty"`
	Lang            string `url:"lang,omitempty"`
	Locale          string `url:"locale,omitempty"`
	ResultType      string `url:"result_type,omitempty"`
	Count           int    `url:"count,omitempty"`
	SinceID         int64  `url:"since_id,omitempty"`
	MaxID           int64  `url:"max_id,omitempty"`
	Until           string `url:"until,omitempty"`
	IncludeEntities *bool  `url:"include_entities,omitempty"`
	TweetMode       string `url:"tweet_mode,omitempty"`
}