diff options
author | Geir Storli <geirst@verizonmedia.com> | 2020-05-29 12:47:51 +0000 |
---|---|---|
committer | Geir Storli <geirst@verizonmedia.com> | 2020-05-29 12:47:51 +0000 |
commit | 8857c41732323fc13435f7b4cce9de97179e733e (patch) | |
tree | 2a847c0ff460a4b3947264895c5aeff525f66ffb /searchlib | |
parent | 7f7ae6ce2f47ae66f40db75e79f86cbaad1e1d83 (diff) |
Remove dependency to blueprint in filter wrapper.
Diffstat (limited to 'searchlib')
3 files changed, 6 insertions, 6 deletions
diff --git a/searchlib/src/vespa/searchlib/attribute/attribute_blueprint_factory.cpp b/searchlib/src/vespa/searchlib/attribute/attribute_blueprint_factory.cpp index d838013c0ef..a9a593b429d 100644 --- a/searchlib/src/vespa/searchlib/attribute/attribute_blueprint_factory.cpp +++ b/searchlib/src/vespa/searchlib/attribute/attribute_blueprint_factory.cpp @@ -141,7 +141,7 @@ public: SearchIteratorUP createFilterSearch(bool strict, FilterConstraint constraint) const override { (void) constraint; // We provide an iterator with exact results, so no need to take constraint into consideration. - auto wrapper = std::make_unique<FilterWrapper>(getState()); + auto wrapper = std::make_unique<FilterWrapper>(getState().numFields()); wrapper->wrap(createLeafSearch(wrapper->tfmda(), strict)); return wrapper; } diff --git a/searchlib/src/vespa/searchlib/diskindex/disktermblueprint.cpp b/searchlib/src/vespa/searchlib/diskindex/disktermblueprint.cpp index 27aa070d514..09024505450 100644 --- a/searchlib/src/vespa/searchlib/diskindex/disktermblueprint.cpp +++ b/searchlib/src/vespa/searchlib/diskindex/disktermblueprint.cpp @@ -100,7 +100,7 @@ DiskTermBlueprint::createLeafSearch(const TermFieldMatchDataArray & tfmda, bool SearchIterator::UP DiskTermBlueprint::createFilterSearch(bool strict, FilterConstraint) const { - auto wrapper = std::make_unique<queryeval::FilterWrapper>(getState()); + auto wrapper = std::make_unique<queryeval::FilterWrapper>(getState().numFields()); auto & tfmda = wrapper->tfmda(); if (_bitVector) { wrapper->wrap(BitVectorIterator::create(_bitVector.get(), *tfmda[0], strict)); diff --git a/searchlib/src/vespa/searchlib/queryeval/filter_wrapper.h b/searchlib/src/vespa/searchlib/queryeval/filter_wrapper.h index b67bacca118..27740df6ba6 100644 --- a/searchlib/src/vespa/searchlib/queryeval/filter_wrapper.h +++ b/searchlib/src/vespa/searchlib/queryeval/filter_wrapper.h @@ -3,7 +3,7 @@ #pragma once #include "searchiterator.h" -#include "blueprint.h" +#include <vespa/searchlib/common/bitvector.h> #include <vespa/searchlib/fef/termfieldmatchdata.h> #include <vespa/searchlib/fef/termfieldmatchdataarray.h> @@ -20,12 +20,12 @@ private: fef::TermFieldMatchDataArray _tfmda; std::unique_ptr<SearchIterator> _wrapped_search; public: - FilterWrapper(const Blueprint::State &state) - : _unused_md(state.numFields()), + FilterWrapper(size_t num_fields) + : _unused_md(num_fields), _tfmda(), _wrapped_search() { - for (size_t i = 0; i < state.numFields(); ++i) { + for (size_t i = 0; i < num_fields; ++i) { _tfmda.add(&_unused_md[i]); } } |