6#ifndef MIMICPP_UTILITIES_STATIC_STRING_HPP
7#define MIMICPP_UTILITIES_STATIC_STRING_HPP
12#ifndef MIMICPP_DETAIL_IS_MODULE
20 template <
typename Char, std::
size_t length>
27 explicit(
false)
consteval StaticString(Char
const (&arr)[length + 1])
noexcept
29 std::ranges::copy_n(arr, length, std::ranges::begin(
data));
33 static constexpr bool empty() noexcept
39 static constexpr std::size_t
size() noexcept
45 constexpr auto begin() const noexcept
47 return std::ranges::begin(
data);
51 constexpr auto end() const noexcept
53 return std::ranges::end(
data);
57 template <
typename Char>
62 explicit(
false)
consteval StaticString([[maybe_unused]] Char
const (&arr)[1])
noexcept
67 static constexpr bool empty() noexcept
73 static constexpr std::size_t
size() noexcept
79 static constexpr Char
const*
begin() noexcept
85 static constexpr Char
const*
end() noexcept
91 template <
typename Char, std::
size_t length>
#define MIMICPP_DETAIL_MODULE_EXPORT
Definition Config.hpp:19
static constexpr Char const * begin() noexcept
Definition StaticString.hpp:79
static constexpr bool empty() noexcept
Definition StaticString.hpp:67
static constexpr Char const * end() noexcept
Definition StaticString.hpp:85
static constexpr std::size_t size() noexcept
Definition StaticString.hpp:73
Definition StaticString.hpp:22
static constexpr bool empty() noexcept
Definition StaticString.hpp:33
constexpr auto end() const noexcept
Definition StaticString.hpp:51
constexpr auto begin() const noexcept
Definition StaticString.hpp:45
Char data[length]
Definition StaticString.hpp:24
static constexpr std::size_t size() noexcept
Definition StaticString.hpp:39
StaticString(Char const(&)[length]) -> StaticString< Char, length - 1u >