14 template<UnicodeCharConcept CharT>
27 constexpr explicit Iterator(StringViewType::const_iterator it, StringViewType::const_iterator
end);
30 [[nodiscard]]
constexpr bool operator==(std::default_sentinel_t)
const;
35 StringViewType::const_iterator _curIt{};
36 StringViewType::const_iterator _end{};
43 [[nodiscard]]
constexpr std::default_sentinel_t
end() noexcept{
return std::default_sentinel_t{}; }
44 [[nodiscard]]
constexpr std::default_sentinel_t
cend() const noexcept{
return std::default_sentinel_t{}; }
50 template<UnicodeCharConcept NewCharT>
62#include <Thoth/String/UnicodeViewer.tpp>
char32_t Rune
Definition UnicodeViewer.hpp:6
constexpr Rune UnknownChar
Definition UnicodeViewer.hpp:8
Definition UnicodeViewer.hpp:21
constexpr value_type operator*() const
constexpr bool operator==(std::default_sentinel_t) const
std::ptrdiff_t difference_type
Definition UnicodeViewer.hpp:24
constexpr Iterator & operator++()
Rune value_type
Definition UnicodeViewer.hpp:23
std::output_iterator_tag iterator_category
Definition UnicodeViewer.hpp:22
constexpr Iterator()=default
constexpr Iterator operator++(int)
constexpr Iterator(StringViewType::const_iterator it, StringViewType::const_iterator end)
Non owning viewer that represents Unicode encodings.
Definition UnicodeViewer.hpp:15
constexpr Iterator begin() noexcept
Definition UnicodeViewer.hpp:41
constexpr std::default_sentinel_t cend() const noexcept
Definition UnicodeViewer.hpp:44
std::basic_string_view< CharT > StringViewType
Definition UnicodeViewer.hpp:16
constexpr Iterator cbegin() const noexcept
Definition UnicodeViewer.hpp:42
constexpr std::default_sentinel_t end() noexcept
Definition UnicodeViewer.hpp:43
static constexpr bool IsValid(StringViewType str)
Check if a string does not has invalid chars.
constexpr UnicodeViewer(StringViewType str)
Definition UnicodeViewer.hpp:18
static constexpr std::basic_string< NewCharT > ConvertTo(StringViewType str)
Converts from one Unicode Encoding to another.