summaryrefslogtreecommitdiffstats
path: root/searchlib
diff options
context:
space:
mode:
authorGeir Storli <geirst@verizonmedia.com>2020-05-29 12:47:51 +0000
committerGeir Storli <geirst@verizonmedia.com>2020-05-29 12:47:51 +0000
commit8857c41732323fc13435f7b4cce9de97179e733e (patch)
tree2a847c0ff460a4b3947264895c5aeff525f66ffb /searchlib
parent7f7ae6ce2f47ae66f40db75e79f86cbaad1e1d83 (diff)
Remove dependency to blueprint in filter wrapper.
Diffstat (limited to 'searchlib')
-rw-r--r--searchlib/src/vespa/searchlib/attribute/attribute_blueprint_factory.cpp2
-rw-r--r--searchlib/src/vespa/searchlib/diskindex/disktermblueprint.cpp2
-rw-r--r--searchlib/src/vespa/searchlib/queryeval/filter_wrapper.h8
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]);
}
}