MayaFlux 0.3.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 295 of file Lila.cpp.

296{
297 std::string escaped;
298 escaped.reserve(str.size());
299
300 for (char c : str) {
301 switch (c) {
302 case '"':
303 escaped += "\\\"";
304 break;
305 case '\\':
306 escaped += "\\\\";
307 break;
308 case '\n':
309 escaped += "\\n";
310 break;
311 case '\r':
312 escaped += "\\r";
313 break;
314 case '\t':
315 escaped += "\\t";
316 break;
317 default:
318 if (c >= 0x20) {
319 escaped += c;
320 }
321 }
322 }
323 return escaped;
324}