| 78 | } |
| 79 | |
| 80 | vector<string> wrapString(const string& s, int lineLength, int hangingIndent) { |
| 81 | vector<string> lines; |
| 82 | for (const string& paragraph : splitIntoLines(s)) { |
| 83 | auto paragraphLines = wrapSingleLineString(paragraph, lineLength, hangingIndent); |
| 84 | copy(paragraphLines.cbegin(), paragraphLines.cend(), back_inserter(lines)); |
| 85 | } |
| 86 | |
| 87 | return lines; |
| 88 | } |
| 89 | |
| 90 | bool isValidUtf8(const string& s) { |
| 91 | return utf8::is_valid(s.begin(), s.end()); |