aboutsummaryrefslogtreecommitdiffstats
path: root/streamingvisitors/src/vespa/vsm/vsm/fieldsearchspec.cpp
diff options
context:
space:
mode:
authorHenning Baldersheim <balder@yahoo-inc.com>2024-01-10 10:59:27 +0000
committerHenning Baldersheim <balder@yahoo-inc.com>2024-01-10 10:59:27 +0000
commit5bdad953f6d91cb26139ef6506c3748531dc708a (patch)
tree3e268a4f3e98ee62a9ed15e3ab3ffe0b38c9579d /streamingvisitors/src/vespa/vsm/vsm/fieldsearchspec.cpp
parent3f7017773ce147a2d65a9835acdfd682dfafd54a (diff)
Use the normalize_mode config.
Diffstat (limited to 'streamingvisitors/src/vespa/vsm/vsm/fieldsearchspec.cpp')
-rw-r--r--streamingvisitors/src/vespa/vsm/vsm/fieldsearchspec.cpp21
1 files changed, 7 insertions, 14 deletions
diff --git a/streamingvisitors/src/vespa/vsm/vsm/fieldsearchspec.cpp b/streamingvisitors/src/vespa/vsm/vsm/fieldsearchspec.cpp
index 22934ba74d2..715c19a0bb7 100644
--- a/streamingvisitors/src/vespa/vsm/vsm/fieldsearchspec.cpp
+++ b/streamingvisitors/src/vespa/vsm/vsm/fieldsearchspec.cpp
@@ -31,17 +31,13 @@ namespace {
void
setMatchType(FieldSearcherContainer & searcher, vespalib::stringref arg1) {
if (arg1 == "prefix") {
- searcher->setMatchType(FieldSearcher::PREFIX);
+ searcher->match_type(FieldSearcher::PREFIX);
} else if (arg1 == "substring") {
- searcher->setMatchType(FieldSearcher::SUBSTRING);
+ searcher->match_type(FieldSearcher::SUBSTRING);
} else if (arg1 == "suffix") {
- searcher->setMatchType(FieldSearcher::SUFFIX);
- } else if (arg1 == "exact") {
- searcher->setMatchType(FieldSearcher::EXACT);
- } else if (arg1 == "word") {
- searcher->setMatchType(FieldSearcher::EXACT);
- } else if (arg1 == "cased") {
- searcher->setMatchType(FieldSearcher::CASED);
+ searcher->match_type(FieldSearcher::SUFFIX);
+ } else if ((arg1 == "exact") || (arg1 == "word")) {
+ searcher->match_type(FieldSearcher::EXACT);
}
}
@@ -86,12 +82,8 @@ FieldSearchSpec::FieldSearchSpec(const FieldIdT & fid, const vespalib::string &
_searcher = std::make_unique<UTF8SubStringFieldSearcher>(fid);
} else if (_arg1 == "suffix") {
_searcher = std::make_unique<UTF8SuffixStringFieldSearcher>(fid);
- } else if (_arg1 == "exact") {
+ } else if ((_arg1 == "exact") || (_arg1 == "word")) {
_searcher = std::make_unique<UTF8ExactStringFieldSearcher>(fid);
- } else if (_arg1 == "word") {
- _searcher = std::make_unique<UTF8ExactStringFieldSearcher>(fid);
- } else if (_arg1 == "cased") {
- _searcher = std::make_unique<UTF8StrChrFieldSearcher>(fid);
} else if (searchDef == VsmfieldsConfig::Fieldspec::Searchmethod::UTF8) {
_searcher = std::make_unique<UTF8StrChrFieldSearcher>(fid);
} else {
@@ -124,6 +116,7 @@ FieldSearchSpec::FieldSearchSpec(const FieldIdT & fid, const vespalib::string &
if (_searcher) {
setMatchType(_searcher, _arg1);
_searcher->maxFieldLength(maxLength());
+ _searcher->normalize_mode(_normalize_mode);
}
}