summaryrefslogtreecommitdiffstats
path: root/searchlib/src/tests/util/bufferwriter/work.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'searchlib/src/tests/util/bufferwriter/work.cpp')
-rw-r--r--searchlib/src/tests/util/bufferwriter/work.cpp92
1 files changed, 0 insertions, 92 deletions
diff --git a/searchlib/src/tests/util/bufferwriter/work.cpp b/searchlib/src/tests/util/bufferwriter/work.cpp
deleted file mode 100644
index bd5bf4a9d81..00000000000
--- a/searchlib/src/tests/util/bufferwriter/work.cpp
+++ /dev/null
@@ -1,92 +0,0 @@
-// Copyright 2017 Yahoo Holdings. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root.
-
-#include "work.h"
-#include <vespa/vespalib/util/bufferwriter.h>
-
-namespace search
-{
-
-template <class T>
-class WriteFunctor
-{
- BufferWriter &_writer;
-public:
- WriteFunctor(BufferWriter &writer)
- : _writer(writer)
- {
- }
-
- void operator()(const T &val) { _writer.write(&val, sizeof(val)); }
-};
-
-template <class T>
-class WriteFunctor2
-{
- BufferWriter &_writer;
-public:
- WriteFunctor2(BufferWriter &writer)
- : _writer(writer)
- {
- }
-
- void operator()(const T &val) __attribute((noinline))
- { _writer.write(&val, sizeof(val)); }
-};
-
-template <class T, class Func>
-void workLoop(const std::vector<T> &v, Func &&func)
-{
- for (const auto &val : v) {
- func(val);
- }
-}
-
-template <class T>
-void work(const std::vector<T> &v, BufferWriter &writer)
-{
- for (const auto &val : v) {
- writer.write(&val, sizeof(val));
- }
- writer.flush();
-}
-
-template <class T>
-void workLambda(const std::vector<T> &v, BufferWriter &writer)
-{
- workLoop<T>(v,
- [&writer](const T &val) { writer.write(&val, sizeof(val)); });
- writer.flush();
-}
-
-template <class T>
-void workFunctor(const std::vector<T> &v, BufferWriter &writer)
-{
- workLoop<T>(v, WriteFunctor<T>(writer));
- writer.flush();
-}
-
-template <class T>
-void workFunctor2(const std::vector<T> &v, BufferWriter &writer)
-{
- workLoop<T>(v, WriteFunctor2<T>(writer));
- writer.flush();
-}
-
-template void work(const std::vector<char> &v, BufferWriter &writer);
-template void work(const std::vector<short> &v, BufferWriter &writer);
-template void work(const std::vector<int> &v, BufferWriter &writer);
-template void work(const std::vector<long> &v, BufferWriter &writer);
-template void workLambda(const std::vector<char> &v, BufferWriter &writer);
-template void workLambda(const std::vector<short> &v, BufferWriter &writer);
-template void workLambda(const std::vector<int> &v, BufferWriter &writer);
-template void workLambda(const std::vector<long> &v, BufferWriter &writer);
-template void workFunctor(const std::vector<char> &v, BufferWriter &writer);
-template void workFunctor(const std::vector<short> &v, BufferWriter &writer);
-template void workFunctor(const std::vector<int> &v, BufferWriter &writer);
-template void workFunctor(const std::vector<long> &v, BufferWriter &writer);
-template void workFunctor2(const std::vector<char> &v, BufferWriter &writer);
-template void workFunctor2(const std::vector<short> &v, BufferWriter &writer);
-template void workFunctor2(const std::vector<int> &v, BufferWriter &writer);
-template void workFunctor2(const std::vector<long> &v, BufferWriter &writer);
-
-} // namespace search