diff options
author | qrort <qrort@yandex-team.com> | 2022-12-02 11:31:25 +0300 |
---|---|---|
committer | qrort <qrort@yandex-team.com> | 2022-12-02 11:31:25 +0300 |
commit | b1f4ffc9c8abff3ba58dc1ec9a9f92d2f0de6806 (patch) | |
tree | 2a23209faf0fea5586a6d4b9cee60d1b318d29fe /library/cpp/erasure/helpers.cpp | |
parent | 559174a9144de40d6bb3997ea4073c82289b4974 (diff) | |
download | ydb-b1f4ffc9c8abff3ba58dc1ec9a9f92d2f0de6806.tar.gz |
remove kikimr/driver DEPENDS
Diffstat (limited to 'library/cpp/erasure/helpers.cpp')
-rw-r--r-- | library/cpp/erasure/helpers.cpp | 80 |
1 files changed, 0 insertions, 80 deletions
diff --git a/library/cpp/erasure/helpers.cpp b/library/cpp/erasure/helpers.cpp deleted file mode 100644 index 74edeca52c..0000000000 --- a/library/cpp/erasure/helpers.cpp +++ /dev/null @@ -1,80 +0,0 @@ -#include "helpers.h" - -#include <algorithm> -#include <iterator> - -namespace NErasure { - -TPartIndexList MakeSegment(int begin, int end) { - TPartIndexList result(end - begin); - for (int i = begin; i < end; ++i) { - result[i - begin] = i; - } - return result; -} - -TPartIndexList MakeSingleton(int elem) { - TPartIndexList result; - result.push_back(elem); - return result; -} - -TPartIndexList Difference(int begin, int end, const TPartIndexList& subtrahend) { - size_t pos = 0; - TPartIndexList result; - for (int i = begin; i < end; ++i) { - while (pos < subtrahend.size() && subtrahend[pos] < i) { - pos += 1; - } - if (pos == subtrahend.size() || subtrahend[pos] != i) { - result.push_back(i); - } - } - return result; -} - -TPartIndexList Difference(const TPartIndexList& first, const TPartIndexList& second) { - TPartIndexList result; - std::set_difference(first.begin(), first.end(), second.begin(), second.end(), std::back_inserter(result)); - return result; -} - -TPartIndexList Difference(const TPartIndexList& set, int subtrahend) { - return Difference(set, MakeSingleton(subtrahend)); -} - -TPartIndexList Intersection(const TPartIndexList& first, const TPartIndexList& second) { - TPartIndexList result; - std::set_intersection(first.begin(), first.end(), second.begin(), second.end(), std::back_inserter(result)); - return result; -} - -TPartIndexList Union(const TPartIndexList& first, const TPartIndexList& second) { - TPartIndexList result; - std::set_union(first.begin(), first.end(), second.begin(), second.end(), std::back_inserter(result)); - return result; -} - -bool Contains(const TPartIndexList& set, int elem) { - return std::binary_search(set.begin(), set.end(), elem); -} - -TPartIndexList UniqueSortedIndices(const TPartIndexList& indices) { - TPartIndexList copy = indices; - std::sort(copy.begin(), copy.end()); - copy.erase(std::unique(copy.begin(), copy.end()), copy.end()); - return copy; -} - -TPartIndexList ExtractRows(const TPartIndexList& matrix, int width, const TPartIndexList& rows) { - Y_ASSERT(matrix.size() % width == 0); - TPartIndexList result(width * rows.size()); - for (size_t i = 0; i < rows.size(); ++i) { - auto start = matrix.begin() + rows[i] * width; - std::copy(start, start + width, result.begin() + i * width); - } - return result; -} - -} // namespace NErasure - |