summaryrefslogtreecommitdiffstats
path: root/searchsummary
diff options
context:
space:
mode:
authorHenning Baldersheim <balder@yahoo-inc.com>2022-08-26 20:49:18 +0000
committerHenning Baldersheim <balder@yahoo-inc.com>2022-08-26 20:49:18 +0000
commit370eada6a0e464428374c3a336bd1a256f24fff4 (patch)
tree85abb01b918b6055cc0e73c603cf54bf2064d6ee /searchsummary
parent7a5e9ecb9dd7a0e3dddc3644a263a07a881736d8 (diff)
GC some unused code and add some 'explicit' qualifiers.
Diffstat (limited to 'searchsummary')
-rw-r--r--searchsummary/src/tests/docsummary/matched_elements_filter/matched_elements_filter_test.cpp7
-rw-r--r--searchsummary/src/vespa/searchsummary/docsummary/attribute_combiner_dfw.cpp6
-rw-r--r--searchsummary/src/vespa/searchsummary/docsummary/attribute_combiner_dfw.h2
-rw-r--r--searchsummary/src/vespa/searchsummary/docsummary/attribute_field_writer.cpp3
-rw-r--r--searchsummary/src/vespa/searchsummary/docsummary/attribute_field_writer.h2
-rw-r--r--searchsummary/src/vespa/searchsummary/docsummary/attributedfw.cpp15
-rw-r--r--searchsummary/src/vespa/searchsummary/docsummary/attributedfw.h6
-rw-r--r--searchsummary/src/vespa/searchsummary/docsummary/copy_dfw.h2
-rw-r--r--searchsummary/src/vespa/searchsummary/docsummary/docsum_store_document.h2
-rw-r--r--searchsummary/src/vespa/searchsummary/docsummary/docsumconfig.cpp6
-rw-r--r--searchsummary/src/vespa/searchsummary/docsummary/docsumstate.h2
-rw-r--r--searchsummary/src/vespa/searchsummary/docsummary/docsumstore.h2
-rw-r--r--searchsummary/src/vespa/searchsummary/docsummary/docsumwriter.cpp25
-rw-r--r--searchsummary/src/vespa/searchsummary/docsummary/docsumwriter.h9
-rw-r--r--searchsummary/src/vespa/searchsummary/docsummary/document_id_dfw.cpp10
-rw-r--r--searchsummary/src/vespa/searchsummary/docsummary/document_id_dfw.h2
-rw-r--r--searchsummary/src/vespa/searchsummary/docsummary/juniper_input.cpp6
-rw-r--r--searchsummary/src/vespa/searchsummary/docsummary/juniper_input.h1
-rw-r--r--searchsummary/src/vespa/searchsummary/docsummary/juniperdfw.h6
-rw-r--r--searchsummary/src/vespa/searchsummary/docsummary/juniperproperties.cpp5
-rw-r--r--searchsummary/src/vespa/searchsummary/docsummary/juniperproperties.h5
-rw-r--r--searchsummary/src/vespa/searchsummary/docsummary/keywordextractor.cpp10
-rw-r--r--searchsummary/src/vespa/searchsummary/docsummary/keywordextractor.h9
-rw-r--r--searchsummary/src/vespa/searchsummary/docsummary/matched_elements_filter_dfw.cpp11
-rw-r--r--searchsummary/src/vespa/searchsummary/docsummary/matched_elements_filter_dfw.h9
-rw-r--r--searchsummary/src/vespa/searchsummary/docsummary/positionsdfw.cpp3
-rw-r--r--searchsummary/src/vespa/searchsummary/docsummary/positionsdfw.h7
-rw-r--r--searchsummary/src/vespa/searchsummary/docsummary/summaryfieldconverter.cpp8
28 files changed, 61 insertions, 120 deletions
diff --git a/searchsummary/src/tests/docsummary/matched_elements_filter/matched_elements_filter_test.cpp b/searchsummary/src/tests/docsummary/matched_elements_filter/matched_elements_filter_test.cpp
index 1ecc4853ad4..160e4cec973 100644
--- a/searchsummary/src/tests/docsummary/matched_elements_filter/matched_elements_filter_test.cpp
+++ b/searchsummary/src/tests/docsummary/matched_elements_filter/matched_elements_filter_test.cpp
@@ -25,7 +25,6 @@
#include <vespa/searchsummary/test/slime_value.h>
#include <vespa/vespalib/data/slime/slime.h>
#include <vespa/vespalib/gtest/gtest.h>
-#include <iostream>
#include <vespa/log/log.h>
LOG_SETUP("matched_elements_filter_test");
@@ -198,11 +197,9 @@ public:
_fields(std::make_shared<MatchingElementsFields>())
{
}
- ~MatchedElementsFilterTest();
+ ~MatchedElementsFilterTest() override;
std::unique_ptr<DocsumFieldWriter> make_field_writer(const std::string& input_field_name) {
- int input_field_enum = _doc_store.get_config().GetFieldNameEnum().Lookup(input_field_name.c_str());
- return MatchedElementsFilterDFW::create(input_field_name, input_field_enum,
- _attr_ctx, _fields);
+ return MatchedElementsFilterDFW::create(input_field_name,_attr_ctx, _fields);
}
void expect_filtered(const std::string& input_field_name, const ElementVector& matching_elements, const std::string& exp_slime_as_json) {
Slime act = run_filter_field_writer(input_field_name, matching_elements);
diff --git a/searchsummary/src/vespa/searchsummary/docsummary/attribute_combiner_dfw.cpp b/searchsummary/src/vespa/searchsummary/docsummary/attribute_combiner_dfw.cpp
index 2bd7f31d110..6e00511398c 100644
--- a/searchsummary/src/vespa/searchsummary/docsummary/attribute_combiner_dfw.cpp
+++ b/searchsummary/src/vespa/searchsummary/docsummary/attribute_combiner_dfw.cpp
@@ -29,12 +29,6 @@ AttributeCombinerDFW::AttributeCombinerDFW(const vespalib::string &fieldName, bo
AttributeCombinerDFW::~AttributeCombinerDFW() = default;
bool
-AttributeCombinerDFW::IsGenerated() const
-{
- return true;
-}
-
-bool
AttributeCombinerDFW::setFieldWriterStateIndex(uint32_t fieldWriterStateIndex)
{
_stateIndex = fieldWriterStateIndex;
diff --git a/searchsummary/src/vespa/searchsummary/docsummary/attribute_combiner_dfw.h b/searchsummary/src/vespa/searchsummary/docsummary/attribute_combiner_dfw.h
index c7a390fa988..33b61718392 100644
--- a/searchsummary/src/vespa/searchsummary/docsummary/attribute_combiner_dfw.h
+++ b/searchsummary/src/vespa/searchsummary/docsummary/attribute_combiner_dfw.h
@@ -35,7 +35,7 @@ protected:
virtual DocsumFieldWriterState* allocFieldWriterState(search::attribute::IAttributeContext &context, vespalib::Stash& stash, const MatchingElements* matching_elements) const = 0;
public:
~AttributeCombinerDFW() override;
- bool IsGenerated() const override;
+ bool IsGenerated() const override { return true; }
bool setFieldWriterStateIndex(uint32_t fieldWriterStateIndex) override;
static std::unique_ptr<DocsumFieldWriter> create(const vespalib::string &fieldName, search::attribute::IAttributeContext &attrCtx,
bool filter_elements, std::shared_ptr<MatchingElementsFields> matching_elems_fields);
diff --git a/searchsummary/src/vespa/searchsummary/docsummary/attribute_field_writer.cpp b/searchsummary/src/vespa/searchsummary/docsummary/attribute_field_writer.cpp
index 5668ab82d06..15125bd2172 100644
--- a/searchsummary/src/vespa/searchsummary/docsummary/attribute_field_writer.cpp
+++ b/searchsummary/src/vespa/searchsummary/docsummary/attribute_field_writer.cpp
@@ -51,7 +51,7 @@ class WriteStringFieldNeverSkip : public WriteField<const char*>
public:
WriteStringFieldNeverSkip(vespalib::Memory fieldName, const IAttributeVector& attr, vespalib::Stash& stash)
: WriteField(fieldName, attr, stash) {}
- ~WriteStringFieldNeverSkip() override {}
+ ~WriteStringFieldNeverSkip() override = default;
void print(uint32_t idx, Cursor &cursor) override;
};
@@ -202,7 +202,6 @@ AttributeFieldWriter::create(vespalib::Memory fieldName, const IAttributeVector&
}
default:
assert(false);
- abort();
}
}
diff --git a/searchsummary/src/vespa/searchsummary/docsummary/attribute_field_writer.h b/searchsummary/src/vespa/searchsummary/docsummary/attribute_field_writer.h
index 5c04328d01e..81824c826e2 100644
--- a/searchsummary/src/vespa/searchsummary/docsummary/attribute_field_writer.h
+++ b/searchsummary/src/vespa/searchsummary/docsummary/attribute_field_writer.h
@@ -21,7 +21,7 @@ class AttributeFieldWriter
{
protected:
const vespalib::Memory _fieldName;
- AttributeFieldWriter(vespalib::Memory fieldName);
+ explicit AttributeFieldWriter(vespalib::Memory fieldName);
public:
virtual ~AttributeFieldWriter();
virtual uint32_t fetch(uint32_t docId) = 0;
diff --git a/searchsummary/src/vespa/searchsummary/docsummary/attributedfw.cpp b/searchsummary/src/vespa/searchsummary/docsummary/attributedfw.cpp
index 70e2221c959..285148951fa 100644
--- a/searchsummary/src/vespa/searchsummary/docsummary/attributedfw.cpp
+++ b/searchsummary/src/vespa/searchsummary/docsummary/attributedfw.cpp
@@ -45,18 +45,6 @@ AttrDFW::get_attribute(const GetDocsumsState& s) const
return *s.getAttribute(getIndex());
}
-const vespalib::string &
-AttrDFW::getAttributeName() const
-{
- return _attrName;
-}
-
-bool
-AttrDFW::IsGenerated() const
-{
- return true;
-}
-
namespace {
class SingleAttrDFW : public AttrDFW
@@ -280,9 +268,10 @@ private:
std::shared_ptr<MatchingElementsFields> _matching_elems_fields;
public:
- explicit MultiAttrDFW(const vespalib::string& attr_name, bool filter_elements, std::shared_ptr<MatchingElementsFields> matching_elems_fields)
+ MultiAttrDFW(const vespalib::string& attr_name, bool filter_elements, std::shared_ptr<MatchingElementsFields> matching_elems_fields)
: AttrDFW(attr_name),
_filter_elements(filter_elements),
+ _state_index(0),
_matching_elems_fields(std::move(matching_elems_fields))
{
if (filter_elements && _matching_elems_fields) {
diff --git a/searchsummary/src/vespa/searchsummary/docsummary/attributedfw.h b/searchsummary/src/vespa/searchsummary/docsummary/attributedfw.h
index 26351bdf501..88356ac783e 100644
--- a/searchsummary/src/vespa/searchsummary/docsummary/attributedfw.h
+++ b/searchsummary/src/vespa/searchsummary/docsummary/attributedfw.h
@@ -30,10 +30,10 @@ private:
vespalib::string _attrName;
protected:
const attribute::IAttributeVector& get_attribute(const GetDocsumsState& s) const;
- const vespalib::string & getAttributeName() const override;
+ const vespalib::string & getAttributeName() const override { return _attrName; }
public:
- AttrDFW(const vespalib::string & attrName);
- bool IsGenerated() const override;
+ explicit AttrDFW(const vespalib::string & attrName);
+ bool IsGenerated() const override { return true; }
};
}
diff --git a/searchsummary/src/vespa/searchsummary/docsummary/copy_dfw.h b/searchsummary/src/vespa/searchsummary/docsummary/copy_dfw.h
index fb2b7315945..76c10f47bf1 100644
--- a/searchsummary/src/vespa/searchsummary/docsummary/copy_dfw.h
+++ b/searchsummary/src/vespa/searchsummary/docsummary/copy_dfw.h
@@ -17,7 +17,7 @@ private:
vespalib::string _input_field_name;
public:
- CopyDFW(const vespalib::string& inputField);
+ explicit CopyDFW(const vespalib::string& inputField);
~CopyDFW() override;
bool IsGenerated() const override { return false; }
diff --git a/searchsummary/src/vespa/searchsummary/docsummary/docsum_store_document.h b/searchsummary/src/vespa/searchsummary/docsummary/docsum_store_document.h
index ebc3a57d201..76d152e1548 100644
--- a/searchsummary/src/vespa/searchsummary/docsummary/docsum_store_document.h
+++ b/searchsummary/src/vespa/searchsummary/docsummary/docsum_store_document.h
@@ -15,7 +15,7 @@ class DocsumStoreDocument : public IDocsumStoreDocument
{
std::unique_ptr<document::Document> _document;
public:
- DocsumStoreDocument(std::unique_ptr<document::Document> document);
+ explicit DocsumStoreDocument(std::unique_ptr<document::Document> document);
~DocsumStoreDocument() override;
DocsumStoreFieldValue get_field_value(const vespalib::string& field_name) const override;
JuniperInput get_juniper_input(const vespalib::string& field_name) const override;
diff --git a/searchsummary/src/vespa/searchsummary/docsummary/docsumconfig.cpp b/searchsummary/src/vespa/searchsummary/docsummary/docsumconfig.cpp
index 8bdb1528cdf..457d11e8f4b 100644
--- a/searchsummary/src/vespa/searchsummary/docsummary/docsumconfig.cpp
+++ b/searchsummary/src/vespa/searchsummary/docsummary/docsumconfig.cpp
@@ -100,8 +100,7 @@ DynamicDocsumConfig::createFieldWriter(const string & fieldName, const string &
const string& source_field = argument.empty() ? fieldName : argument;
if (getEnvironment() && getEnvironment()->getAttributeManager()) {
auto attr_ctx = getEnvironment()->getAttributeManager()->createContext();
- fieldWriter = MatchedElementsFilterDFW::create(source_field, resultConfig.GetFieldNameEnum().Lookup(source_field.c_str()),
- *attr_ctx, matching_elems_fields);
+ fieldWriter = MatchedElementsFilterDFW::create(source_field,*attr_ctx, matching_elems_fields);
rc = static_cast<bool>(fieldWriter);
}
} else if (overrideName == "documentid") {
@@ -118,8 +117,7 @@ DynamicDocsumConfig::configure(const vespa::config::search::SummarymapConfig &cf
{
std::vector<string> strCfg;
auto matching_elems_fields = std::make_shared<MatchingElementsFields>();
- for (size_t i = 0; i < cfg.override.size(); ++i) {
- const vespa::config::search::SummarymapConfig::Override & o = cfg.override[i];
+ for (const auto & o : cfg.override) {
bool rc(false);
std::unique_ptr<DocsumFieldWriter> fieldWriter = createFieldWriter(o.field, o.command, o.arguments, rc, matching_elems_fields);
if (rc && fieldWriter) {
diff --git a/searchsummary/src/vespa/searchsummary/docsummary/docsumstate.h b/searchsummary/src/vespa/searchsummary/docsummary/docsumstate.h
index 8e483b06a3c..d3d09224f64 100644
--- a/searchsummary/src/vespa/searchsummary/docsummary/docsumstate.h
+++ b/searchsummary/src/vespa/searchsummary/docsummary/docsumstate.h
@@ -86,7 +86,7 @@ public:
GetDocsumsState(const GetDocsumsState &) = delete;
GetDocsumsState& operator=(const GetDocsumsState &) = delete;
- GetDocsumsState(GetDocsumsStateCallback &callback);
+ explicit GetDocsumsState(GetDocsumsStateCallback &callback);
~GetDocsumsState();
const MatchingElements &get_matching_elements(const MatchingElementsFields &matching_elems_fields);
diff --git a/searchsummary/src/vespa/searchsummary/docsummary/docsumstore.h b/searchsummary/src/vespa/searchsummary/docsummary/docsumstore.h
index 6e6d47cc950..b112b7ab0bf 100644
--- a/searchsummary/src/vespa/searchsummary/docsummary/docsumstore.h
+++ b/searchsummary/src/vespa/searchsummary/docsummary/docsumstore.h
@@ -23,7 +23,7 @@ public:
/**
* Destructor. No cleanup needed for base class.
*/
- virtual ~IDocsumStore() { }
+ virtual ~IDocsumStore() = default;
/**
* @return total number of documents.
diff --git a/searchsummary/src/vespa/searchsummary/docsummary/docsumwriter.cpp b/searchsummary/src/vespa/searchsummary/docsummary/docsumwriter.cpp
index df9925bf9b7..27e8ecea4ca 100644
--- a/searchsummary/src/vespa/searchsummary/docsummary/docsumwriter.cpp
+++ b/searchsummary/src/vespa/searchsummary/docsummary/docsumwriter.cpp
@@ -4,9 +4,7 @@
#include "docsumstate.h"
#include "docsum_field_writer_state.h"
#include "i_docsum_store_document.h"
-#include "summaryfieldconverter.h"
#include <vespa/document/fieldvalue/fieldvalue.h>
-#include <vespa/searchcommon/common/undefinedvalues.h>
#include <vespa/searchlib/util/slime_output_raw_buf_adapter.h>
#include <vespa/searchlib/attribute/iattributemanager.h>
#include <vespa/vespalib/data/slime/slime.h>
@@ -56,9 +54,7 @@ DynamicDocsumWriter::resolveOutputClass(vespalib::stringref summaryClass) const
LOG_ASSERT(rcInfo->_overrideCnt == rcInfo->_generateCnt);
result.allGenerated = true;
}
- result.outputClassInfo = rcInfo;
}
- result.outputClassId = id;
return result;
}
@@ -108,17 +104,15 @@ DynamicDocsumWriter::insertDocsum(const ResolveClassInfo & rci, uint32_t docid,
DynamicDocsumWriter::DynamicDocsumWriter(std::unique_ptr<ResultConfig> config, std::unique_ptr<KeywordExtractor> extractor)
: _resultConfig(std::move(config)),
_keywordExtractor(std::move(extractor)),
- _numClasses(_resultConfig->GetNumResultClasses()),
- _numEnumValues(_resultConfig->GetFieldNameEnum().GetNumEntries()),
_numFieldWriterStates(0),
- _classInfoTable(_numClasses),
- _overrideTable(_numEnumValues)
+ _classInfoTable(_resultConfig->GetNumResultClasses()),
+ _overrideTable(_resultConfig->GetFieldNameEnum().GetNumEntries())
{
uint32_t i = 0;
- for (ResultConfig::iterator it(_resultConfig->begin()), mt(_resultConfig->end()); it != mt; it++, i++) {
- it->setDynamicInfo(&(_classInfoTable[i]));
+ for (auto & result_class : *_resultConfig) {
+ result_class.setDynamicInfo(&(_classInfoTable[i++]));
}
- LOG_ASSERT(i == _numClasses);
+ LOG_ASSERT(i == _resultConfig->GetNumResultClasses());
}
@@ -129,10 +123,8 @@ DynamicDocsumWriter::Override(const char *fieldName, std::unique_ptr<DocsumField
{
uint32_t fieldEnumValue = _resultConfig->GetFieldNameEnum().Lookup(fieldName);
- if (fieldEnumValue >= _numEnumValues || _overrideTable[fieldEnumValue])
- {
-
- if (fieldEnumValue >= _numEnumValues) {
+ if (fieldEnumValue >= _overrideTable.size() || _overrideTable[fieldEnumValue]) {
+ if (fieldEnumValue >= _overrideTable.size()) {
LOG(warning, "cannot override docsum field '%s'; undefined field name", fieldName);
} else if (_overrideTable[fieldEnumValue] != nullptr) {
LOG(warning, "cannot override docsum field '%s'; already overridden", fieldName);
@@ -148,7 +140,6 @@ DynamicDocsumWriter::Override(const char *fieldName, std::unique_ptr<DocsumField
}
for (auto & result_class : *_resultConfig) {
-
if (result_class.GetIndexFromEnumValue(fieldEnumValue) >= 0) {
ResultClass::DynamicInfo *info = result_class.getDynamicInfo();
info->_overrideCnt++;
@@ -166,7 +157,7 @@ DynamicDocsumWriter::InitState(IAttributeManager & attrMan, GetDocsumsState *sta
{
state->_kwExtractor = _keywordExtractor.get();
state->_attrCtx = attrMan.createContext();
- state->_attributes.resize(_numEnumValues);
+ state->_attributes.resize(_overrideTable.size());
state->_fieldWriterStates.resize(_numFieldWriterStates);
for (size_t i(0); i < state->_attributes.size(); i++) {
const DocsumFieldWriter *fw = _overrideTable[i].get();
diff --git a/searchsummary/src/vespa/searchsummary/docsummary/docsumwriter.h b/searchsummary/src/vespa/searchsummary/docsummary/docsumwriter.h
index 0833970047d..bea6a747f84 100644
--- a/searchsummary/src/vespa/searchsummary/docsummary/docsumwriter.h
+++ b/searchsummary/src/vespa/searchsummary/docsummary/docsumwriter.h
@@ -26,17 +26,14 @@ public:
struct ResolveClassInfo {
bool mustSkip;
bool allGenerated;
- uint32_t outputClassId;
const ResultClass *outputClass;
- const ResultClass::DynamicInfo *outputClassInfo;
ResolveClassInfo()
: mustSkip(false), allGenerated(false),
- outputClassId(ResultConfig::NoClassID()),
- outputClass(nullptr), outputClassInfo(nullptr)
+ outputClass(nullptr)
{ }
};
- virtual ~IDocsumWriter() {}
+ virtual ~IDocsumWriter() = default;
virtual void InitState(search::IAttributeManager & attrMan, GetDocsumsState *state) = 0;
virtual uint32_t WriteDocsum(uint32_t docid, GetDocsumsState *state,
IDocsumStore *docinfos, search::RawBuf *target) = 0;
@@ -54,8 +51,6 @@ class DynamicDocsumWriter : public IDocsumWriter
private:
std::unique_ptr<ResultConfig> _resultConfig;
std::unique_ptr<KeywordExtractor> _keywordExtractor;
- uint32_t _numClasses;
- uint32_t _numEnumValues;
uint32_t _numFieldWriterStates;
std::vector<ResultClass::DynamicInfo> _classInfoTable;
std::vector<std::unique_ptr<const DocsumFieldWriter>> _overrideTable;
diff --git a/searchsummary/src/vespa/searchsummary/docsummary/document_id_dfw.cpp b/searchsummary/src/vespa/searchsummary/docsummary/document_id_dfw.cpp
index a4b162ff1e8..3d28dbdc6fb 100644
--- a/searchsummary/src/vespa/searchsummary/docsummary/document_id_dfw.cpp
+++ b/searchsummary/src/vespa/searchsummary/docsummary/document_id_dfw.cpp
@@ -5,18 +5,10 @@
namespace search::docsummary {
-DocumentIdDFW::DocumentIdDFW()
-{
-}
+DocumentIdDFW::DocumentIdDFW() = default;
DocumentIdDFW::~DocumentIdDFW() = default;
-bool
-DocumentIdDFW::IsGenerated() const
-{
- return false;
-}
-
void
DocumentIdDFW::insertField(uint32_t, const IDocsumStoreDocument* doc, GetDocsumsState *, ResType,
vespalib::slime::Inserter &target) const
diff --git a/searchsummary/src/vespa/searchsummary/docsummary/document_id_dfw.h b/searchsummary/src/vespa/searchsummary/docsummary/document_id_dfw.h
index e7236b454cd..27766a86e83 100644
--- a/searchsummary/src/vespa/searchsummary/docsummary/document_id_dfw.h
+++ b/searchsummary/src/vespa/searchsummary/docsummary/document_id_dfw.h
@@ -15,7 +15,7 @@ private:
public:
DocumentIdDFW();
~DocumentIdDFW() override;
- bool IsGenerated() const override;
+ bool IsGenerated() const override { return false; }
void insertField(uint32_t docid, const IDocsumStoreDocument* doc, GetDocsumsState *state, ResType type, vespalib::slime::Inserter &target) const override;
};
diff --git a/searchsummary/src/vespa/searchsummary/docsummary/juniper_input.cpp b/searchsummary/src/vespa/searchsummary/docsummary/juniper_input.cpp
index 330c12f21d8..3dfd5a7116a 100644
--- a/searchsummary/src/vespa/searchsummary/docsummary/juniper_input.cpp
+++ b/searchsummary/src/vespa/searchsummary/docsummary/juniper_input.cpp
@@ -12,12 +12,6 @@ JuniperInput::JuniperInput()
{
}
-JuniperInput::JuniperInput(vespalib::stringref value)
- : _field_value_with_markup(),
- _value(value)
-{
-}
-
JuniperInput::JuniperInput(DocsumStoreFieldValue value)
: _field_value_with_markup(std::move(value)),
_value()
diff --git a/searchsummary/src/vespa/searchsummary/docsummary/juniper_input.h b/searchsummary/src/vespa/searchsummary/docsummary/juniper_input.h
index c3c1572909b..be7da50f99a 100644
--- a/searchsummary/src/vespa/searchsummary/docsummary/juniper_input.h
+++ b/searchsummary/src/vespa/searchsummary/docsummary/juniper_input.h
@@ -17,7 +17,6 @@ class JuniperInput {
vespalib::stringref _value;
public:
JuniperInput();
- explicit JuniperInput(vespalib::stringref value);
explicit JuniperInput(DocsumStoreFieldValue value);
~JuniperInput();
bool empty() const noexcept { return _value.empty(); }
diff --git a/searchsummary/src/vespa/searchsummary/docsummary/juniperdfw.h b/searchsummary/src/vespa/searchsummary/docsummary/juniperdfw.h
index fb31591e6d6..6a117fbc0cd 100644
--- a/searchsummary/src/vespa/searchsummary/docsummary/juniperdfw.h
+++ b/searchsummary/src/vespa/searchsummary/docsummary/juniperdfw.h
@@ -20,7 +20,7 @@ public:
const char *fieldName,
const vespalib::string& inputField);
protected:
- JuniperDFW(juniper::Juniper * juniper);
+ explicit JuniperDFW(juniper::Juniper * juniper);
~JuniperDFW() override;
vespalib::string _input_field_name;
@@ -39,7 +39,7 @@ public:
bool Init(const char *fieldName,
const vespalib::string& inputField) override;
protected:
- JuniperTeaserDFW(juniper::Juniper * juniper) : JuniperDFW(juniper) { }
+ explicit JuniperTeaserDFW(juniper::Juniper * juniper) : JuniperDFW(juniper) { }
};
@@ -49,7 +49,7 @@ class DynamicTeaserDFW : public JuniperTeaserDFW
vespalib::stringref input,
GetDocsumsState *state) const;
public:
- DynamicTeaserDFW(juniper::Juniper * juniper) : JuniperTeaserDFW(juniper) { }
+ explicit DynamicTeaserDFW(juniper::Juniper * juniper) : JuniperTeaserDFW(juniper) { }
void insertField(uint32_t docid, const IDocsumStoreDocument* doc, GetDocsumsState *state,
ResType type, vespalib::slime::Inserter &target) const override;
diff --git a/searchsummary/src/vespa/searchsummary/docsummary/juniperproperties.cpp b/searchsummary/src/vespa/searchsummary/docsummary/juniperproperties.cpp
index cf3def60f4e..b795679c7e6 100644
--- a/searchsummary/src/vespa/searchsummary/docsummary/juniperproperties.cpp
+++ b/searchsummary/src/vespa/searchsummary/docsummary/juniperproperties.cpp
@@ -63,8 +63,7 @@ JuniperProperties::configure(const JuniperrcConfig &cfg)
_properties["juniper.stem.min_length"] = make_string("%d", cfg.stemMinLength);
_properties["juniper.stem.max_extend"] = make_string("%d", cfg.stemMaxExtend);
- for (uint32_t i = 0; i < cfg.override.size(); ++i) {
- const JuniperrcConfig::Override &override = cfg.override[i];
+ for (const auto & override : cfg.override) {
const vespalib::string keyDynsum = make_string("%s.dynsum.", override.fieldname.c_str());
const vespalib::string keyMatcher = make_string("%s.matcher.", override.fieldname.c_str());
const vespalib::string keyStem = make_string("%s.stem.", override.fieldname.c_str());
@@ -87,7 +86,7 @@ JuniperProperties::configure(const JuniperrcConfig &cfg)
const char *
JuniperProperties::GetProperty(const char *name, const char *def)
{
- std::map<vespalib::string, vespalib::string>::const_iterator it = _properties.find(name);
+ auto it = _properties.find(name);
return it != _properties.end() ? it->second.c_str() : def;
}
diff --git a/searchsummary/src/vespa/searchsummary/docsummary/juniperproperties.h b/searchsummary/src/vespa/searchsummary/docsummary/juniperproperties.h
index 6b1613b6c07..55f2e572b9b 100644
--- a/searchsummary/src/vespa/searchsummary/docsummary/juniperproperties.h
+++ b/searchsummary/src/vespa/searchsummary/docsummary/juniperproperties.h
@@ -28,10 +28,7 @@ public:
*/
JuniperProperties(const vespa::config::search::summary::JuniperrcConfig &cfg);
- /**
- * Destructor. Frees any allocated resources.
- */
- virtual ~JuniperProperties();
+ ~JuniperProperties() override;
/**
* Implements configure callback for config subscription.
diff --git a/searchsummary/src/vespa/searchsummary/docsummary/keywordextractor.cpp b/searchsummary/src/vespa/searchsummary/docsummary/keywordextractor.cpp
index ba4833c912a..e97017e79c4 100644
--- a/searchsummary/src/vespa/searchsummary/docsummary/keywordextractor.cpp
+++ b/searchsummary/src/vespa/searchsummary/docsummary/keywordextractor.cpp
@@ -25,9 +25,7 @@ KeywordExtractor::KeywordExtractor(IDocsumEnvironment * env)
}
-KeywordExtractor::~KeywordExtractor()
-{
-}
+KeywordExtractor::~KeywordExtractor() = default;
bool
KeywordExtractor::IsLegalIndexName(const char *idxName) const
@@ -101,10 +99,10 @@ KeywordExtractor::GetLegalIndexSpec()
}
}
- for (Set::const_iterator it(_legalIndexes.begin()), mt(_legalIndexes.end()); it != mt; it++) {
- if (spec.size() > 0)
+ for (const auto & index : _legalIndexes) {
+ if (!spec.empty())
spec.append(';');
- spec.append(*it);
+ spec.append(index);
}
return spec;
}
diff --git a/searchsummary/src/vespa/searchsummary/docsummary/keywordextractor.h b/searchsummary/src/vespa/searchsummary/docsummary/keywordextractor.h
index e1cea6d1032..11e8da1ac7b 100644
--- a/searchsummary/src/vespa/searchsummary/docsummary/keywordextractor.h
+++ b/searchsummary/src/vespa/searchsummary/docsummary/keywordextractor.h
@@ -11,18 +11,13 @@ class IDocsumEnvironment;
class KeywordExtractor
{
-private:
- KeywordExtractor(const KeywordExtractor &);
- KeywordExtractor& operator=(const KeywordExtractor &);
-
public:
class IndexPrefix
{
vespalib::string _prefix;
public:
-
- IndexPrefix(const char *prefix);
+ explicit IndexPrefix(const char *prefix);
~IndexPrefix();
bool Match(const char *idxName) const;
const vespalib::string& get_prefix() const noexcept { return _prefix; }
@@ -47,6 +42,8 @@ private:
bool IsLegalIndexName(const char *idxName) const;
public:
explicit KeywordExtractor(IDocsumEnvironment * env);
+ KeywordExtractor(const KeywordExtractor &) = delete;
+ KeywordExtractor& operator=(const KeywordExtractor &) = delete;
~KeywordExtractor();
diff --git a/searchsummary/src/vespa/searchsummary/docsummary/matched_elements_filter_dfw.cpp b/searchsummary/src/vespa/searchsummary/docsummary/matched_elements_filter_dfw.cpp
index c91e0c2dc7e..e83860ed8bf 100644
--- a/searchsummary/src/vespa/searchsummary/docsummary/matched_elements_filter_dfw.cpp
+++ b/searchsummary/src/vespa/searchsummary/docsummary/matched_elements_filter_dfw.cpp
@@ -33,23 +33,22 @@ MatchedElementsFilterDFW::get_matching_elements(uint32_t docid, GetDocsumsState&
return state.get_matching_elements(*_matching_elems_fields).get_matching_elements(docid, _input_field_name);
}
-MatchedElementsFilterDFW::MatchedElementsFilterDFW(const std::string& input_field_name, uint32_t input_field_enum,
+MatchedElementsFilterDFW::MatchedElementsFilterDFW(const std::string& input_field_name,
std::shared_ptr<MatchingElementsFields> matching_elems_fields)
: _input_field_name(input_field_name),
- _input_field_enum(input_field_enum),
_matching_elems_fields(std::move(matching_elems_fields))
{
}
std::unique_ptr<DocsumFieldWriter>
-MatchedElementsFilterDFW::create(const std::string& input_field_name, uint32_t input_field_enum,
+MatchedElementsFilterDFW::create(const std::string& input_field_name,
std::shared_ptr<MatchingElementsFields> matching_elems_fields)
{
- return std::make_unique<MatchedElementsFilterDFW>(input_field_name, input_field_enum, std::move(matching_elems_fields));
+ return std::make_unique<MatchedElementsFilterDFW>(input_field_name, std::move(matching_elems_fields));
}
std::unique_ptr<DocsumFieldWriter>
-MatchedElementsFilterDFW::create(const std::string& input_field_name, uint32_t input_field_enum,
+MatchedElementsFilterDFW::create(const std::string& input_field_name,
search::attribute::IAttributeContext& attr_ctx,
std::shared_ptr<MatchingElementsFields> matching_elems_fields)
{
@@ -58,7 +57,7 @@ MatchedElementsFilterDFW::create(const std::string& input_field_name, uint32_t i
return std::unique_ptr<DocsumFieldWriter>();
}
resolver.apply_to(*matching_elems_fields);
- return std::make_unique<MatchedElementsFilterDFW>(input_field_name, input_field_enum, std::move(matching_elems_fields));
+ return std::make_unique<MatchedElementsFilterDFW>(input_field_name, std::move(matching_elems_fields));
}
MatchedElementsFilterDFW::~MatchedElementsFilterDFW() = default;
diff --git a/searchsummary/src/vespa/searchsummary/docsummary/matched_elements_filter_dfw.h b/searchsummary/src/vespa/searchsummary/docsummary/matched_elements_filter_dfw.h
index 7129f8af1de..09f989d5121 100644
--- a/searchsummary/src/vespa/searchsummary/docsummary/matched_elements_filter_dfw.h
+++ b/searchsummary/src/vespa/searchsummary/docsummary/matched_elements_filter_dfw.h
@@ -20,20 +20,19 @@ namespace search::docsummary {
class MatchedElementsFilterDFW : public DocsumFieldWriter {
private:
std::string _input_field_name;
- uint32_t _input_field_enum;
std::shared_ptr<MatchingElementsFields> _matching_elems_fields;
const std::vector<uint32_t>& get_matching_elements(uint32_t docid, GetDocsumsState& state) const;
public:
- MatchedElementsFilterDFW(const std::string& input_field_name, uint32_t input_field_enum,
+ MatchedElementsFilterDFW(const std::string& input_field_name,
std::shared_ptr<MatchingElementsFields> matching_elems_fields);
- static std::unique_ptr<DocsumFieldWriter> create(const std::string& input_field_name, uint32_t input_field_enum,
+ static std::unique_ptr<DocsumFieldWriter> create(const std::string& input_field_name,
std::shared_ptr<MatchingElementsFields> matching_elems_fields);
- static std::unique_ptr<DocsumFieldWriter> create(const std::string& input_field_name, uint32_t input_field_enum,
+ static std::unique_ptr<DocsumFieldWriter> create(const std::string& input_field_name,
search::attribute::IAttributeContext& attr_ctx,
std::shared_ptr<MatchingElementsFields> matching_elems_fields);
- ~MatchedElementsFilterDFW();
+ ~MatchedElementsFilterDFW() override;
bool IsGenerated() const override { return false; }
void insertField(uint32_t docid, const IDocsumStoreDocument* doc, GetDocsumsState *state,
ResType type, vespalib::slime::Inserter& target) const override;
diff --git a/searchsummary/src/vespa/searchsummary/docsummary/positionsdfw.cpp b/searchsummary/src/vespa/searchsummary/docsummary/positionsdfw.cpp
index 327c407af69..aa7db0e2745 100644
--- a/searchsummary/src/vespa/searchsummary/docsummary/positionsdfw.cpp
+++ b/searchsummary/src/vespa/searchsummary/docsummary/positionsdfw.cpp
@@ -61,6 +61,9 @@ LocationAttrDFW::getAllLocations(GetDocsumsState *state) const
return retval;
}
+LocationAttrDFW::AllLocations::AllLocations() = default;
+LocationAttrDFW::AllLocations::~AllLocations() = default;
+
AbsDistanceDFW::AbsDistanceDFW(const vespalib::string & attrName)
: LocationAttrDFW(attrName)
{ }
diff --git a/searchsummary/src/vespa/searchsummary/docsummary/positionsdfw.h b/searchsummary/src/vespa/searchsummary/docsummary/positionsdfw.h
index 9924f9aa16c..c0d9d7d8111 100644
--- a/searchsummary/src/vespa/searchsummary/docsummary/positionsdfw.h
+++ b/searchsummary/src/vespa/searchsummary/docsummary/positionsdfw.h
@@ -13,7 +13,7 @@ class LocationAttrDFW : public AttrDFW
public:
using GeoLoc = search::common::GeoLocation;
- LocationAttrDFW(const vespalib::string & attrName)
+ explicit LocationAttrDFW(const vespalib::string & attrName)
: AttrDFW(attrName)
{}
@@ -21,7 +21,8 @@ public:
std::vector<const GeoLoc *> matching;
std::vector<const GeoLoc *> other;
- ~AllLocations() {}
+ AllLocations();
+ ~AllLocations();
bool empty() const {
return matching.empty() && other.empty();
@@ -39,7 +40,7 @@ private:
uint64_t findMinDistance(uint32_t docid, GetDocsumsState *state,
const std::vector<const GeoLoc *> &locations) const;
public:
- AbsDistanceDFW(const vespalib::string & attrName);
+ explicit AbsDistanceDFW(const vespalib::string & attrName);
bool IsGenerated() const override { return true; }
void insertField(uint32_t docid, GetDocsumsState *state,
diff --git a/searchsummary/src/vespa/searchsummary/docsummary/summaryfieldconverter.cpp b/searchsummary/src/vespa/searchsummary/docsummary/summaryfieldconverter.cpp
index 0dd15ad888e..218a9b82803 100644
--- a/searchsummary/src/vespa/searchsummary/docsummary/summaryfieldconverter.cpp
+++ b/searchsummary/src/vespa/searchsummary/docsummary/summaryfieldconverter.cpp
@@ -137,7 +137,7 @@ void handleIndexingTerms(Handler &handler, const StringFieldValue &value) {
if (!tree) {
// Treat a string without annotations as a single span.
SpanTerm str(Span(0, handler.text.size()),
- static_cast<const FieldValue*>(0));
+ static_cast<const FieldValue*>(nullptr));
handler.handleAnnotations(str.first, &str, &str + 1);
return;
}
@@ -184,7 +184,7 @@ const StringFieldValue &ensureStringFieldValue(const FieldValue &value) {
struct FieldValueConverter {
virtual FieldValue::UP convert(const FieldValue &input) = 0;
- virtual ~FieldValueConverter() {}
+ virtual ~FieldValueConverter() = default;
};
@@ -313,7 +313,7 @@ class SummaryFieldValueConverter : protected ConstFieldValueVisitor
public:
SummaryFieldValueConverter(bool tokenize, FieldValueConverter &subConverter);
- ~SummaryFieldValueConverter();
+ ~SummaryFieldValueConverter() override;
FieldValue::UP convert(const FieldValue &input) {
input.accept(*this);
@@ -569,7 +569,7 @@ private:
const std::vector<uint32_t>* _matching_elems;
public:
- SlimeConverter(bool tokenize)
+ explicit SlimeConverter(bool tokenize)
: _tokenize(tokenize),
_matching_elems()
{}