1 #pragma GCC system_header
2 
3 #include <string>
4 
5 inline namespace my_string_literals
6 {
7   std::string
8   operator"" s(const char* str, std::size_t len)
9   { return std::string{str, len}; }
10 
11 #if __cpp_lib_char8_t
12   std::u8string
13   operator"" s(const char8_t* str, std::size_t len)
14   { return std::u8string{str, len}; }
15 #endif
16 
17   std::wstring
18   operator"" s(const wchar_t* str, std::size_t len)
19   { return std::wstring{str, len}; }
20 
21   std::u16string
22   operator"" s(const char16_t* str, std::size_t len)
23   { return std::u16string{str, len}; }
24 
25   std::u32string
26   operator"" s(const char32_t* str, std::size_t len)
27   { return std::u32string{str, len}; }
28 }
29