diff options
author | Tor Egge <Tor.Egge@online.no> | 2022-07-08 12:08:10 +0200 |
---|---|---|
committer | Tor Egge <Tor.Egge@online.no> | 2022-07-08 12:08:10 +0200 |
commit | d62112372d3613cdb38b2b7b17a4694cd6bd9433 (patch) | |
tree | 8659039c0f556f409ed5d816533f01467b154c3a /searchsummary | |
parent | 6704543d37a2f7f7b6f471fe66398a556dc7359c (diff) |
Move check for undefined value to SummaryFieldConverter::insert_summary_field.
Diffstat (limited to 'searchsummary')
3 files changed, 10 insertions, 9 deletions
diff --git a/searchsummary/src/vespa/searchsummary/docsummary/docsum_store_document.cpp b/searchsummary/src/vespa/searchsummary/docsummary/docsum_store_document.cpp index f97956be6da..e525989e972 100644 --- a/searchsummary/src/vespa/searchsummary/docsummary/docsum_store_document.cpp +++ b/searchsummary/src/vespa/searchsummary/docsummary/docsum_store_document.cpp @@ -35,11 +35,7 @@ DocsumStoreDocument::insert_summary_field(const vespalib::string& field_name, ve { auto field_value = get_field_value(field_name); if (field_value) { - CheckUndefinedValueVisitor check_undefined; - field_value->accept(check_undefined); - if (!check_undefined.is_undefined()) { - SummaryFieldConverter::insert_summary_field(false, *field_value, inserter); - } + SummaryFieldConverter::insert_summary_field(*field_value, inserter); } } diff --git a/searchsummary/src/vespa/searchsummary/docsummary/summaryfieldconverter.cpp b/searchsummary/src/vespa/searchsummary/docsummary/summaryfieldconverter.cpp index 6082c82e863..1fcd0213ce2 100644 --- a/searchsummary/src/vespa/searchsummary/docsummary/summaryfieldconverter.cpp +++ b/searchsummary/src/vespa/searchsummary/docsummary/summaryfieldconverter.cpp @@ -1,6 +1,7 @@ // Copyright Yahoo. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root. #include "summaryfieldconverter.h" +#include "check_undefined_value_visitor.h" #include "linguisticsannotation.h" #include "resultconfig.h" #include "searchdatatype.h" @@ -594,10 +595,14 @@ SummaryFieldConverter::convert_field_with_filter(bool markup, } void -SummaryFieldConverter::insert_summary_field(bool markup, const FieldValue& value, vespalib::slime::Inserter& inserter) +SummaryFieldConverter::insert_summary_field(const FieldValue& value, vespalib::slime::Inserter& inserter) { - SlimeFiller visitor(inserter, markup); - value.accept(visitor); + CheckUndefinedValueVisitor check_undefined; + value.accept(check_undefined); + if (!check_undefined.is_undefined()) { + SlimeFiller visitor(inserter, false); + value.accept(visitor); + } } } diff --git a/searchsummary/src/vespa/searchsummary/docsummary/summaryfieldconverter.h b/searchsummary/src/vespa/searchsummary/docsummary/summaryfieldconverter.h index 4367dbcd109..23d20b23c1f 100644 --- a/searchsummary/src/vespa/searchsummary/docsummary/summaryfieldconverter.h +++ b/searchsummary/src/vespa/searchsummary/docsummary/summaryfieldconverter.h @@ -25,7 +25,7 @@ public: const document::FieldValue& value, const std::vector<uint32_t>& matching_elems); - static void insert_summary_field(bool markup, const document::FieldValue& value, vespalib::slime::Inserter& inserter); + static void insert_summary_field(const document::FieldValue& value, vespalib::slime::Inserter& inserter); }; } |