func (s *SearchSource) SortBy(sorter ...Sorter) *SearchSource {
	s.sorters = append(s.sorters, sorter...)
	return s
}
SortBy	adds a sort order.
package elastic
import (
	"fmt"
)
type SearchSource struct {
	query                    Query
	postQuery                Query
	from                     int
	size                     int
	explain                  *bool
	version                  *bool
	sorters                  []Sorter
	trackScores              bool
	minScore                 *float64
	timeout                  string
	terminateAfter           *int
	fieldNames               []string
	fieldDataFields          []string
	scriptFields             []*ScriptField
	fetchSourceContext       *FetchSourceContext
	aggregations             map[string]Aggregation
	highlight                *Highlight
	globalSuggestText        string
	suggesters               []Suggester
	rescores                 []*Rescore
	defaultRescoreWindowSize *int
	indexBoosts              map[string]float64
	stats                    []string
	innerHits                map[string]*InnerHit
}
func NewSearchSource() *SearchSource {
	return &SearchSource{
		from:            -1,
		size:            -1,
		trackScores:     false,
		sorters:         make([]Sorter, 0),
		fieldDataFields: make([]string, 0),
		scriptFields:    make([]*ScriptField, 0),
		aggregations:    make(map[string]Aggregation),
		rescores:        make([]*Rescore, 0),
		indexBoosts:     make(map[string]float64),
		stats:           make([]string, 0),
		innerHits:       make(map[string]*InnerHit),
	}
}
func (s *SearchSource) Query(query Query) *SearchSource {
	s.query = query
	return s
}
func (s *SearchSource) PostFilter(postFilter Query) *SearchSource {
	s.postQuery = postFilter
	return s
}
func (s *SearchSource) From(from int) *SearchSource {
	s.from = from
	return s
}
func (s *SearchSource) Size(size int) *SearchSource {
	s.size = size
	return s
}
func (s *SearchSource) MinScore(minScore float64) *SearchSource {
	s.minScore = &minScore
	return s
}
func (s *SearchSource) Explain(explain bool) *SearchSource {
	s.explain = &explain
	return s
}
func (s *SearchSource) Version(version bool) *SearchSource {
	s.version = &version
	return s
}
func (s *SearchSource) Timeout(timeout string) *SearchSource {
	s.timeout = timeout
	return s
}
func (s *SearchSource) TimeoutInMillis(timeoutInMillis int) *SearchSource {
	s.timeout = fmt.Sprintf("%dms", timeoutInMillis)
	return s
}
func (s *SearchSource) TerminateAfter(terminateAfter int) *SearchSource {
	s.terminateAfter = &terminateAfter
	return s
}
func (s *SearchSource) Sort(field string, ascending bool) *SearchSource {
	s.sorters = append(s.sorters, SortInfo{Field: field, Ascending: ascending})
	return s
}
func (s *SearchSource) SortWithInfo(info SortInfo) *SearchSource {
	s.sorters = append(s.sorters, info)
	return s
}