67 static auto to_string(
const std::wstring& value)
68 -> std::tuple<std::optional<std::string>, std::optional<std::string>>;
78 static auto to_string(std::wstring_view value)
79 -> std::tuple<std::optional<std::string>, std::optional<std::string>>;
88 static auto to_wstring(
const std::string& value)
89 -> std::tuple<std::optional<std::wstring>, std::optional<std::string>>;
97 -> std::tuple<std::optional<std::wstring>, std::optional<std::string>>;
116 -> std::tuple<std::optional<std::string>, std::optional<std::string>>;
124 -> std::tuple<std::optional<std::string>, std::optional<std::string>>;
136 static auto split(
const std::string& source,
const std::string& token)
137 -> std::tuple<std::optional<std::vector<std::string>>, std::optional<std::string>>;
146 static auto to_array(
const std::string& value)
147 -> std::tuple<std::optional<std::vector<uint8_t>>, std::optional<std::string>>;
156 static auto to_string(
const std::vector<uint8_t>& value)
157 -> std::tuple<std::optional<std::string>, std::optional<std::string>>;
169 static auto to_base64(
const std::vector<uint8_t>& value)
170 -> std::tuple<std::optional<std::string>, std::optional<std::string>>;
180 static auto from_base64(
const std::string& base64_str)
181 -> std::tuple<std::vector<uint8_t>, std::optional<std::string>>;
193 static auto replace(std::string& source,
194 const std::string& token,
195 const std::string& target) -> std::optional<std::string>;
207 static auto replace2(
const std::string& source,
208 const std::string& token,
209 const std::string& target)
210 -> std::tuple<std::optional<std::string>, std::optional<std::string>>;
234 static auto get_code_page_name(
int code_page) -> std::string;
242 static auto get_encoding_name(encoding_types encoding,
243 endian_types endian = endian_types::little) -> std::string;
250 static auto get_wchar_encoding(endian_types endian = endian_types::little) -> std::string;
264 template <
typename FromType,
typename ToType>
266 const std::string& from_encoding,
267 const std::string& to_encoding)
268 -> std::tuple<std::optional<ToType>, std::optional<std::string>>;
310 static auto base64_encode(
const std::vector<uint8_t>& data) -> std::string;
321 -> std::tuple<std::vector<uint8_t>, std::optional<std::string>>;
Provides utilities for string encoding conversion, Base64 encoding/decoding, and substring operations...
static auto base64_encode(const std::vector< uint8_t > &data) -> std::string
Encodes a byte array into a Base64 string.
static auto has_utf8_bom(const std::string &value) -> bool
Checks if a string has a UTF-8 BOM (Byte Order Mark).
static auto add_utf8_bom(const std::string &value) -> std::string
Adds a UTF-8 BOM to a string if it doesn't already have one.
static auto to_base64(const std::vector< uint8_t > &value) -> std::tuple< std::optional< std::string >, std::optional< std::string > >
Encodes a byte array into a Base64 string.
static auto split(const std::string &source, const std::string &token) -> std::tuple< std::optional< std::vector< std::string > >, std::optional< std::string > >
Splits a string by a given delimiter.
static auto get_system_code_page() -> int
Retrieves the system code page used for conversions.
static auto replace(std::string &source, const std::string &token, const std::string &target) -> std::optional< std::string >
Replaces all occurrences of token in source with target, in place.
static auto remove_utf8_bom(const std::string &value) -> std::string
Removes a leading UTF-8 BOM from a string, if present.
encoding_types
Supported encoding types for Unicode conversion.
static auto from_base64(const std::string &base64_str) -> std::tuple< std::vector< uint8_t >, std::optional< std::string > >
Decodes a Base64 string into a byte array.
static auto detect_endian(const std::u32string &value) -> endian_types
Detects the endianness of a UTF-32 string by checking for BOM or content patterns.
static auto system_to_utf8(const std::string &value) -> std::tuple< std::optional< std::string >, std::optional< std::string > >
Converts a system-encoded string to UTF-8.
static auto utf8_to_system(const std::string &value) -> std::tuple< std::optional< std::string >, std::optional< std::string > >
Converts a UTF-8 encoded string to the system encoding.
static auto detect_endian(const std::u16string &value) -> endian_types
Detects the endianness of a UTF-16 string by checking for BOM or content patterns.
static auto base64_decode(const std::string &base64_str) -> std::tuple< std::vector< uint8_t >, std::optional< std::string > >
Decodes a Base64 string into a byte array.
static auto replace2(const std::string &source, const std::string &token, const std::string &target) -> std::tuple< std::optional< std::string >, std::optional< std::string > >
Replaces all occurrences of token in source with target, returning a new string.
static auto to_wstring(const std::string &value) -> std::tuple< std::optional< std::wstring >, std::optional< std::string > >
Converts a std::string (system-encoded) to a std::wstring.
static auto convert(const FromType &value, const std::string &from_encoding, const std::string &to_encoding) -> std::tuple< std::optional< ToType >, std::optional< std::string > >
Converts from one encoding to another using simdutf.
static auto to_array(const std::string &value) -> std::tuple< std::optional< std::vector< uint8_t > >, std::optional< std::string > >
Converts a system-encoded string to a UTF-8 byte array.
endian_types
Possible endianness values for UTF-16 or UTF-32 data.
constexpr std::string_view to_string(test_priority priority)
Converts a test_priority value to its string representation.