func (query ScanQueryBuilder) Match(pattern string) ScanQueryBuilder {
	query.opts.Match = append(query.opts.Match, pattern)
	return query
}
Match is similar to WHERE except that it works on the object id instead of fields.
There can be multiple MATCH options in a single search.
The MATCH value is a simple glob pattern.
package t38c
type ScanQueryBuilder struct {
	client       tile38Client
	key          string
	outputFormat *OutputFormat
	opts         searchOpts
}
func newScanQueryBuilder(client tile38Client, key string) ScanQueryBuilder {
	return ScanQueryBuilder{
		client: client,
		key:    key,
	}
}
func (query ScanQueryBuilder) toCmd() cmd {
	args := []string{query.key}
	args = append(args, query.opts.Args()...)
	if query.outputFormat != nil {
		args = append(args, query.outputFormat.Name)
		args = append(args, query.outputFormat.Args...)
	}
	return newCmd("SCAN", args...)
}
func (query ScanQueryBuilder) Do() (*SearchResponse, error) {
	cmd := query.toCmd()
	resp := &SearchResponse{}
	err := query.client.jExecute(&resp, cmd.Name, cmd.Args...)
	if err != nil {
		return nil, err
	}
	return resp, nil
}
func (query ScanQueryBuilder) Cursor(cursor int) ScanQueryBuilder {
	query.opts.Cursor = &cursor
	return query
}
func (query ScanQueryBuilder) Limit(limit int) ScanQueryBuilder {
	query.opts.Limit = &limit
	return query
}