11 constexpr inline c8 const as_c8_buffer[
sizeof...(indices)] = {
static_cast<char>(literal.data()[indices])... };
13 template<FixedString literal>
14 struct FixedStringToUtf8StringViewFunction {
15 consteval auto operator()()
const {
17 []<
usize... indices>(meta::ListV<indices...>) {
18 if constexpr (literal.size() == 0) {
19 return string::StringViewImpl<string::Utf8Encoding> {};
21 auto span =
Span { as_c8_buffer<literal, indices...> };
31template<FixedString literal>
#define DI_ASSERT(...)
Definition assert_bool.h:7
constexpr auto validate
Definition encoding.h:135
constexpr auto assume_valid
Definition encoding.h:236
FixedString(char const (&)[size]) -> FixedString< size - 1 >
constexpr auto fixed_string_to_utf8_string_view
Definition fixed_string_to_utf8_string_view.h:32
constexpr auto unpack
Definition unpack.h:24
size_t usize
Definition integers.h:33
char8_t c8
Definition char.h:4
Span(Iter, SentOrSize) -> Span< meta::RemoveReference< meta::IteratorReference< Iter > > >