| 1904 | |
| 1905 | template <typename Char, typename OutputIt> |
| 1906 | auto write_escaped_string(OutputIt out, basic_string_view<Char> str) |
| 1907 | -> OutputIt { |
| 1908 | *out++ = static_cast<Char>('"'); |
| 1909 | auto begin = str.begin(), end = str.end(); |
| 1910 | do { |
| 1911 | auto escape = find_escape(begin, end); |
| 1912 | out = copy_str<Char>(begin, escape.begin, out); |
| 1913 | begin = escape.end; |
| 1914 | if (!begin) break; |
| 1915 | out = write_escaped_cp<OutputIt, Char>(out, escape); |
| 1916 | } while (begin != end); |
| 1917 | *out++ = static_cast<Char>('"'); |
| 1918 | return out; |
| 1919 | } |
| 1920 | |
| 1921 | template <typename Char, typename OutputIt> |
| 1922 | auto write_escaped_char(OutputIt out, Char v) -> OutputIt { |
no test coverage detected