60class MIKTEXNOVTABLE StringUtil
65 StringUtil() =
delete;
66 StringUtil(
const StringUtil& other) =
delete;
67 StringUtil& operator=(
const StringUtil& other) =
delete;
68 StringUtil(StringUtil&& other) =
delete;
69 StringUtil& operator=(StringUtil&& other) =
delete;
70 ~StringUtil() =
delete;
72 static MIKTEXUTILCEEAPI(std::string) Flatten(
const std::vector<std::string>& vec,
char sep);
73 static MIKTEXUTILCEEAPI(std::vector<std::string>) Split(
const std::string& s,
char sep);
74 static MIKTEXUTILCEEAPI(std::size_t) AppendCeeString(
char* dest, std::size_t destSize,
const char* source);
75 static MIKTEXUTILCEEAPI(std::size_t) CopyCeeString(
char* dest, std::size_t destSize,
const char* source);
76 static MIKTEXUTILCEEAPI(std::size_t) CopyCeeString(
wchar_t* dest, std::size_t destSize,
const wchar_t* source);
77 static MIKTEXUTILCEEAPI(std::size_t) CopyCeeString(
char* dest, std::size_t destSize,
const wchar_t* source);
78 static MIKTEXUTILCEEAPI(std::size_t) CopyCeeString(
char16_t* dest, std::size_t destSize,
const char* source);
79 static MIKTEXUTILCEEAPI(std::size_t) CopyCeeString(
wchar_t* dest, std::size_t destSize,
const char* source);
80 static MIKTEXUTILCEEAPI(
bool) Contains(
const std::string& list,
const std::string& element,
const std::string& delims,
bool ignoreCase);
81 static MIKTEXUTILCEEAPI(std::string) FormatString2(
const std::string& message,
const std::unordered_map<std::string, std::string>& args);
82 static MIKTEXUTILCEEAPI(std::u16string) UTF8ToUTF16(
const std::string& utf8Chars);
83 static MIKTEXUTILCEEAPI(std::string) UTF16ToUTF8(
const std::u16string& utf16Chars);
84 static MIKTEXUTILCEEAPI(std::u32string) UTF8ToUTF32(
const std::string& utf8Chars);
85 static MIKTEXUTILCEEAPI(std::wstring) UTF8ToWideChar(
const std::string& utf8);
86 static MIKTEXUTILCEEAPI(std::string) WideCharToUTF8(
const std::wstring& wideChars);
88#if defined(MIKTEX_WINDOWS)
89 static MIKTEXUTILCEEAPI(std::string) AnsiToUTF8(
const std::string& ansi);
92 static bool Contains(
const std::string& list,
const std::string& element,
const std::string& delims)
94 return Contains(list, element, delims,
true);
97 static bool Contains(
const std::string& list,
const std::string& element)
99 return Contains(list, element,
",;:",
true);