Add copying utility methods to Arena

This commit is contained in:
2025-09-14 20:38:54 -04:00
parent 147edf5c93
commit f62770c4ab
9 changed files with 109 additions and 87 deletions

View File

@@ -244,14 +244,7 @@ public:
* @return String view pointing to arena-allocated memory
*/
std::string_view copy_to_arena(std::string_view str) {
if (str.empty()) {
return {};
}
char *arena_str = arena_.allocate<char>(str.size());
std::memcpy(arena_str, str.data(), str.size());
return std::string_view(arena_str, str.size());
return arena_.copy_string(str);
}
/**