MayaFlux 0.4.0
Digital-First Multimedia Processing Framework
Loading...
Searching...
No Matches

◆ escape_json()

std::string Lila::Lila::escape_json ( const std::string &  str)
staticprivate

Escapes a string for safe JSON encoding.

Parameters
strInput string
Returns
Escaped string

Definition at line 263 of file Lila.cpp.

264{
265 std::string escaped;
266 escaped.reserve(str.size());
267
268 for (char c : str) {
269 switch (c) {
270 case '"':
271 escaped += "\\\"";
272 break;
273 case '\\':
274 escaped += "\\\\";
275 break;
276 case '\n':
277 escaped += "\\n";
278 break;
279 case '\r':
280 escaped += "\\r";
281 break;
282 case '\t':
283 escaped += "\\t";
284 break;
285 default:
286 if (c >= 0x20) {
287 escaped += c;
288 }
289 }
290 }
291 return escaped;
292}