utils.h 432 B

12345678910111213141516171819
  1. #pragma once
  2. #include <algorithm>
  3. #include <util/generic/vector.h>
  4. namespace NClickHouse {
  5. template <typename T>
  6. TVector<T> SliceVector(const TVector<T>& vec, size_t begin, size_t len) {
  7. TVector<T> result;
  8. if (begin < vec.size()) {
  9. len = std::min(len, vec.size() - begin);
  10. result.assign(vec.begin() + begin, vec.begin() + (begin + len));
  11. }
  12. return result;
  13. }
  14. }