diff options
author | Henning Baldersheim <balder@yahoo-inc.com> | 2023-07-12 07:22:51 +0000 |
---|---|---|
committer | Henning Baldersheim <balder@yahoo-inc.com> | 2023-07-13 09:17:32 +0000 |
commit | 66161a01d7bdf35b3a8c108b165ec041927740a0 (patch) | |
tree | f9e80cfaba1d155c3026b425527fe4bb5b57771b /searchlib | |
parent | cd357bf9f6718bf279fa4503b973363842f994b1 (diff) |
Separate with methodName rather than subtle boolean with default value
Diffstat (limited to 'searchlib')
-rw-r--r-- | searchlib/src/vespa/searchlib/attribute/attribute_blueprint_factory.cpp | 18 |
1 files changed, 11 insertions, 7 deletions
diff --git a/searchlib/src/vespa/searchlib/attribute/attribute_blueprint_factory.cpp b/searchlib/src/vespa/searchlib/attribute/attribute_blueprint_factory.cpp index 152fcef5e8b..b6e406e2d24 100644 --- a/searchlib/src/vespa/searchlib/attribute/attribute_blueprint_factory.cpp +++ b/searchlib/src/vespa/searchlib/attribute/attribute_blueprint_factory.cpp @@ -699,16 +699,20 @@ public: ~CreateBlueprintVisitor() override; template <class TermNode> - void visitTerm(TermNode &n, bool simple = false) { - if (simple && (_dwa != nullptr) && !_field.isFilter() && n.isRanked()) { + void visitSimpleTerm(TermNode &n) { + if ((_dwa != nullptr) && !_field.isFilter() && n.isRanked()) { NodeAsKey key(n, _scratchPad); setResult(std::make_unique<DirectAttributeBlueprint>(_field, _attr, *_dwa, key)); } else { - SearchContextParams scParams = createContextParams(_field.isFilter()); - const string stack = StackDumpCreator::create(n); - setResult(std::make_unique<AttributeFieldBlueprint>(_field, _attr, stack, scParams)); + visitTerm(n); } } + template <class TermNode> + void visitTerm(TermNode &n) { + SearchContextParams scParams = createContextParams(_field.isFilter()); + const string stack = StackDumpCreator::create(n); + setResult(std::make_unique<AttributeFieldBlueprint>(_field, _attr, stack, scParams)); + } void visitLocation(LocationTerm &node) { setResult(make_location_blueprint(_field, _attr, node.getTerm(), createContextParams(_field.isFilter()))); @@ -724,7 +728,7 @@ public: } } - void visit(NumberTerm & n) override { visitTerm(n, true); } + void visit(NumberTerm & n) override { visitSimpleTerm(n); } void visit(LocationTerm &n) override { visitLocation(n); } void visit(PrefixTerm & n) override { visitTerm(n); } @@ -748,7 +752,7 @@ public: } } - void visit(StringTerm & n) override { visitTerm(n, true); } + void visit(StringTerm & n) override { visitSimpleTerm(n); } void visit(SubstringTerm & n) override { query::SimpleRegExpTerm re(vespalib::RegexpUtil::make_from_substring(n.getTerm()), n.getView(), n.getId(), n.getWeight()); |