aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/include/winapi/utf8.hpp
diff options
context:
space:
mode:
authorEgor Tensin <Egor.Tensin@gmail.com>2021-09-27 16:44:30 +0300
committerEgor Tensin <Egor.Tensin@gmail.com>2021-09-27 16:44:49 +0300
commit68c45ee5bb9c998923f7a8ce7857128803dbe93a (patch)
tree73f3cca98f183577cfaa3139be2cb876dd4a480a /include/winapi/utf8.hpp
parentdocs: refine Doxygen comments (diff)
downloadwinapi-utf8-68c45ee5bb9c998923f7a8ce7857128803dbe93a.tar.gz
winapi-utf8-68c45ee5bb9c998923f7a8ce7857128803dbe93a.zip
add a std::u16string overload
Diffstat (limited to '')
-rw-r--r--include/winapi/utf8.hpp6
1 files changed, 6 insertions, 0 deletions
diff --git a/include/winapi/utf8.hpp b/include/winapi/utf8.hpp
index 9259df6..c6bb03a 100644
--- a/include/winapi/utf8.hpp
+++ b/include/winapi/utf8.hpp
@@ -17,6 +17,9 @@
namespace winapi {
+/* sizeof(wchar_t) == 4 on Linux, we don't care about that. */
+static_assert(sizeof(wchar_t) == 2, "This is Windows, right?");
+
/** Convert UTF-8 string to UTF-16. */
std::wstring widen(const std::string&);
@@ -39,6 +42,9 @@ std::wstring widen(const std::vector<T, Alloc>& src) {
/** Convert UTF-16 string to UTF-8. */
std::string narrow(const std::wstring&);
+/** Convert UTF-16 string to UTF-8. */
+std::string narrow(const std::u16string&);
+
/**
* Convert UTF-16 string to UTF-8.
* \param src Memory address of a UTF-16 string.