summaryrefslogtreecommitdiffstats
path: root/searchlib
diff options
context:
space:
mode:
authorArne Juul <arnej@verizonmedia.com>2020-05-13 11:37:00 +0000
committerArne Juul <arnej@verizonmedia.com>2020-05-13 11:37:00 +0000
commit5319a2c4c0614d8fd1dd635a29a92922fd73d0e7 (patch)
tree7dffb5acd4992ceb3aaf32ff14ee9df388b9b2b7 /searchlib
parentee292c3b215c8609513e50e4de52afb26912fc94 (diff)
constify GlobalFilter passing
Diffstat (limited to 'searchlib')
-rw-r--r--searchlib/src/tests/queryeval/blueprint/mysearch.h2
-rw-r--r--searchlib/src/vespa/searchlib/queryeval/blueprint.cpp4
-rw-r--r--searchlib/src/vespa/searchlib/queryeval/blueprint.h4
-rw-r--r--searchlib/src/vespa/searchlib/queryeval/global_filter.h5
-rw-r--r--searchlib/src/vespa/searchlib/queryeval/nearest_neighbor_blueprint.cpp2
-rw-r--r--searchlib/src/vespa/searchlib/queryeval/nearest_neighbor_blueprint.h4
6 files changed, 10 insertions, 11 deletions
diff --git a/searchlib/src/tests/queryeval/blueprint/mysearch.h b/searchlib/src/tests/queryeval/blueprint/mysearch.h
index ae1d47e8403..1f2057a4a56 100644
--- a/searchlib/src/tests/queryeval/blueprint/mysearch.h
+++ b/searchlib/src/tests/queryeval/blueprint/mysearch.h
@@ -132,7 +132,7 @@ public:
set_cost_tier(value);
return *this;
}
- void set_global_filter(GlobalFilter &) override {
+ void set_global_filter(const GlobalFilter &) override {
_got_global_filter = true;
}
bool got_global_filter() const { return _got_global_filter; }
diff --git a/searchlib/src/vespa/searchlib/queryeval/blueprint.cpp b/searchlib/src/vespa/searchlib/queryeval/blueprint.cpp
index 190ce054b00..ff19041e16c 100644
--- a/searchlib/src/vespa/searchlib/queryeval/blueprint.cpp
+++ b/searchlib/src/vespa/searchlib/queryeval/blueprint.cpp
@@ -105,7 +105,7 @@ Blueprint::get_replacement()
}
void
-Blueprint::set_global_filter(GlobalFilter &)
+Blueprint::set_global_filter(const GlobalFilter &)
{
}
@@ -371,7 +371,7 @@ IntermediateBlueprint::optimize(Blueprint* &self)
}
void
-IntermediateBlueprint::set_global_filter(GlobalFilter &global_filter)
+IntermediateBlueprint::set_global_filter(const GlobalFilter &global_filter)
{
for (auto & child : _children) {
if (child->getState().want_global_filter()) {
diff --git a/searchlib/src/vespa/searchlib/queryeval/blueprint.h b/searchlib/src/vespa/searchlib/queryeval/blueprint.h
index 2f944b9271b..927f57907f8 100644
--- a/searchlib/src/vespa/searchlib/queryeval/blueprint.h
+++ b/searchlib/src/vespa/searchlib/queryeval/blueprint.h
@@ -187,7 +187,7 @@ public:
virtual bool supports_termwise_children() const { return false; }
virtual bool always_needs_unpack() const { return false; }
- virtual void set_global_filter(GlobalFilter &global_filter);
+ virtual void set_global_filter(const GlobalFilter &global_filter);
virtual const State &getState() const = 0;
const Blueprint &root() const;
@@ -274,7 +274,7 @@ public:
void setDocIdLimit(uint32_t limit) override final;
void optimize(Blueprint* &self) override final;
- void set_global_filter(GlobalFilter &global_filter) override;
+ void set_global_filter(const GlobalFilter &global_filter) override;
IndexList find(const IPredicate & check) const;
size_t childCnt() const { return _children.size(); }
diff --git a/searchlib/src/vespa/searchlib/queryeval/global_filter.h b/searchlib/src/vespa/searchlib/queryeval/global_filter.h
index 96bdb83e095..dfcb7687de4 100644
--- a/searchlib/src/vespa/searchlib/queryeval/global_filter.h
+++ b/searchlib/src/vespa/searchlib/queryeval/global_filter.h
@@ -27,13 +27,12 @@ public:
template<typename ... Params>
static std::shared_ptr<GlobalFilter> create(Params&& ... params) {
- ctor_tag x;
- return std::make_shared<GlobalFilter>(x, std::forward<Params>(params)...);
+ return std::make_shared<GlobalFilter>(ctor_tag(), std::forward<Params>(params)...);
}
const search::BitVector *filter() const { return bit_vector.get(); }
- bool has_filter() const { return (bool)bit_vector; }
+ bool has_filter() const { return bool(bit_vector); }
};
} // namespace
diff --git a/searchlib/src/vespa/searchlib/queryeval/nearest_neighbor_blueprint.cpp b/searchlib/src/vespa/searchlib/queryeval/nearest_neighbor_blueprint.cpp
index de9688c4b43..e78902c855e 100644
--- a/searchlib/src/vespa/searchlib/queryeval/nearest_neighbor_blueprint.cpp
+++ b/searchlib/src/vespa/searchlib/queryeval/nearest_neighbor_blueprint.cpp
@@ -81,7 +81,7 @@ NearestNeighborBlueprint::NearestNeighborBlueprint(const queryeval::FieldSpec& f
NearestNeighborBlueprint::~NearestNeighborBlueprint() = default;
void
-NearestNeighborBlueprint::set_global_filter(GlobalFilter &global_filter)
+NearestNeighborBlueprint::set_global_filter(const GlobalFilter &global_filter)
{
_global_filter = global_filter.shared_from_this();
auto nns_index = _attr_tensor.nearest_neighbor_index();
diff --git a/searchlib/src/vespa/searchlib/queryeval/nearest_neighbor_blueprint.h b/searchlib/src/vespa/searchlib/queryeval/nearest_neighbor_blueprint.h
index e6506f777c3..e4732230b3a 100644
--- a/searchlib/src/vespa/searchlib/queryeval/nearest_neighbor_blueprint.h
+++ b/searchlib/src/vespa/searchlib/queryeval/nearest_neighbor_blueprint.h
@@ -28,7 +28,7 @@ private:
const search::tensor::DistanceFunction *_dist_fun;
mutable NearestNeighborDistanceHeap _distance_heap;
std::vector<search::tensor::NearestNeighborIndex::Neighbor> _found_hits;
- std::shared_ptr<GlobalFilter> _global_filter;
+ std::shared_ptr<const GlobalFilter> _global_filter;
void perform_top_k();
public:
@@ -42,7 +42,7 @@ public:
const tensor::DenseTensorAttribute& get_attribute_tensor() const { return _attr_tensor; }
const vespalib::tensor::DenseTensorView& get_query_tensor() const { return *_query_tensor; }
uint32_t get_target_num_hits() const { return _target_num_hits; }
- void set_global_filter(GlobalFilter &global_filter) override;
+ void set_global_filter(const GlobalFilter &global_filter) override;
std::unique_ptr<SearchIterator> createLeafSearch(const search::fef::TermFieldMatchDataArray& tfmda,
bool strict) const override;