From 367e4f53a7316368207f918b967ce7f34cf474cb Mon Sep 17 00:00:00 2001 From: Marty Schoch Date: Mon, 25 Aug 2014 22:40:06 -0400 Subject: [PATCH] made conjuction queries compatible with interface --- query_boolean.go | 8 ++++---- query_conjunction.go | 2 +- query_phrase.go | 2 +- 3 files changed, 6 insertions(+), 6 deletions(-) diff --git a/query_boolean.go b/query_boolean.go index ca4183f1..fdd5ccce 100644 --- a/query_boolean.go +++ b/query_boolean.go @@ -40,7 +40,7 @@ func (q *BooleanQuery) SetBoost(b float64) *BooleanQuery { func (q *BooleanQuery) Searcher(i *indexImpl, explain bool) (search.Searcher, error) { var err error - var mustSearcher *search.ConjunctionSearcher + var mustSearcher search.Searcher if q.Must != nil { mustSearcher, err = q.Must.Searcher(i, explain) if err != nil { @@ -48,7 +48,7 @@ func (q *BooleanQuery) Searcher(i *indexImpl, explain bool) (search.Searcher, er } } - var shouldSearcher *search.DisjunctionSearcher + var shouldSearcher search.Searcher if q.Should != nil { shouldSearcher, err = q.Should.Searcher(i, explain) if err != nil { @@ -56,7 +56,7 @@ func (q *BooleanQuery) Searcher(i *indexImpl, explain bool) (search.Searcher, er } } - var mustNotSearcher *search.DisjunctionSearcher + var mustNotSearcher search.Searcher if q.MustNot != nil { mustNotSearcher, err = q.MustNot.Searcher(i, explain) if err != nil { @@ -64,7 +64,7 @@ func (q *BooleanQuery) Searcher(i *indexImpl, explain bool) (search.Searcher, er } } - return search.NewBooleanSearcher(i.i, mustSearcher, shouldSearcher, mustNotSearcher, explain) + return search.NewBooleanSearcher(i.i, mustSearcher.(*search.ConjunctionSearcher), shouldSearcher.(*search.DisjunctionSearcher), mustNotSearcher.(*search.DisjunctionSearcher), explain) } func (q *BooleanQuery) Validate() error { diff --git a/query_conjunction.go b/query_conjunction.go index 17a957f7..6d9eaa66 100644 --- a/query_conjunction.go +++ b/query_conjunction.go @@ -40,7 +40,7 @@ func (q *ConjunctionQuery) AddQuery(aq Query) *ConjunctionQuery { return q } -func (q *ConjunctionQuery) Searcher(i *indexImpl, explain bool) (*search.ConjunctionSearcher, error) { +func (q *ConjunctionQuery) Searcher(i *indexImpl, explain bool) (search.Searcher, error) { searchers := make([]search.Searcher, len(q.Conjuncts)) for in, conjunct := range q.Conjuncts { var err error diff --git a/query_phrase.go b/query_phrase.go index 9003999e..068384fc 100644 --- a/query_phrase.go +++ b/query_phrase.go @@ -47,7 +47,7 @@ func (q *PhraseQuery) Searcher(i *indexImpl, explain bool) (search.Searcher, err if err != nil { return nil, err } - return search.NewPhraseSearcher(i.i, conjunctionSearcher, terms) + return search.NewPhraseSearcher(i.i, conjunctionSearcher.(*search.ConjunctionSearcher), terms) } func (q *PhraseQuery) Validate() error {