summaryrefslogtreecommitdiffstats
path: root/searchlib
diff options
context:
space:
mode:
authorTor Egge <Tor.Egge@yahooinc.com>2023-03-22 15:41:31 +0100
committerTor Egge <Tor.Egge@yahooinc.com>2023-03-22 15:41:31 +0100
commit05619ecdcc101b7233cd3e87357c72fb0bc444e0 (patch)
tree022caed10511a330226d27f35b4926951b640857 /searchlib
parentd7d3271e04f210c1b084c8d586b18d777488cb23 (diff)
Add explicit instantiations of MultiValueEnumAttribute and MultiValueAttribute
to match the existing explicit instantiations of EnumAttribute.
Diffstat (limited to 'searchlib')
-rw-r--r--searchlib/src/vespa/searchlib/attribute/multienumattribute.cpp17
-rw-r--r--searchlib/src/vespa/searchlib/attribute/multivalueattribute.cpp12
2 files changed, 29 insertions, 0 deletions
diff --git a/searchlib/src/vespa/searchlib/attribute/multienumattribute.cpp b/searchlib/src/vespa/searchlib/attribute/multienumattribute.cpp
index a8006d4e3b5..3923a8f527f 100644
--- a/searchlib/src/vespa/searchlib/attribute/multienumattribute.cpp
+++ b/searchlib/src/vespa/searchlib/attribute/multienumattribute.cpp
@@ -1,10 +1,27 @@
// Copyright Yahoo. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root.
#include "multienumattribute.hpp"
+#include "enumattribute.h"
#include "enummodifier.h"
+#include "floatbase.h"
+#include "integerbase.h"
+#include "stringbase.h"
+#include <vespa/vespalib/datastore/unique_store.hpp>
#include <vespa/vespalib/datastore/unique_store_remapper.hpp>
#include <stdexcept>
+namespace search {
+
+template class MultiValueEnumAttribute<EnumAttribute<StringAttribute>, vespalib::datastore::AtomicEntryRef>;
+template class MultiValueEnumAttribute<EnumAttribute<IntegerAttributeTemplate<int8_t>>, vespalib::datastore::AtomicEntryRef>;
+template class MultiValueEnumAttribute<EnumAttribute<IntegerAttributeTemplate<int16_t>>, vespalib::datastore::AtomicEntryRef>;
+template class MultiValueEnumAttribute<EnumAttribute<IntegerAttributeTemplate<int32_t>>, vespalib::datastore::AtomicEntryRef>;
+template class MultiValueEnumAttribute<EnumAttribute<IntegerAttributeTemplate<int64_t>>, vespalib::datastore::AtomicEntryRef>;
+template class MultiValueEnumAttribute<EnumAttribute<FloatingPointAttributeTemplate<float>>, vespalib::datastore::AtomicEntryRef>;
+template class MultiValueEnumAttribute<EnumAttribute<FloatingPointAttributeTemplate<double>>, vespalib::datastore::AtomicEntryRef>;
+
+}
+
namespace search::multienumattribute {
using EnumIndex = IEnumStore::Index;
diff --git a/searchlib/src/vespa/searchlib/attribute/multivalueattribute.cpp b/searchlib/src/vespa/searchlib/attribute/multivalueattribute.cpp
index eaccd249baa..03dd0068648 100644
--- a/searchlib/src/vespa/searchlib/attribute/multivalueattribute.cpp
+++ b/searchlib/src/vespa/searchlib/attribute/multivalueattribute.cpp
@@ -1,8 +1,20 @@
// Copyright Yahoo. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root.
#include "multivalueattribute.hpp"
+#include "enumattribute.h"
+#include "floatbase.h"
+#include "integerbase.h"
+#include "stringbase.h"
namespace search {
+template class MultiValueAttribute<EnumAttribute<StringAttribute>, vespalib::datastore::AtomicEntryRef>;
+template class MultiValueAttribute<EnumAttribute<IntegerAttributeTemplate<int8_t>>, vespalib::datastore::AtomicEntryRef>;
+template class MultiValueAttribute<EnumAttribute<IntegerAttributeTemplate<int16_t>>, vespalib::datastore::AtomicEntryRef>;
+template class MultiValueAttribute<EnumAttribute<IntegerAttributeTemplate<int32_t>>, vespalib::datastore::AtomicEntryRef>;
+template class MultiValueAttribute<EnumAttribute<IntegerAttributeTemplate<int64_t>>, vespalib::datastore::AtomicEntryRef>;
+template class MultiValueAttribute<EnumAttribute<FloatingPointAttributeTemplate<float>>, vespalib::datastore::AtomicEntryRef>;
+template class MultiValueAttribute<EnumAttribute<FloatingPointAttributeTemplate<double>>, vespalib::datastore::AtomicEntryRef>;
+
} // namespace search