btu/common/string.hpp file

Namespaces

namespace btu
namespace btu::common
namespace btu::common::detail

Classes

class btu::common::UTF8Iterator
class btu::common::InvalidUTF8
struct btu::common::Cards

Enums

enum class CaseSensitive: std::uint8_t { Yes, No }

Typedefs

using U8Unit = int32_t

Functions

auto as_ascii(std::u8string_view str) →  std::string_view
auto as_ascii_string(std::u8string str) →  std::string
auto as_utf8(std::string_view str) →  std::u8string_view
auto as_utf8_string(std::string str) →  std::u8string
void assert_valid_utf8(std::u8string_view str) constexpr
void concat_codepoint(std::u8string& string, U8Unit cp)
auto first_codepoint(std::u8string_view string) →  U8Unit constexpr
auto is_lower(std::u8string_view string) →  bool constexpr
auto make_valid(std::u8string& string, char8_t replacement) →  std::u8string& noexcept
auto str_compare(std::u8string_view lhs, std::u8string_view rhs, CaseSensitive case_sensitive = CaseSensitive::Yes) →  bool constexpr
auto str_contain(std::u8string_view string, std::u8string_view snippet, CaseSensitive case_sensitive = CaseSensitive::Yes) →  bool constexpr
auto str_find(std::u8string_view string, std::u8string_view snippet, CaseSensitive case_sensitive = CaseSensitive::Yes) →  size_t constexpr
auto str_match(std::u8string_view string, std::u8string_view pattern, CaseSensitive case_sensitive = CaseSensitive::Yes, Cards cards = default_cards) →  bool constexpr
auto str_random(size_t length, std::span<const char8_t> charset = k_lower_alphabetic_charset) →  std::u8string noexcept
auto str_replace_once(std::u8string& string, std::u8string_view from, std::u8string_view to, CaseSensitive case_sensitive) →  std::u8string& constexpr
auto str_starts_with(std::u8string_view string, std::u8string_view snippet, CaseSensitive case_sensitive = CaseSensitive::Yes) →  bool constexpr
auto str_trim(std::u8string_view in) →  std::u8string_view constexpr noexcept
auto to_lower(std::u8string_view string) →  std::u8string
auto to_utf16(const std::u8string& str) →  std::wstring
auto to_utf8(const std::wstring& str) →  std::u8string

Variables

Cards default_cards constexpr
auto k_lower_alphabetic_charset constexpr