1 #ifndef STATIC_STRING_VIEW_HH
2 #define STATIC_STRING_VIEW_HH
39 assert(buf[
N - 1] ==
'\0');
48 constexpr
operator std::string_view()
const {
return s; }
51 const std::string_view s;
65 auto size = sv.size();
67 char* p = storage.get();
68 memcpy(p, sv.data(),
size);
69 return std::pair{std::move(storage),
71 std::string_view(p,
size))};
StringStorage allocate_string_storage(size_t size)
Allocate a 'StringStorage' large enough for 'size' characters.
constexpr static_string_view(lifetime_ok_tag, std::string_view v)
constexpr static_string_view(const char(&buf)[N])
constexpr static_string_view(char(&buf)[N])=delete
size_t size(std::string_view utf8)
auto make_string_storage(std::string_view sv)
Take a string_view, make a copy of it, and return a pair of.