Skip to content

Commit 1899148

Browse files
Use std::ranges::copy with std::span directly
Replace std::copy with pointer arithmetic on std::span with std::ranges::copy that takes the span range directly, simplifying the code. 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <noreply@anthropic.com>
1 parent 5eb438e commit 1899148

2 files changed

Lines changed: 7 additions & 5 deletions

File tree

test/db_test_utils.hpp

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -19,6 +19,7 @@
1919
#include <iostream>
2020
#include <map>
2121
#include <memory>
22+
#include <ranges>
2223
#include <sstream>
2324
#include <thread>
2425
#include <tuple>
@@ -254,8 +255,8 @@ class [[nodiscard]] tree_verifier final {
254255
unodb::key_encoder enc;
255256
const auto kv{enc.encode(k).get_key_view()};
256257
key_views.emplace_back(std::array<std::byte, sz>{});
257-
auto &a = key_views.back(); // a *reference* to data emplaced_back.
258-
std::copy(kv.data(), kv.data() + sz, a.begin()); // copy data into array.
258+
auto &a = key_views.back(); // a *reference* to data emplaced_back.
259+
std::ranges::copy(kv, a.begin()); // copy data into array.
259260
// Return a key_view backed by the array that we just put on that
260261
// list.
261262
return unodb::key_view(a.data(), sz); // view of array's data.

test/test_key_encode_decode.cpp

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -16,6 +16,7 @@
1616
#include <cstdint>
1717
#include <cstring>
1818
#include <limits>
19+
#include <ranges>
1920
#include <span>
2021
#include <sstream>
2122
#include <string>
@@ -677,9 +678,9 @@ class key_factory {
677678
const auto kv{enc.get_key_view()};
678679
const auto sz{kv.size()};
679680
key_views.emplace_back(sz);
680-
auto& a = key_views.back(); // a *reference* to data emplaced_back.
681-
std::copy(kv.data(), kv.data() + sz, a.begin()); // copy data to inner vec
682-
return {a.data(), sz}; // view of inner vec's data.
681+
auto& a = key_views.back(); // a *reference* to data emplaced_back.
682+
std::ranges::copy(kv, a.begin()); // copy data to inner vec
683+
return {a.data(), sz}; // view of inner vec's data.
683684
}
684685
};
685686

0 commit comments

Comments
 (0)